与CentOS / RHEL 7相比,有一些变化(与CO / RHEL 6相比)。 其中之一是使用grub2而不是grub 。
默认情况下,操作系统似乎使用UUID来“查找”引导设备。
是否有一个易于使用receipe来取回设备名称(如/ dev / sda1)?
问题的背景:我打算从模板克隆更多的虚拟机。 Base是具有不同UUID的新(虚拟)磁盘设备。
如果我不能恢复到sda1,我需要将grub.cfg中克隆的UUID更改为新的UUID – 即计划“B”。
2017年10月26日更新
root =的内核参数将被更改为磁盘 – 请参阅下面的Thomas答案。
这部分仍然有问题,由grub2-mkconfig生成:
if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1' 716433ab-9e30-42a7-a272-6c66243499d2 else search --no-floppy --fs-uuid --set=root 716433ab-9e30-42a7-a272-6c66243499d2 fi
这仍然包含对UUID的search。 如果找不到,启动过程将会出现错误“找不到”或类似的东西。 按下ENTER键后,系统会自动启动。
其余的Q是如何去激活该部分(我没有find禁用feature_platform_search_hint的地方)?
这可以通过将参数添加到/etc/default/grub 。
$ echo "GRUB_DISABLE_LINUX_UUID=true" >> /etc/default/grub $ grub2-mkconfig -o /boot/grub2/grub.cfg
如果你想再次检查结果之前。
$ grub2-mkconfig | less
要完全禁用GRUB中的UUID,您需要将该行添加到/ etc / sysconfig / grub中
$ echo "GRUB_DISABLE_UUID=true" >> /etc/default/grub $ grub2-mkconfig -o /boot/grub2/grub.cfg