我在我的 Acer PC 上安装了 Ubuntu 和 Windows 10。
当我第一次将 USB 插入 PC 时,在将 BIOS 从 UEFI 更改为传统模式之前,我无法更改启动顺序并从中启动。在传统模式下,我安装了 Ubuntu。
现在我没有启动菜单可供选择,如果 bios 设置为传统模式,它会自动启动到 ubuntu,如果 bios 设置为 UEFI 模式,它会自动启动到 windows。再也无法从 USB 启动了。我插入 USB 来执行内存扫描,但不知为何它直接启动到 windows/ubuntu。
有人能解释一下为什么不提供启动选择以及我现在该如何解决这个问题吗?
答案1
为了在 UEFI 模式下启动,USB 或硬盘上必须有一个 EFI 系统分区,并且应使用 GPT 分区方案。EFI 系统分区应为 FAT32(最大兼容性)。仅当制造商在固件中实现其他文件系统时,才支持其他文件系统。
您已在 Legacy 模式下安装了 Ubuntu,并在 UEFI 模式下安装了 Windows 10。Ubuntu 未创建 EFI 分区,因此您无法在 UEFI 模式下启动 Ubuntu。
从答案来看:https://askubuntu.com/a/935838/986837作者:Rod Smith
在大多数计算机上,两个操作系统不必处于相同的启动模式,但如果它们都处于相同的启动模式,则会非常有帮助。
各个 EFI 之间的细节差异很大,但除了一些非常古老的 EFI 之外,BIOS 模式操作系统都是使用兼容性支持模块 (CSM) 安装的,CSM 是一种用于 EFI 固件的 BIOS 模拟器。当检测到触发其使用或不使用 CSM 的关键因素时,可以通过您在固件中设置选项或由固件本身打开或关闭 CSM。不幸的是,不同的 EFI(以及计算机)在确定在两种启动模式都处于活动状态时使用哪种启动模式方面几乎没有标准化。这使得 CSM 变得难以控制且难以使用。话虽如此,通常有两种方法可以管理使用不同启动模式的操作系统:
使用内置启动管理器——所有 EFI 都提供某种内置启动管理器,但具体如何使用它们因机器而异。通常,您可以在计算机开机后立即按下功能键(通常为 F8 或更高)、Del 或 Enter 来访问启动管理器。此操作会产生一个启动选项菜单。其中一些将以 EFI 模式启动计算机,而另一些将以 BIOS 模式启动计算机。EFI 条目通常由安装它们的操作系统命名(例如,ubuntu 或 Windows 启动管理器)或包含字符串“UEFI”。BIOS 条目可能描述 BIOS 启动介质,就像硬盘的名称一样。因此,您可以通过按名称选择硬盘而不是启动管理器中名为 ubuntu 的条目,在 BIOS 模式 Windows 和 EFI 模式 Ubuntu 之间切换。
使用 rEFInd —— 我的 rEFInd 启动管理器是一个独立的启动管理器,它可以执行与 EFI 的启动管理器类似的操作,但它在任何基于 EFI 的计算机上的工作方式大致相同。(Mac 是个例外;Mac 中的 CSM 是独一无二的,因此 rEFInd 对 Mac 的处理方式不同。)默认情况下,rEFInd 的 CSM 支持处于非活动状态,因此您不会看到 BIOS 模式启动选项。如果您取消注释 refind.conf 中的 scanfor 行并确保 hdbios 位于选项之一,您将看到硬盘的灰色菱形图标,它将启动其包含的任何 BIOS 模式引导加载程序。这是对磁盘包含的任何 EFI 模式引导加载程序的补充。因此,您可以在 BIOS 模式和 EFI 模式引导加载程序之间切换。
使用 rEFInd 启动管理器可以工作,但在您的情况下,最好在 UEFI 模式下重新安装 Ubuntu。
重新安装 Ubuntu(用 GRUB 替换 Windows 启动加载程序):
- 在 Rufus 中为 Ubuntu 创建 USB 安装程序。选择 GPT 分区方案和目标系统 UEFI。它将为 Ubuntu 安装程序创建 EFI 分区,以在 UEFI 模式下启动。
- 将您的 BIOS 切换到 UEFI 模式,然后保存并重置。
- 从 USB 启动
- 在设置的分区部分选择手动。
- 删除之前安装的 Ubuntu 创建的分区以及 Windows 创建的现有 fat32 efi 分区
- 创建新的FAT32分区并设置“用作:EFI”。
- 为 Ubuntu(ext4)创建新分区。
- 安装
安装程序应该检测现有的 Windows 安装,当您重新启动时,您将看到 grub 引导加载程序。