如何规范 Win10 MBR 分区以迁移到 GPT 和标准 EFI

rarog4k

我的目标是能够升级到 Windows 11。

它最初是一个 Windows XP 安装,经历了 WinVista、Win7、Win8、Win8.1 和 Win10 的所有升级。在我的升级路径中,我从来没有单独的分区(我认为通常是 50 或 100MiB 大)。因此,目前我的 SSD 3 主分区位于普通 MBR 分区表上。标记为活动(启动)的 C 分区、不可见的 WinRE 分区(msftres)和用于游戏的普通分区。尽管有 MBR 分区,但一切都使用 UEFI 启动,而没有打开传统模式。

mbr2gpt /validate不起作用并说Disk layout validation failed for disk 1

bootrec /rebuildbcd找到 Windows 10 安装但退出The requested system device cannot be found.

如果我只是使用 当前 Hiren 的启动 CD 中包含的 AOMEI Partition Assistant DiskGenius 将 MBR 转换为 GPT,同时保持分区不变,Windows 将无法启动。 通过将其转换回 MBR 并恢复活动/启动标志,Windows 将再次正确启动。有趣的是,没有活动/启动它仍然可以正常启动,但我无法关闭它并shutdown.exe告诉一些有关未找到系统设备的信息。

我想保留并修复当前安装的所有配置和已安装的程序,而无需重新安装和/或完全重新分区。但我没有想法和知识。可能的想法:在将分区表转换为 GPT 以使其可启动后,我必须在分区上设置一些标志,但是这些标志是什么?

编辑:添加布局为图片。SSD的布局

根据 Windows,C 具有以下标志:系统、启动分区、交换文件、活动、崩溃转储、主分区

Edit2:user1686 的解决方案完美运行。作为额外的措施,我必须清理驱动器 C 上的 EFI 文件夹(它不能正常工作/启动),并且不知何故还有一个新的 EFI 文件夹,它出现在 WinRE 分区上。现在一切都可以完美启动,此时 Windows 11 正在自行安装,目前为 73%。

用户1686

手动创建引导分区,对其进行格式化,使用bcdboot.

bcdboot C:\Windows /s S: /f UEFI

一些关于手动分区的官方微软指南:

对于 EFI,引导分区可以在任何位置;对于 BIOS,它必须完全在前 2 TiB 内。您可以重新调整 450 MB“恢复”分区的用途,或者您可以通过缩小其他分区来创建空间。

(虽然我可能会花时间创建一个“干净”的布局:将 C:\ 分区缩小到最小(以使下一步更快),使用 GParted将其向右移动大约 200 MB(为新的引导分区),将其恢复到完整大小,并在磁盘的最开头创建引导分区。这是可选的。)

如果您手动执行所有操作,则可以跳过该mbr2gpt步骤 - 使用 AOMEI 将磁盘转换为 GPT,然后重新分区,然后直接创建 EFI 系统分区并使用 Windows ISO 填充它bcdboot该磁盘现在可以在 UEFI 模式下启动。

(然后可以删除 C:\ 分区根目录中的旧 BCD 和 BOOTMGR - 以及更旧的 bo​​ot.ini 和 NTLDR,如果您还有这些。)

可能的想法:在将分区表转换为 GPT 以使其可启动后,我必须在分区上设置一些标志,但是这些标志是什么?

对于 EFI,引导分区应格式化为 FAT32 并具有正确的 GPT“分区类型 GUID”。(例如,当使用 DISKPART 时,create part efi将设置正确的类型,或者set id=<GUID>可以用于稍后修复它。)听起来您的固件可以识别 NTFS,但我不会依赖它。

此外,EFI 期望引导加载程序的确切路径存储在 NVRAM 中——如果它是从 UEFI 引导的环境中运行的,bcdboot 将为您执行此操作。(bcdboot 还将备用 \efi\boot\bootx64.efi 路径中安装引导加载程序,因此即使由于某种原因它无法更新 NVRAM,也应该可以正常工作。)

不过,您的问题可能不一定与固件有关——它可能在下一阶段,即 Windows 启动管理器无法将其 BCD 配置与实际分区匹配。(但同样,bcdboot 将通过生成一个全新的 . 来解决这个问题BCD。)

尽管有 MBR 分区,但一切都使用 UEFI 启动,而没有打开传统模式。

这听起来根本不像 UEFI 模式。“活动”标志在 UEFI 模式下无关紧要 - 它仅适用于 BIOS 引导扇区。

如果我只是使用当前 Hiren 的启动 CD 中包含的 AOMEI 分区助手将 MBR 转换为 GPT,同时保持分区不变,Windows 将无法启动。

这很正常。在 BIOS 模式下,引导扇区(即使在 GPT 分区磁盘上仍然存在于 MBR 扇区中)无法继续,因为不知道如何读取 GPT 分区表以找到“活动”分区。

而在 UEFI 模式下,固件无法在磁盘上找到任何包含 .efi 格式的 Windows 引导加载程序的 EFI 系统分区。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何规范 Win10 MBR 分区以迁移到 GPT 和标准 EFI

VirtualBox 不引导混合 GPT/MBR、EFI 和 MBR

MBR和GPT分区样式

如何在不重新安装的情况下将Windows 10从BIOS / MBR引导迁移到UEFI / GPT?

如何在不丢失数据的情况下在 Arch Linux 中从 EFI 转换为 MBR 引导加载程序(和/或 GPT 磁盘到 MBR 磁盘)

使用EFI分区+ MBR分区表(而不是GPT)启动UEFI可以吗?

如何将分区从GPT转换为MBR,并使系统双启动Kali和Windows?

将 Ubuntu 从 MBR+BIOS 转换为 GPT+EFI 后无法检测/启动 Windows 10

如何将Ubuntu MBR驱动器更改/转换为GPT,并使Ubuntu从EFI引导?

为什么将MBR和GPT作为分区表?

GPT保留和EFI系统分区重要吗?

启动问题,win8,win10,ubuntu,efi,gpt

将Windows 7从BIOS-MBR迁移到BIOS + GPT

将Ubuntu从MBR磁盘迁移到GPT磁盘(非UEFI)

旧版模式下的Windows 8.1(MBR分区)如何在UEFI模式下安装Windows 10(gpt分区)?

Windows 7 GPT到MBR?EFI到BIOS

Windows在EFI引导中将GPT磁盘检测为MBR

MBR上的双引导Win 7与GPT上的Win 10

将混合GPT / MBR转换为纯GPT分区方案

命令以deb和rpm分配的形式列出MBR和GPT的分区类型代码

Clonezilla无法使用不匹配的GPT和MBR分区进行克隆

双引导安装和重新分区以使用mbr2gpt工具

从Windows 7升级到Windows 10后,系统认为GPT分区为MBR

如何使用混合MBR修复损坏的GPT?

如何在不丢失数据的情况下将MBR分区转换为GPT?

如何将EFI系统分区转换为普通的GPT分区?

双启动Ubuntu(GPT BIOS磁盘)和Win 7(MBR磁盘)

使用 GPT 和 EFI 安装 Lubuntu 20.04

从EFI和GPT用extlinux引导Linux