私のLinuxシステムには、次のディスク設定(MBR形式、BIOS起動)があります。
sda 32G disk
└─sda1 32G part crypto_LUKS 001b349b-2a70-4408-bae2-107d035c96e9
└─luks-001b349b-2a70-4408-bae2-107d035c96e9 32G crypt btrfs 8c72adab-63cf-4526-b77e-78f11d2585e2
うまくいきますが、LUKSボリュームとファイルシステムのUUIDを変更したいと思います。これは、ホストコンピュータから起動可能な回復USBを生成するためです。したがって、USBから起動するときにUUIDの競合を避ける必要があります。
だから私は次のことを試みます:
sudo sed -i 's/001b349b/101b349b/g' /etc/default/grub
sudo sed -i 's/001b349b/101b349b/g' /etc/fstab
sudo sed -i 's/001b349b/101b349b/g' /boot/grub/grub.cfg
sudo sed -i 's/8c72adab/7c72adab/g' /etc/default/grub
sudo sed -i 's/8c72adab/7c72adab/g' /etc/fstab
sudo sed -i 's/8c72adab/7c72adab/g' /boot/grub/grub.cfg
sudo update-grub
sudo grub-install /dev/sda --modules=btrfs
完了したら、ディスクを別のコンピュータに接続し、2つのUUIDを調整しました。
sudo cryptsetup luksUUID /dev/sda1 --uuid "101b349b-2a70-4408-bae2-107d035c96e9"
sudo btrfstune -U 7c72adab-63cf-4526-b77e-78f11d2585e2 /dev/mapper/sda1-crypt
結果ディスクから起動しようとすると、次のようになります。
error: no such cryptodisk found.
error: disk 'cryptouuid/001b349b2a704408bae2107d035c96e9' not found.
Entering rescue mode...
grub rescue> _
言い換えれば、どこかに以前の LUKS UUID はまだ存在します。実行時に新しいものが上書きされると予想しましたが、grub-install
そのようなことは発生しませんでした。
Grubがまだ古いUUIDを試しているのはなぜですか?新しいことを試すために私は何を見逃していますか?
修正する:
grub-install
実行時に以前のUUIDがどこから来たのかわからないため、設定ファイルではなく、現在インストールされているLUKSデバイスから古いUUIDをインポートできるようです。これは本当ですか?この動作を無視する方法はありますか?