내 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
완료되면 디스크를 다른 컴퓨터에 연결하고 두 개의 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를 가져올 수 있는 것처럼 보입니다 . 이것이 사실입니까? 이 동작을 무시할 수 있는 방법이 있나요?