[玩转系统] 如何在 Windows 中恢复已删除的 EFI 系统分区
作者:精品下载站 日期:2024-12-14 23:35:28 浏览:15 分类:玩电脑
如何在 Windows 中恢复已删除的 EFI 系统分区
本文将向您展示如何在 UEFI 计算机上手动恢复意外删除的 Windows EFI 启动分区。这种手动重新创建可启动 EFI 和 MSR Windows 分区的简单方法将允许您在意外格式化或删除 EFI 分区后启动操作系统。本指南适用于所有 Windows 版本(包括 Windows 10 和 11,以及 Windows Server 2022/2019/2016)。
假设您的 UEFI(非 BIOS)计算机上的 EFI 启动分区被意外删除或格式化(例如,当您尝试删除 OEM 恢复分区时)。因此,您的 Windows 11/10/8.1/7 无法正确启动并循环提示您选择启动设备(
Reboot and select proper boot device or insert boot media in selected boot device and press a key
)。接下来,我们将展示如何在删除 EFI 系统磁盘分区(具有启动管理器和 BCD 配置)后恢复 Windows 启动,而无需重新安装操作系统。
警告。本指南假设使用磁盘分区,不适合初学者。如果您错误地解释了这些命令,您可能会意外删除硬盘上的所有数据。还强烈建议将重要数据备份到单独的介质上。
Windows 中基于 UEFI/GPT 的硬盘分区
考虑 UEFI 计算机上具有 GUID 分区表 (GPT) 的启动硬盘驱动器的默认分区表应该是什么样子。您至少应该有以下分区:
-
EFI 系统分区(ESP - 可扩展固件接口)— 100 MB(分区类型 — EFI);
Microsoft 保留分区 — 16 MB(分区类型 — MSR);
主 Windows 分区(包含 Windows 的分区)。
这是最低配置。这些分区是在将操作系统全新安装到未格式化的驱动器期间由 Windows Installer 创建的。
计算机制造商或用户可以创建其他分区,其中包含例如 winre.wim 文件中的 Windows 恢复环境 (Windows RE)、带有 OEM 提供的系统映像备份的分区(允许回滚到计算机的原始状态)、用户分区等。
FAT32 文件系统的 EFI 分区是 UEFI 计算机上 GPT 磁盘上的强制分区,并且具有 GUID
c12a7328-f81f-11d2-ba4b-00a0c93ec93b
。 EFI 分区的默认大小为100 MB(在具有 4KB 扇区的高级格式磁盘上,EFI 分区的大小为 260MB)。
GPT 磁盘上的MSR 分区(Microsoft 系统保留)用于简化分区管理并用于服务操作(例如,将磁盘从基本磁盘转换为动态磁盘时)。这是带有 GUID 标签的分区
e3c9e316-0b5c-4db8-817d-f92df00215ae
没有分配驱动器号。该分区不能存储用户数据。在Windows 10和11中,MSR分区的大小仅为16 MB(在Windows 8.1中MSR大小为128 MB),文件系统为NTFS。 MSR 分区必须位于 EFI 系统分区 (ESP) 和主 Windows 操作系统分区之间。
具有 NTFS 文件系统的主分区包含已安装的 Windows、程序和用户数据。磁盘上还可能有其他数据分区。
Windows 中缺少 EFI 分区
EFI 分区(类似于具有 MBR 分区表的驱动器上的系统保留分区)存储启动配置存储 (BCD) 和启动 Windows 所需的许多文件。当计算机启动时,UEFI 环境从 EFI 系统 (ESP) 分区加载引导加载程序文件 (EFI\Microsoft\Boot ootmgfw.efi) 并将控制权转移给它。 bootmgfw.efi 可执行文件启动Windows 启动管理器,该管理器从 BCD 加载配置数据。加载 BCD 后,Windows 开始通过 winload.efi 启动。
当 UEFI 计算机启动时,它会在所有连接的驱动器上查找 EFI 系统分区。如果 EFI 分区被删除或损坏,您将无法从该驱动器启动 Windows。将会出现 UEFI 错误
could not locate \efi\boot\bootx64.efi - not found
或空的 UEFI Shell 提示您选择启动设备。
此外,如果 EFI 分区使用 NTFS 文件系统格式化,您将无法启动 Windows。即使执行全新的 Windows 安装,您也会收到错误:
Windows detected that the EFI system partition was formatted as NTFS. Format the EFI system partition as FAT32, and restart the installation.
如何在GPT驱动器上创建EFI系统和MSR分区?
由于 Windows 不正确,我们需要 Windows 10/11 安装驱动器(请参阅如何使用 Windows 安装文件创建 UEFI 可启动 USB 驱动器)或任何其他启动/救援介质。从安装介质启动,然后在第一个安装屏幕上按 Shift+F10 组合键。应打开命令提示符窗口。
运行磁盘和分区管理工具:
Diskpart
列出连接到计算机的硬盘:
list disk
在我们的示例中,仅连接了一个磁盘 0。 GPT 列中的星号(*)表示磁盘上已创建 GUID 分区表。
如果没有
*
在GPT列中,则磁盘分区表是MBR。您需要确保之前以本机 UEFI 模式启动计算机(否则,遵循此说明是没有意义的)。如果您确定分区表类型已更改,则可能值得将驱动器从 MBR 转换为 GPT。
选择该磁盘:
Select disk 0
显示磁盘上的分区列表:
List partition
在我的示例中,驱动器上仅留下三个分区:
MSR 分区 — 16 MB
Windows 系统分区 — 30 GB
恢复分区 - 541 MB
如您所见,EFI 分区(可能称为系统)丢失(已被删除)。
提示。如果EFI分区上只有EFI启动文件损坏,而分区本身没有被删除,则可以跳过使用diskpart重新创建分区的步骤。在大多数情况下,继续修复 Windows 中的 EFI 引导加载程序就足够了。如果您在具有 BIOS 固件的计算机上使用 MBR 磁盘,则可以按照本文所述重新创建 BCD。
我们的任务是删除剩余的 MSR 分区,以便磁盘上至少有 116 MB 的未分配空间(对于 MSR 和 EFI 分区)。您可以使用图形 Gparted 工具或直接从命令提示符删除此分区(这正是我们要做的)。
重要!请务必小心,不要意外删除 Windows 分区或包含用户数据的分区(如果有)。
选择要删除的分区:
Select partition 1
并删除它:
Delete partition override
确保仅剩下 30 GB 主 Windows 分区和恢复分区(在我们的例子中):
List partition
您现在可以手动创建 EFI 和 MSR 分区来放置 Windows 引导加载程序文件。为此,请在 diskpart 上下文中一一运行这些命令。
选择磁盘:
select disk 0
创建一个 100 MB 的 EFI 分区:
create partition efi size=100
确保在 diskpart 中选择 100 MB 分区(分区 1 之前的星号)。使用 FAT32 文件系统格式化 EFI 分区,并为其分配驱动器号:
list partition
select partition 1
format quick fs=fat32 label="System"
assign letter=G
现在您需要创建一个 16MB MSR 分区(适用于 Windows 10 或 11)。
create partition msr size=16
list partition
list vol
就我而言,驱动器号 C: 已分配给主 Windows 分区。如果不是,请按如下方式为其分配驱动器盘符:
select vol 1
assign letter=C
exit
关闭磁盘部分:
exit
使用diskpart创建EFI或MSR分区时可能会出现错误:
No usable free extent could be found. It may be that there is insufficient free space to create a partition at the specified size and offset. Specify different size and offset values or don't specify either to create the maximum sized partition. It may be that the disk is partitioned using the MBR disk partitioning format and the disk contains either 4 primary partitions, (no more partitions may be created), or 3 primary partitions and one extended partition, (only logical drives may be created).
这意味着磁盘上没有足够的未分配(可用)空间用于新分区。在这种情况下,您需要将主 Windows 分区(在我们的示例中为卷 1)的大小减少 128 MB:
select volume 1
shrink desired=128 minimum=128
然后如上所述创建 EFI 和 MSR 分区。
修复 GPT 驱动器上的 EFI 引导加载程序和 Windows BCD
在 UEFI 计算机上为 GPT 驱动器创建最小磁盘分区结构后,您可以继续将 EFI 引导文件复制到新分区并创建引导加载程序配置文件 (BCD)。
现在使用 bcdboot.exe 工具将 UEFI 引导环境文件从 Windows 系统目录复制到 EFI 引导分区并重新创建 BCD 引导加载程序配置。运行命令:
bcdboot c:\windows /s G: /f UEFI
Boot files successfully created.
结果,将在 EFI 分区上创建预定义的目录结构。 EFI 系统卷上必须存在以下文件:
\EFI\Microsoft\Bootmgfw.efi
\EFI\Microsoft\Boot ootmgr.efi
\EFI\Microsoft\Boot\memtest.efi
\EFI\Microsoft\Boot\BCD
\EFI\Microsoft\Boot\Fonts\wgl4_boot.ttf
\EFI\启动 ootx64.efi
列出当前 Windows 启动管理器引导加载程序配置。 {bootmgr} 部分中应出现一个条目,指向包含 UEFI 启动控制文件的分区 (\
EFI\MICROSOFT\BOOT\bootmgfw.efi
)。在这个例子中,它是
partition=G
, 或者
partition=\Device\HarddiskVolume2
(如果您尚未为 EFI 分区分配驱动器号)。
UEFI 引导加载程序必须将控制权传递给 Windows 引导加载程序文件
\Windows\system32\winload.efi
在
partition=C
重新启动计算机(使用
wpeutil reboot
命令以便从 WinPE 环境重新启动)并删除可启动 USB 闪存驱动器。
可选! 您可以手动执行 bcdboot 命令执行的所有操作。接下来,我们将向您展示如何复制 EFI 系统文件并使用 bcdedit 命令自行重建 BCD。
从安装 Windows 的驱动器目录中复制 EFI 环境启动文件:
mkdir G:\EFI\Microsoft\Boot
xcopy /s C:\Windows\Boot\EFI\*.* G:\EFI\Microsoft\Boot
在 Window Boot Manager 中重建引导配置数据 (BCD) 条目:
g:
cd EFI\Microsoft\Boot
bcdedit /createstore BCD
bcdedit /store BCD /create {bootmgr} /d “Windows Boot Manager”
bcdedit /store BCD /create /d “My Windows 10” /application osloader
该命令返回创建的 BCD 条目的 GUID。在以下命令中使用此 GUID 代替 {your_guid}:
bcdedit /store BCD /set {bootmgr} default {your_guid}
bcdedit /store BCD /set {bootmgr} path \EFI\Microsoft\Boot\bootmgfw.efi
bcdedit /store BCD /set {bootmgr} displayorder {default}
以下 bcdedit 命令在 {default} 上下文中运行:
bcdedit /store BCD /set {default} device partition=c:
bcdedit /store BCD /set {default} osdevice partition=c:
bcdedit /store BCD /set {default} path \Windows\System32\winload.efi
bcdedit /store BCD /set {default} systemroot \Windows
exit
如果 Windows 第一次无法正确启动,请尝试以下操作:
关闭您的设备;
拔掉(物理上)您的硬盘;
打开计算机,等待出现启动错误窗口(未找到操作系统),然后再次关闭计算机;
重新插上驱动器。
如果这没有帮助,请从安装 USB 闪存驱动器启动并运行以下命令:
bootrec /rebuildbcd
重启你的电脑
然后,在我们的案例中(在具有 UEFI 固件的 VMWare 虚拟机上进行测试),我们必须通过选择 EFI 分区上的 EFI\Microsoft\Boot ootmgrfw.efi 文件来向启动菜单添加一个新项目。
在某些UEFI菜单中,以此类推,您需要更改引导分区的优先级。
完成所有这些操作后,您的 Windows 应该可以正确启动。
提示。如果不起作用,建议确保只有 EFI 分区具有启动标志。您可以使用 GParted LiveCD 来完成此操作。
在某些情况下,重新创建 EFI 和 MSR 分区并恢复 BCD 引导加载程序后,Windows 可能会停止正常关闭。如果您遇到此问题,可以通过禁用 Windows 中的快速启动功能来修复它:
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[短剧] 2025年06月03日 精选+付费短剧推荐25部
[软件合集] 25年6月3日 精选软件44个
[短剧合集] 2025年06月2日 精选+付费短剧推荐39部
[软件合集] 25年6月2日 精选软件18个
[软件合集] 25年6月1日 精选软件15个
[短剧合集] 2025年06月1日 精选+付费短剧推荐59部
[短剧] 2025年05月31日 精选+付费短剧推荐58部
[软件合集] 25年5月31日 精选软件66个
[电影] 黄沙漫天(2025) 4K.EDRMAX.杜比全景声 / 4K杜比视界/杜比全景声
[风口福利] 短视频红利新风口!炬焰创作者平台重磅激励来袭
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[影视] 内地绝版高清录像带 [mpg]
[书籍] 古今奇书禁书三教九流资料大合集 猎奇必备珍藏资源PDF版 1.14G
[美图] 2W美女个美女小姐姐,饱眼福
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag