让 Windows 在 UEFI 和 Legacy 模式下均可启动吗?

让 Windows 在 UEFI 和 Legacy 模式下均可启动吗?

几天前,我将 Windows 10 安装到新的硬盘上。之后,我在固件中发现两个启动选项:(1)HDD,(2)UEFI - HDD。我认为前者是以传统模式启动,后者是以 UEFI 模式启动。我尝试了两者,都可以启动 Windows。

从那时起,我安装了另一个操作系统,并将文件移到 EFI 系统分区 (ESP) 内,然后恢复原状……我忘了我到底做了什么。现在,固件显示 (1) HDD,(2) Windows - HDD。选项 2 可以启动到 Windows。但是当我选择选项 1 时,系统会暂停在空白屏幕上。我认为这意味着 Windows 现在可以在 UEFI 中启动,但不能在传统模式下启动。

目前是否可以让 Windows 在 UEFI 和传统模式下启动,而不会丢失数据?

答案1

您可能一直只以一种模式启动。内置 EFI 启动管理器的一个问题是它们并不总是按照您的想法运行。当您在启动管理器中选择选项 A 时,它可能会尝试该选项,但如果该选项失败,它可能会开始执行其常规启动顺序,因此即使您选择了选项 A,您最终也可能通过选项 B 或选项 C 启动。(我不止一次被这种倾向搞得心烦意乱。我一直大声命令计算机按照我的指示去做,但它从不听我的。;-))因此,您尝试以两种模式启动,最终可能只以一种模式启动。

据我所知,仅通过选择不同的启动选项,无法以 BIOS/CSM/传统模式或 EFI/UEFI 模式启动单个安装的方式安装 Windows。如果这是可能的,并且如果您确实做到了这一点,那么很可能没有其他人(可能除了一些 Microsoft 开发人员)可以告诉您如何做到这一点。

答案2

实际上,使 UEFI Windows 10 安装在 BIOS 模式下可启动也相当容易:

首先,您需要从 GPT 创建混合 MBR(例如使用 gdisk),包括 Windows 分区(类型 7)并使其可启动。

然后在 BIOS 模式下启动 Windows 安装 CD/USB 记忆棒并使用启动修复。

这将在 Windows 分区中创建一个启动块,允许它以 BIOS 模式启动,例如使用 grub 的 chainloader (hdx,gptx)+1。

为了使其在没有任何引导加载程序的情况下以 BIOS 模式启动,您需要安装合适的 MBR 引导代码(例如 uswing install-mbr),它将链式加载到活动分区中。

Windows 安装仍然可以在 UEFI 模式下启动,但是,Windows 启动组件的更新很可能(不太可能)只会影响当前启动的模式。

相关内容