我以前只用过 Ubuntu 操作系统,直到我决定买一块新的 SSD 并在其上安装 CentOS。现在,启动计算机时,如果不先修改 Ubuntu 的条目,就无法启动 Ubuntu。我知道如何做到这一点,基本上我会更改以下内容:
linux /boot/vmlinuz...
initrd /boot/initrd.img...
到
linuxefi /boot/vmlinuz...
initrdefi /boot/initrd.img...
但是,每次我想要启动 Ubuntu 时我都需要进行此更改,因此我的问题是:如何使此更改永久生效?
/boot/efi/EFI
或者
/boot/grub/
或者
/boot/grub2/
我也找不到每次启动计算机时我更改的确切行的文件。我猜这个文件的名字类似于 grub.cfg。无论如何,我不想在 100% 确定不会把事情搞得一团糟之前修改其中一个文件。另外,应该在 Ubuntu 还是 CentOS 中进行此更改?
任何帮助都将不胜感激。谢谢!
PS:请注意,如果这有关系的话,Ubuntu 和 CentOS 安装在不同的 SSD 中。
答案1
我终于找到了合适的文件,并想在这里记录解决方案,以防其他人遇到相同(或类似)的问题。
就我个人而言,在 Ubuntu 中,文件:
/boot/grub/grub.cfg
只允许我修改“Ubuntu 高级选项”下列出的条目。
然而,在 CentOS 中(记得这个问题是在我在新的 SSD 中安装 CentOS 时第一次出现的)文件:
/boot/efi/EFI/centos/grub.cfg
包含条目“Ubuntu 16.04”的行。
现在唯一让我怀疑这是否是一个理想的解决方案的是,在 grub.cfg 中有一个注释说不要修改该文件,因为它是从“/etc/default/grub”自动生成的。上述目录中的更改固定的问题,但到目前为止,我在启动时没有遇到任何问题。
我会在接受这个答案之前留出几天时间,以防有人对 grub.cfg 开头的“不要编辑此文件”提示有更好的答案或解释。