如何恢复启动菜单(UEFI)?

如何恢复启动菜单(UEFI)?

我已将 Windows 和 Ubuntu 都安装在 UEFI 模式下。然后我安装了 32 位 Ubuntu(分区类型列表中没有 UEFI 分区,因此我只是按原样安装它而没有指定 UEFI 分区)。所以现在我有 3 个操作系统。问题是:当我尝试在 UEFI 模式下加载笔记本电脑时,只有 Windows,要加载 Linux,我应该打开传统模式。我想返回 UEFI 模式下的操作系统列表。

答案1

大多数现代 EFI 都是 64 位的。主要的例外是一些平板电脑和上网本,它们有 32 位 EFI。这个细节(EFI 位深度)是关键,因为位深度在某种程度上被 EFI 的位深度“锁定”。不过,确实有办法解决这个问题。我知道两种方法,其中一种有两个子选项:

  • 使用兼容性支持模块 (CSM)-- CSM 是 EFI 用于支持较旧的 BIOS 模式引导加载程序的工具。听起来您使用 CSM 安装计算机。通常,这是一个坏主意,因为它使引导路径变得非常复杂;但是,如果您真的需要启动 32 位操作系统,这可能是最简单的方法。问题在于让它与 64 位 EFI 模式操作系统安装共存,因为在启动模式(BIOS/CSM/legacy 与 EFI/UEFI)之间切换很棘手。我知道两种方法可以做到这一点:
    • 使用固件的启动管理器-- 这通常是通过在启动过程早期按 Esc、Enter 或功能键(通常是 F8 或更高)来访问的。然后,您可以在命名的 EFI 启动加载程序和 BIOS 模式的磁盘启动之间进行选择。这通常是一个尴尬的解决方案。
    • 使用 rEFInd- 我的重新索引可以从其原生 EFI 模式启动切换到 BIOS 模式启动。不过,此功能在 PC 上默认禁用;您必须编辑refind.conf并取消注释该scanfor选项,确保它hdbios在选项之中。此后,您应该会看到一个用于执行 BIOS 模式启动的启动菜单选项。
  • 使用 GRUB-- GRUB 无法从 EFI 模式切换到 BIOS 模式启动(反之亦然);但它可以从 64 位启动加载 32 位内核,反之亦然。理想情况下,从 64 位sudo update-grubEFI 模式 Ubuntu 输入应该会让它从新安装中检测到 32 位内核并将其添加到菜单中。如果没有,您可能需要进行一些手动重新配置。请注意,这是相当“前沿”的东西,因此它可能不会轻易或如您所期望的那样工作。我自己从来没有这样做过。

在结束之前,我想问一下你为什么要尝试启动 32 位操作系统。在大多数情况下,没有必要这样做。即使你依赖一些旧的仅 32 位二进制文​​件,你通常也可以通过兼容库让它在现代 64 位 Ubuntu 中运行。

如果您确实需要运行 32 位发行版,最好在虚拟机(VirtualBox、QEMU、VMware 等)内运行。这种做法将消除任何引导加载程序的麻烦,并且总体上可能更安全一些(尽管您已经重新分区,这是风险的一部分)。

相关内容