将 BIOS 从 Legacy 更改为 UEFI,无需重新安装 Windows

Jacki

在本文中,我们将介绍如何将 Windows 计算机从 BIOS(传统)启动模式切换到具有安全启动的 UEFI,而无需重新安装操作系统或丢失任何数据。由于Legacy模式下的系统(包括虚拟机)只能从具有MBR分区表的磁盘启动,因此切换到UEFI启动模式需要将硬盘转换为GPT(GUID分区表)格式。

Windows 11 系统要求表明必须存在 TPM 2.0 芯片和 UEFI+安全启动。有一种解决方法可以在没有 TPM、UEFI 和安全启动的情况下安装 Windows 11,但不建议用于生产用途。因此,在具有 MBR 引导加载程序的计算机上从 Windows 10 升级到 Windows 11 时,建议启用 UEFI 模式或使用非官方方法在不受支持的硬件上升级到 Windows 11。

在开始将旧 BIOS 设备上安装的 Windows 转换为 UEFI 模式之前,请确保您的环境满足以下要求:

  • 计算机主板上的固件支持 UEFI 启动模式。当前已启用传统 BIOS(兼容)模式(检查设备上的 BIOS/UEFI 设置和主板规格)
  • 计算机运行 x64 版本的 Windows(至少 Windows 10 1703 或 Windows Server 2016)
  • 不使用双启动模式。
  • 未启用系统分区的 BitLocker 加密
  • 系统盘格式化为MBR分区表(分区数不超过3个)
  • 硬盘上有足够的可用空间来创建 EFI 系统分区(默认大小为 100MB)。

打开 PowerShell 提示符并检查计算机是否在 BIOS(传统)模式下启动:

$env:firmware_type

使用PowerShell检查磁盘分区样式。它应该是一个不超过 3 个主分区的 MBR:

Get-Disk
Get-Disk |Get-Partition

从 Windows 10 版本 1703 开始​​,微软引入了内置的MBR2GPT工具,它可以将磁盘的分区表从 MBR 转换为 GPT,而不会丢失数据。

首先,检查系统驱动器上的 MBR 分区表是否可以安全地转换为 GPT:

mbr2gpt /validate /allowfullos

如果可以将 MBR 转换为 GPT,该工具将返回:

MBR2GPT: Validation completed successfully

如果一个Disk layout validation failed for disk 0 error发生:

  • 确保您的 MBR 驱动器的主分区不超过 3 个
  • 不得有扩展分区、逻辑分区或动态分区
  • 至少有 500MB 可用磁盘空间用于创建系统分区以及存储主和备份 GUID 分区表

另一个可能的错误,'Cannot find OS partition(s) for disk 0' 表示 BCD 引导加载程序配置缺少用于引导至 Windows 恢复环境的条目。看看这个:

reagentc /info

Windows RE status: Disabled

建议阅读:如何在 Windows 10 PC、笔记本电脑和平板电脑上访问 UEFI BIOS

链接中的帖子介绍了如何启用 WinRE 恢复环境。

通过所有检查后,直接从运行的 Windows 启动在线 MBR 到 GPT 转换:

MBR2GPT.EXE /convert /allowfullos

命令完成后确认分区表已成功转换为 GPT:

Get-Disk

然后需要重新启动计算机,进入BIOS/UEFI Settings菜单,禁用Legacy BIOS模式,然后更改为 UEFI+安全启动模式

在物理计算机上,要进入 UEFI 设置,请按F2,Delete, 或者F1启动期间的按键。启用传统 BIOS 引导模式的选项的名称和位置可能会有所不同,具体取决于主板的固件和版本。该固件选项可能会以各种名称出现,例如兼容性支持模式、传统模式、CSM Boot、Legacy OS 等。将其更改为UEFI

如果这是 VMware 虚拟机,请转到 VM 设置,将启动选项更改为电喷固件模式,并启用安全启动选项。

成功启动 Windows 后,检查是否正在使用 UEFI+ 安全启动模式:

Confirm-SecureBootUEFI

如果安全启动模式被禁用,请使用以下命令检查是否使用 UEFI 启动模式:

$env:firmware_type

在具有不支持 UEFI 的旧版 BIOS 的旧计算机上,您可以使用 MBR 布局从外部 USB 闪存驱动器启动 Windows。在这种情况下,可以在硬盘的系统分区上使用GPT分区表。请参阅文章如何在 BIOS 计算机上(不带 UEFI)从 GPT 磁盘启动 Windows。