BIOS 与 UEFI

BIOS 与 UEFI
  • 磁盘 0 - 它是一个 HDD。它的分区形式是主引导记录。(膜生物反应器) 这是我想要安装 Linux 和双启动的磁盘。
  • 磁盘 1 - 它是一个 SSD。它的分区样式是 GUID 分区表。(谷氨酰胺磷酸酶)是安装Windows 10的磁盘。
  • 我的 BIOS 模式是 UEFI(在系统信息中看到)
  • 安全启动已禁用(在系统信息中看到)
  • 这两个磁盘都是基本磁盘。

我的磁盘管理图片

到这里我都明白了。但接下来要讲的是启动和 EFI、UEFI、BIOS、Legacy 等等。当我在观看 YouTube 操作视频时,我看到一个多次提到的工具,那就是易BCD。因此,我安装了它,它启动时出现一个消息框,提示检测到 EFI Bootloader。我单击了“帮助”,但它并没有提供帮助,反而造成了更多混乱。您也可以检查它:EasyBCD 和 UEFI

在“选项 1”部分。它说

但是,您的 Windows 安装已经处于 UEFI/GPT 模式,而 UEFI 安装的 Windows 无法通过传统的 MBR 方法启动!

有成对的,如 legacy/MBR、EFI/GPT、BIOS/MBR、EUFI/GPT。那么这是否意味着启动是成对进行的?

如果 BIOS 有两种模式:UEFI 和 Legacy,那么为什么我听说 BIOS 和 UEFI 是两种模式?

那么 EFI 和 UEFI 有什么区别?

请帮助我实现双重启动,我将非常感激您。

答案1

BIOS 与 UEFI

BIOS 和 UEFI 都是 PC 主板固件必须遵循的标准。它是 PC 启动时执行的第一段代码。它的作用是初始化硬件并将控制权传递给另一个称为引导加载程序的程序,该程序将启动到操作系统。这个过程称为启动

BIOS 已经使用了很长时间,但它们的设计考虑了非常非常古老的硬件。多年来,随着技术的发展,BIOS 的原始概念得到了更新和扩展,但保持向后兼容性的需求是一个很大的难题,因此最终 BIOS 被放弃,转而采用 UEFI。过去 10 年生产的几乎所有消费类计算机和主板都运行 UEFI 而不是 BIOS。

在现代 PC 中,“BIOS”一词仍然经常被错误地用来指代 UEFI,因为人们的习惯很难改变。

EFI 与 UEFI

EFI 也是 PC 主板固件标准,但它是由英特尔针对服务器硬件开发的。UEFI 是 EFI 的演变,旨在用于一般 PC 用途,包括消费级计算机。UEFI 使用与 EFI 非常相似的概念,因此有时 UEFI 命名法在事物名称中使用“EFI”,最值得注意的是EFI 系统分区。你可以将UEFI视为EFI 2.0。

BIOS 与 Legacy 与 CSM 与 EFI/UEFI

(U)EFI 使用与 BIOS 完全不同的启动机制。BIOS 使用的旧启动技术不再适用于普通 UEFI,但有兼容性支持模块(CSM)——UEFI 的一个可选组件,提供与 BIOS 启动的向后兼容性。这种旧的启动模式称为传统启动BIOS 启动或者CSM 引导在 UEFI 设置程序中(通过在启动时按某个键来访问 UEFI 设置)。这三个术语都表示同一件事:UEFI 启动与 BIOS 兼容的引导加载程序的能力。

根据我的经验,大多数 UEFI 除了允许 UEFI 启动外,还允许启用 BIOS 启动,但有些 UEFI 必须选择其中一种启动方式。有些平台不支持 CSM,例如英特尔的 Gemini Lake。

MBR 与 GPT

这些是分区表样式。分区表是存储设备(通常是 HDD 或 SSD)上的数据结构,用于描述该设备的虚拟分区。我所说的虚拟是指它实际上不会在物理上改变设备的任何内容,它只是对用户意图的描述。操作系统的工作是读取分区表并尊重它,将磁盘显示为独立分区的集合,而不是一个大型存储设备。

各个公司出于各自的目的发明了许多旧的分区表样式,但经受住时间考验的分区表样式通常称为膜生物反应器如今,它已经过时了。它虽然很老了,但用了很长时间还是不错的。它有两个主要限制:首先,它最多支持四个分区。后来,人们发明了扩展分区:占用单个分区槽但可容纳无限数量的内部分区的分区。另一个限制是无法解决的:它无法处理超过 2 32 -1 的扇区。这听起来很多,但我们已经达到了:对于 512 字节扇区磁盘,它是 2 TB,对于 4k 扇区磁盘,它是 16 TB。如果您的磁盘大于此,MBR 将只允许您分区到这么多空间。

GPT 是 MBR 的继承者。它支持多达 128 个分区和地址,这些分区和地址非常大,我们几十年内都用不到,甚至永远也用不到。

