업데이트 후 Grub2가 USB 스틱을 인식하지 못합니까?

업데이트 후 Grub2가 USB 스틱을 인식하지 못합니까?

저는 VirtualBox에 매우 기본적인 ArchLinux 설정을 가지고 있으며, 실제 컴퓨터에서 부팅하기 위해 정기적으로 USB 스틱에 복사합니다. 지난 몇 달 동안은 잘 작동했지만 마지막 업데이트(2018년 10월 8일) 이후 GRUB2는 USB 스틱에서 부팅할 때 더 이상 LUKS로 암호화된 시스템 파티션을 인식하지 못하고 비상 셸로 이동합니다. 해당 셸에서 실행하면 blkidGRUB2가 로드된 USB 스틱도 인식하지 못하는 것으로 나타났습니다.

다음은 작동하는 것과 작동하지 않는 것에 대한 간략한 요약입니다. 이는 내 컴퓨터나 USB 스틱 모두 문제가 아니라 내 Arch 시스템에 있음을 시사합니다.

                          |                      ArchLinux                      |  Fresh install of
                          |  before update  |  after update  | fresh reinstall  |   Ubuntu 18.04.1
--------------------------+-----------------+----------------+------------------+--------------------
Booting from virtual hard |     worked      |     works      |      works       |       works*
disk in VirtualBox        |                 |                |                  |
--------------------------+-----------------+----------------+------------------+--------------------
Booting from USB          |     worked      |  NOT WORKING   |   NOT WORKING    |       works*
in VirtualBox             |                 |                |                  |
--------------------------+-----------------+----------------+------------------+--------------------
Booting from USB          |     worked      |  NOT WORKING   |   NOT WORKING    |       works*
on a computer             |                 |                |                  |

* with and without full disk encryption (LVM on LUKS)

당연히 나는 Arch-iso를 실행하고 (USB 스틱의) 모든 파티션을 마운트하고 arch-chroot시스템에 연결하고 확인 /etc/mkinitcpio.conf하고 실행 /etc/default/grub하여 이 문제를 해결하려고 했습니다 . 여전히 부팅할 수 없습니다... 또한 가상 하드 디스크에서 업데이트되고 여전히 작동하는 시스템으로 USB 스틱을 덮어쓰려고 시도했지만 운도 없었습니다.mkinitcpio -p linuxgrub-mkconfig -o /boot/grub/grub.cfg

이 동작의 원인이 무엇인지에 대한 단서가 있거나 문제를 찾아야 할 힌트가 있는 사람이 있습니까?가상 하드 디스크의 시스템은 업데이트 후에도 계속 작동하기 때문에 디스크 암호화가 될 수 없습니다(그리고 안타깝게도 업데이트 이전의 백업이 없습니다).


업데이트:대체 initramfs를 사용한 부팅은 모든 경우(vbox, vbox의 usb, 머신의 usb)에서 잘 작동합니다. mkinitcpio.conf에 일부 후크가 누락되었을 수 있습니다.


내 Arch 시스템에 대한 몇 가지 세부 사항은 다음과 같습니다. 이는 두 개의 파티션, 즉 GRUB2가 있는 200MiB FAT32 파티션과 LVM이 포함되지 않은 ext4 시스템 파티션을 보유하는 15.8GiB LUKS 컨테이너만 포함하는 GPT 포맷 디스크가 있는 EFI 시스템입니다. 다음은 구성 파일에 대한 요약입니다. 더 필요하면 알려주세요.

# /etc/mkinitcpio.conf
[...]
HOOKS=(base udev autodetect keyboard keymap modconf block encrypt filesystems fsck)
[...]

# /etc/default/grub
[...]
GRUB_CMDLINE_LINUX_DEFAULT="cryptdevice=/dev/disk/by-uuid/UUID_OF_LUKS_CONTAINER:cryptosystem"
GRUB_CMDLINE_LINUX=""
[...]
#GRUB_DISABLE_LINUX_UUID=true
[...]
#GRUB_ENABLE_CRYPTODISK=y
[...]

# /boot/grub/grub.cfg
[...]
linux /vmlinuz-linux root=UUID=UUID_OF_FS_INSIDE_LUKS rw cryptdevice=/dev/disk/by-uuid/UUID_OF_LUKS_FS:cryptosystem quiet
[...]

태그: usb, 아치-리눅스, grub2

답변1

후크 를 제거하면 autodetect문제가 해결됩니다. 이제 대체 이미지를 사용하지 않고 시스템을 부팅할 수 있습니다.

관련 정보