나는 많은 구성 예제가 있는 Grub에 관한 많은 기사를 읽었습니다. 정확히 0에는 LVM의 별도 루트 및 부팅 파티션 구성이 포함됩니다.
내 구성은 다음과 같습니다.
menuentry 'Kali' {
insmod lvm
insmod gzio
insmod part_msdos
insmod ext2
set root=lvm/triagia-kaliboot
search --no-floppy --fs-uuid --set=root f1eb6904-c17e-40b7-8740-60e67b8d04de
linux /vmlinuz-4.0.0-kali1-amd64 root=/dev/mapper/triagia-kaliboot setkmap=us
initrd /initrd.img-4.0.0-kali1-amd64
}
이것은 내 LVM 설정입니다.
sda3 8:3 0 396.9G 0 part
├─triagia-kaliboot 254:0 0 500M 0 lvm
├─triagia-kaliroot 254:1 0 50G 0 lvm
└─triagia-kaliswap 254:2 0 4G 0 lvm
이렇게 하면 부팅되지만 부팅되지는 않습니다. /가 어디에 있고 /boot가 어디에 있는지에 대한 잘못된 구성을 사용하고 있는 것 같습니다.
답변1
다음 위치에서 루트 디렉터리를 찾도록 커널에 지시합니다 root=/dev/mapper/triagia-kaliboot
. 내 생각엔 당신이 그것을 바꿔야 한다고 생각해요.
GRUB2에서 사용하는 커널 매개변수를 편집하여 다음 줄을 변경하여 루트 디렉터리를 찾습니다 /etc/default/grub
.
GRUB_CMDLINE_LINUX_DEFAULT="root=/dev/mapper/triagia-kaliroot"
.
GRUB2의 /boot 파티션에 LVM을 사용하고 있으므로 다음 줄도 다음 줄에 추가해야 합니다 /etc/default/grub
.
GRUB_PRELOAD_MODULES="lvm"
.
완료되면 # update-grub
또는 명령을 실행 # grub-mkconfig -o /boot/grub/grub.cfg
하고 재부팅하십시오.