BIOS+MBR 和 UEFI+GPT

这些是自然配对,但如果您愿意,也可以使用 BIOS+GPT 或 UEFI+MBR。

MBR 被称为主引导记录- 一小块分区表,其中包含主引导加载程序。当 BIOS 启动时,它会执行这段代码。此 MBR 记录不属于任何分区,它直接存储在分区表中。这种方法很容易在固件(如 BIOS)中实现,但它非常有限:主引导记录很小,因此所有高级引导加载程序都尝试在其中安装最小文件系统驱动程序并从系统分区加载其余组件。如果没有专用工具,它也很难使用。

GPT 实际上是由 UEFI 规范定义的,并且采用了不同的方法。由于 UEFI 并不打算像 BIOS 那样精简和简单(它基本上是一个小型操作系统,包括加载自定义模块的能力),因此它的设计者并没有考虑 BIOS 的“KISS”方法。相反,UEFI 包括 FAT 系列文件系统的驱动程序,并且可以配置为直接从分区加载引导加载程序。基本上,每个人都试图存储在 MBR 中的文件系统驱动程序现在由平台提供,以及内置的引导管理器。

因此,为了让 BIOS(或 CSM)启动,您需要在分区表中有 MBR 记录。GPT 规范实际上涵盖了这种情况。GPT 中保留了 MBR 分区表中用于 MBR 记录的相同区域(令人困惑,是吧?)。这就是所谓的保护性MBR,以防有人想从 BIOS 启动 GPT 磁盘。

对于 UEFI,你通常需要一个EFI 系统分区(有时称为 ESP)。它使用 FAT 系列 FS(通常为 FAT32)格式化,用于将所有操作系统的所有引导加载程序存储在名为EFI(EFI 遗留,看到了吗?)的目录的子目录中。然后,这些引导加载程序被添加到 UEFI 设置中的引导选项列表中,或由 OS 安装程序添加到其中,以便在 UEFI 的内置引导管理器中可选择它们。

或者,如果存储设备只打算提供单个 UEFI 启动选项(例如 OS 安装媒体),它可以提供一个EFI\BOOTX64.EFI在 FAT 系列格式的分区上调用的引导加载程序文件。这些文件会自动导入 UEFI 启动管理器,无需进行任何配置。

因此,BIOS+GPT 是可能的,这要归功于保护性 MBR,而 UEFI+MBR 也是可能的,因为您仍然可以创建 EFI 系统分区。不过,Windows 不支持这些组合。

我在一个磁盘上安装了 Windows,如何在另一个磁盘上安装 Linux?

磁盘技术(即 SSD 与 HDD)并不相关。我只会使用这两个作为磁盘的名称。

我建议:

  1. 考虑将 HDD 重新分区为 GPT - 只是为了使其现代化并避免烦人的分区限制。如果您要保留该磁盘上的其他数据,则很可能无法进行无损转换,因此请考虑跳过此步骤。

  2. 在 HDD 上创建 EFI 系统分区。您可以使用 SSD 上已有的分区,但这会产生单点故障 - 如果没有 SSD,HDD 上的操作系统将无法启动。每个磁盘一个 ESP 是安全的,并且到处都受支持(理论上您可以拥有任意数量的 ESP,但 Windows 升级可能会出现一些问题)。

  3. 在 HDD 上创建一个分区来存储 Linux 和您的文件。

  4. 在 UEFI 模式下安装 Linux。

尖端:

  • 如果您不打算使用 CSM,最好在 UEFI 设置中禁用它以避免混淆。
  • 请记住在安装程序中选择正确的 ESP。对于 Debian,请选择用作:EFI 系统分区。对于 Ubuntu,我认为在底部下拉菜单中选择正确的磁盘就足够了。
  • 不要浪费时间尝试安装 Kali Linux。它不是设计为通用操作系统,也不打算安装。如果您想学习 Linux,请选择通用的、针对普通用户的操作系统。Debian 是 Kali 的基础。Ubuntu 是一个用户友好的现代 Debian 衍生产品,拥有庞大的用户群(因此支持力度很大)。我个人喜欢 Pop!_OS,它是 Ubuntu 衍生产品,经过了一些调整和生活质量改进。如果您只想使用 Kali,请按照预期使用方式从 USB 启动它。

答案2

你只是让自己感到困惑:你处于 EFI+GPT 模式,这是没问题的。

磁盘 1 是 EFI 启动代码所在的位置,它将根据您在启动菜单上的选择,引导至任何磁盘上的正确安装。

一些建议:避免修改一个安装中的文件, 在 Windows 中禁用快速启动 并在开始安装 Linux 之前获取磁盘 1 的备份映像(我使用的是 AOMEI Backupper Freeware)。我注意到 Linux 也可以在 Windows 下的 Windows Subsystem for Linux (WSL) 中使用,无需双重启动。

您可以在互联网上搜索更多信息 - 有很多可用的信息。

相关内容