CentOS/RHEL 7 有一些变化(与 CO/RHEL 6 相比)。其中之一是使用grub2而不是grub。
默认情况下,操作系统似乎使用 UUID 来“查找”引导设备。
是否有一个易于使用的收据来返回设备名称(如 /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 的搜索。如果找不到,启动过程将出现“未找到”或类似的错误。按 ENTER 后,系统将正常启动。
剩下的问题是如何停用该部分(我没有找到禁用feature_platform_search_hint的地方)?
这可以通过将如下参数添加到
/etc/default/grub
.如果你想仔细检查之前的结果。
更新
要完全禁用GRUB中的 UUID ,您需要将以下行添加到/etc/sysconfig/grub