Grub 配置单独的根分区和启动分区

Grub 配置单独的根分区和启动分区

我读过很多关于 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命令,然后重新启动。

相关内容