使用UEFI和GPT在多重引导中禁止grub

w

我正在运行带有GPT的多引导笔记本电脑。操作系统包括Windows,Fedora,Debian和Ubuntu。

每个发行版都试图控制计算机的启动,但是每个发行版都有自己的小怪癖。例如,两个发行版的grub缺少Windows(无法启动到它),另一个发行版的grub缺少Fedora(无法启动到它),而另一个发行版的grub缺少Debian(无法启动到它)。

清理多少次/boot然后sudo grub2-mkconfig -o /boot/grub2/grub.cfg在当前操作系统和其他发行版上发布都没有关系问题仍然存在。

我发现引导到每个操作系统而不会出现问题的方法是使用UEFI的加载程序。但是,如果我使用固件的加载器,我发现它仍然可以带我进入残破条目的grub菜单。

如何禁用对grub菜单项的探测,以使每个发行版的grub风味仅能找到自己,而没有其他风味?

罗德·史密斯

在系统引导之前,将通过中的文件控制每个操作系统的GRUB的探测/etc/grub.d特别是,通常有一个名为的脚本30_os-prober来控制OS探测过程。但是,这可能对配置造成很大的威胁。您需要运行update-grubgrub-mkconfig在调整探测脚本之后才能创建新的配置文件。

有一个名为GRUB Customizer的工具可以大大简化此类过程。它描述了这里,其他地方。我从未亲自使用过它,因此我无法直接提供更多详细信息,但这可能值得研究。

另一个选择是放弃GRUB,转而使用另一个适用于Linux的EFI引导加载程序。我自己的rEFInd可能相对容易设置和配置,因为它在启动时会扫描内核,因此在安装新内核时不需要重新配置。最大的警告是,安装了四个OS /发行版后,菜单最初会很混乱,包括三个单独的GRUB条目。因此,您需要通过编辑refind.conf,取消注释该dont_scan_dirs行以及添加条目以将这些多个GRUB条目排除在清单之外来对其进行清理。您可能还需要调整图标,如此处所述为了舒适起见,您最终仍然可能有太多的内核条目。最好的方法是通过发行版的程序包管理器卸载未使用的内核。您可能需要mkrlconf.sh在每个发行版中运行(rEFInd附带的脚本)来创建/boot/refind_linux.conf文件,尽管有时并非必须这样做。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章