如果我的其他操作系统是以 EFI 模式安装的,为什么我必须以 EFI 模式安装 Ubuntu?

如果我的其他操作系统是以 EFI 模式安装的,为什么我必须以 EFI 模式安装 Ubuntu?

我正在尝试在预装了 Windows 8 的新华硕电脑上创建双启动系统。我想安装 Ubuntu。

文档说如果我的 Windows 安装处于 EFI 模式那么我需要还可以以 EFI 模式安装 Ubuntu。

我检查了我的 BIOS 设置,它实际上设置为以 UEFI 模式启动,所以我知道我的 Windows 安装处于 EFI 模式。但问题是,为什么在这种情况下我必须以 EFI 模式安装 Ubuntu?

我之所以问这个问题,是因为华硕的 BIOS 是 American Megatrends 的。它将传统模式称为“CSM”(“兼容性支持模块”)。当我打开“CSM”模式时,我的 Windows 8 仍然会启动。此外,在 EFI 模式下,我无法从 USB 笔启动我的 Linux,但现在我可以了。

基本上,我的机器能够在 EFI 模式下启动 Windows 8,并在非 EFI 模式下从 USB 笔启动 Linux-Live。为什么我还必须在 EFI 模式下安装我的 Ubuntu?

答案1

fooot 是正确的,但我想稍微详细说明一下这个答案。

大多数 EFI 都包含 CSM,它允许启动较旧的 BIOS 模式引导加载程序。问题在于 BIOS 模式和 EFI 模式引导的集成度很差。Ubuntu 与许多 Linux 发行版一样,默认使用 GRUB 2,而 GRUB 2 无法从 EFI 模式引导切换到 BIOS 模式引导或反之亦然。不过,在纯 BIOS 或纯 EFI 设置中,GRUB 可以为 Windows(或其他“外部”操作系统)提供引导选项。因此,从管理引导过程的 Ubuntu 内工具的角度来看,混合模式设置代表了倒退。

在某些计算机上,您可以使用计算机自己的启动管理器来切换启动模式。在最好的情况下,这种方法效果很好;然而,在大多数系统上,这个过程很不方便(它需要在启动过程中恰好按下功能键)。在某些计算机上,这是不可能的——它们的启动管理器不允许切换启动模式,或者根据分区表类型施加任意限制,这使得无法在单个磁盘上切换启动模式。从 Ubuntu 开发人员和文档作者的角度来看,这种解决方案并不令人满意,因为它超出了 Ubuntu 的控制范围,而且变化很大,基本上不可能记录下来。说“不要这样做”是很多比编写几十页试图充分记录在许多计算机上无法运行的程序更容易、更有帮助。

在大多数情况下,在 EFI 模式下启动 Linux 没有任何缺点 —— 至少在安装操作系统后没有缺点。(许多人发现在 EFI 模式下安装的过程比在 BIOS 模式下安装更具挑战性。这是 EFI 错误、操作系统安装程序设计不佳以及用户对 EFI 模式的了解少于 BIOS 模式怪癖等多种因素综合作用的结果。)

如果你执意要混合使用启动模式,你随时可以尝试。如果你运气好,你的固件可能会让你轻松切换启动模式。如果没有,请查看我的rEFInd 启动管理器。如果你编辑它的refind.conf配置文件,取消注释该scanfor行,并确保它hdbios是它的选项之一,那么可能允许在启动模式之间轻松切换。但这并不能保证;一些 EFI 缺乏必要的支持,并且 rEFInd 的 BIOS 模式启动选项仍然很原始。此外,rEFInd 直接在 EFI 模式下启动 Linux 内核,因此在安装 rEFInd 时,您可能会拥有一条更干净、更简单的纯 EFI 启动模式路径。

答案2

某些 BIOS 实现可能只允许所有 UEFI 启动或所有 Legacy 启动,并且不可能将两者混合。

其他 BIOS 实现能够同时处理这两种情况。听起来 CSM 模式允许您启动 UEFI 和 Legacy 驱动器。我的主板就是这样的,所以它有一个“UEFI 硬盘驱动器”,然后是一个常规的“硬盘驱动器”组,等等。驱动器将位于与其模式相对应的类别中。

安装 Ubuntu 时,您获得的模式将与您启动时使用的模式相关。如果 USB 只能在 CSM 模式下启动,那么它可能会以非 UEFI 的 Legacy 模式安装。

相关内容