在 Refind 菜单中选择 Ubuntu 后如何禁用 Grub 的出现?

mjm*_*m2z 2 grub2 dual-boot windows refind

我对 Ubuntu 还很陌生,但在大多数情况下我已经能够按照我想要的方式设置一切。我使用的是 HP Spectre,运行 Windows 10 和 Ubuntu (UEFI)。我唯一遇到的问题是使用 Refind 而不是 Grub。我已经安装了 Refind 并禁用了安全启动。当我启动计算机时,会出现“重新查找”菜单,我可以在 Windows 10 或 2 个 Ubuntu 分区之间进行选择。我的问题是,当我单击 Ubuntu 时,它也会立即加载 Grub,但是当我单击 Windows 时,它会直接加载到操作系统中。在“重新查找”选项中单击“Ubuntu”后,如何禁用 Grub。如果不是强制性的,我不一定想将其从计算机中删除,但我希望能够加载到 Ubuntu 中,而无需在 Grub 中执行任何操作。我到处搜索但无法找到解决方案。另外,有没有办法让第二个Ubuntu启动消失而不删除它?感谢您的帮助,我真的很感激!

Rod*_*ith 5

有多种方法可以达到您想要的效果。从广义上讲,它们是:

  • 配置 GRUB 以隐藏其自己的菜单并仅引导其默认条目。(GRUB 启动后,您应该能够通过按空格键 IIRC 来启动较旧的内核;但是时机可能很棘手。)Liso 的答案应该可以帮助您做到这一点。
  • 使用 rEFInd 条目直接引导 Linux 内核,绕过 GRUB。这种方法可能是最简单的方法。当您从 rEFInd 启动 Ubuntu 时,您还可以选择按 F2 或 Insert 键(而不是 Enter)来选择较旧的内核。
  • 安装另一个引导加载程序,将其配置为在不显示菜单的情况下引导,然后使用它。有多种选择;有关详细信息,请参阅我有关该主题的页面。不过,这种方法的设置可能是最复杂的,并且很可能与前两种选择相比没有任何优势。我提及它只是为了完整性。

在这三种情况下,您可能会遇到的一个问题是 Ubuntu 的 rEFInd 中有多个条目。据我了解,您现在看到两个这样的条目,其中一个启动 GRUB,另一个启动您的 Linux 内核。(您可以通过在 rEFInd 菜单中突出显示它们时出现的说明来区分它们。)如果您想隐藏未使用/不需要的条目,可以通过多种方式执行此操作,如rEFInd 文档中所述。最好的方法可能是编辑/boot/efi/EFI/refind/refind.conf:添加dont_scan_dirs一行指定ubuntu(隐藏 GRUB);或者取消注释该scan_all_linux_kernels行并将其设置false为阻止 rEFInd 显示您的 Linux 内核。如果您更喜欢通过 GRUB 引导,则删除内核所在文件系统的 rEFInd 驱动程序可能会更简单。/boot/efi/EFI/refind/drivers_x64(假设您使用的是 x86-64 系统,驱动程序应该位于 中。)

也就是说,最好将冗余条目保留在适当的位置,因为这为您提供了额外的引导选项,以防其中一个条目失败。例如,GRUB 可能会配置错误,因此选择通过内核及其 EFI 存根加载程序进行引导可能是值得的;或者内核更新可能会破坏 EFI 存根加载程序,这种情况至少已经发生过一次(请参阅bug #1649326)。因此,拥有一个备份启动路径是值得的,即使它会添加一个您很少使用到 rEFInd 的冗余菜单项。