ESP(EFI System Partition)分区是UEFI固件中的一个特殊分区,通常位于硬盘上的第一个分区,用于存储引导加载程序、UEFI应用程序和其他与系统启动相关的文件。ESP分区使用FAT32文件系统,并拥有特定的分区类型GUID(GUID Partition Table,GPT)
ESP(EFI System Partition,EFI 系统分区)完整解构
前置说明:ESP 是UEFI 固件规范强制定义的系统分区,GPT 磁盘架构下核心引导分区,用于存放 EFI 引导程序、BCD 引导数据库;MBR 磁盘 CSM 兼容模式下也可存在 ESP,但原生 UEFI 启动必须依赖 ESP。 固定结构:底层原理|依赖文件|依赖关系|逻辑链路|配套链|边界
一、底层原理
ESP 是遵循 UEFI 规范的独立分区,核心本质:固件可直接读取的 FAT32 文件系统分区,CPU 在固件阶段(内核未加载)即可直接访问该分区内的 EFI 二进制文件(.efi)。
- 分区基础属性
- 分区类型 GUID:
C12A7328-F81F-11D2-BA4B-00A0C93EC93B(GPT 标准 ESP 标识) - 文件系统:必须为 FAT32(UEFI 固件通用内置 FAT 驱动,不支持 NTFS/ReFS)
- 最小推荐容量:100MB;Win11 强制要求≥100MB,生产环境常用 200MB~500MB
- 分区属性:GPT 标记
EFI_SYSTEM_PARTITION,无盘符(默认不分配驱动器号)
- 分区类型 GUID:
- 核心运行逻辑 UEFI POST 自检完成后,固件读取主板 NVRAM 内的EFI 启动项,定位 ESP 分区,加载分区内对应的
.efi引导程序;Windows 默认加载bootmgfw.efi,后续由 efi 程序加载winload.efi,最终移交 ntoskrnl 内核。 - 目录规范(Windows 标准结构)
\EFI\Microsoft\Boot\
├─ bootmgfw.efi Windows主EFI引导程序
├─ BCD UEFI版本引导配置数据库
├─ boot.sdi 系统部署相关
└─ 各类语言字体、修复模块
\EFI\BOOT\
└─ bootx64.efi 通用fallback引导(NVRAM启动项损坏时自动兜底)
二、依赖文件
| 文件 | 路径 | 作用 |
|---|---|---|
| bootmgfw.efi | ESP:\EFI\Microsoft\Boot\bootmgfw.efi |
Windows UEFI 主引导管理器,等价 Legacy 的 bootmgr.exe |
| BCD | ESP:\EFI\Microsoft\Boot\BCD |
UEFI 架构引导配置数据库,存储系统路径、启动参数 |
| bootx64.efi | ESP:\EFI\BOOT\bootx64.efi |
备用兜底 EFI 引导(通用 EFI 引导程序) |
| winload.efi | \Windows\System32\winload.efi |
bootmgfw.efi 下游,加载 Windows 内核 ntoskrnl.exe |
| ntoskrnl.exe | \Windows\System32\ntoskrnl.exe |
Windows 内核本体 |
| boot.sdi | ESP:\EFI\Microsoft\Boot\boot.sdi |
离线部署 / WinRE 使用的磁盘镜像文件 |
| font、语言资源 | ESP:\EFI\Microsoft\Boot\Fonts |
引导菜单文字渲染 |
底层依赖:UEFI 固件内置 FAT 驱动,不需要 Windows 的 fastfat.sys,固件阶段就能直接读取 ESP;系统启动完成后,才会由 Windows 内核驱动挂载 ESP。
三、依赖关系
3.1 完整 UEFI 启动调用链路
主板UEFI POST自检 → 读取NVRAM启动项 → 定位GPT磁盘ESP分区
↓
固件内置FAT驱动读取ESP → 加载 bootmgfw.efi
↓
bootmgfw.efi 读取同目录BCD引导配置
↓
加载系统盘 winload.efi → 初始化内核环境 → 加载 ntoskrnl.exe → 启动系统
兜底分支(NVRAM 启动项丢失):固件自动加载ESP:\EFI\BOOT\bootx64.efi
3.2 前置依赖
- 固件模式:主板必须开启 UEFI 模式,关闭传统 CSM;纯 Legacy BIOS 不使用 ESP
- 分区表:优先 GPT;MBR 磁盘可以手动创建 ESP,但不属于标准 UEFI 原生架构
- 文件系统:ESP 必须是 FAT32,簇大小符合 UEFI 规范(通常 4K)
- NVRAM:主板非易失性存储需要写入 ESP 的分区信息、efi 文件路径(启动项)
- 配套分区:Windows 标准 GPT 磁盘必须配套MSR(微软保留分区)
3.3 互斥 & 叠加约束
- ESP 和 MSR 独立分工:ESP 存引导文件,MSR 无文件系统,用于动态扩容 / 缩卷,二者不可合并
- 单磁盘可存在多个 ESP(多系统共存,Windows/Linux 独立 ESP);但主板 NVRAM 可设置多启动项切换
- BitLocker 场景:ESP不能加密,必须明文可被固件读取;系统分区才会加密
- ESP 损坏≠数据丢失:ESP 只存放引导文件,系统、用户数据在其他分区
四、逻辑链路
链路 1:全新 Windows 部署自动生成 ESP 流程
flowchart LR
A[安装程序识别GPT磁盘] --> B[自动创建MSR分区]
B --> C[自动创建100MB FAT32 ESP分区]
C --> D[bcdboot.exe 将bootmgfw.efi、BCD等引导文件复制进ESP]
D --> E[安装程序写入主板NVRAM EFI启动项]
E --> F[重启后UEFI固件读取ESP引导系统]
链路 2:ESP 损坏后的修复链路(运维高频)
ESP文件丢失/BCD损坏 → WinPE环境diskpart挂载ESP盘符 → bcdboot C:\Windows /s S: /f UEFI → 重建ESP内引导文件+BCD → 自动更新NVRAM启动项
链路 3:多系统共存链路
磁盘多个独立ESP → 主板NVRAM写入多条EFI启动项 → 开机UEFI启动菜单选择对应ESP内的efi程序
五、配套链
✅ 配套工具横向清单
| 工具 | 核心用途 | ESP 相关场景 |
|---|---|---|
| diskpart | 分区管理 | 创建 ESP、分配 ESP 盘符 |
| bcdboot.exe | UEFI 引导部署 | 向 ESP 复制 efi 文件、生成 BCD、写入 NVRAM |
| bcdedit.exe | BCD 编辑 | 修改 ESP 内 BCD 引导条目 |
| bootice.exe | 第三方引导工具 | 手动管理 ESP、NVRAM 启动项 |
| wpeutil | WinPE 工具 | PE 环境初始化后挂载 ESP |
| msinfo32 | 系统信息 | 查询当前是否 UEFI 启动、ESP 信息 |
✅ 运维标准命令(WinPE 修复 ESP)
:: diskpart挂载ESP
diskpart
list disk
select disk 0
list partition
select partition 1 # 选中ESP分区
assign letter=S:
exit
:: 重建ESP引导文件与BCD
bcdboot C:\Windows /s S: /f UEFI
✅ 配套分区标准组合(Windows GPT 磁盘)
- ESP(100~500MB,FAT32)
- MSR(16MB,无文件系统)
- Windows 系统 NTFS 分区
- WinRE 恢复分区(可选)
六、边界(能力上限、局限性、适用边界)
✅ 能力上限
- UEFI 原生启动必需分区,固件阶段直接读取引导,不依赖操作系统内核驱动
- 支持多系统引导共存,不同 OS 可独立使用各自 ESP
- 独立隔离引导文件,系统分区损坏不影响 ESP 本身,方便离线修复
- 标准化 FAT32,跨厂商固件通用兼容性极强
❌ 核心局限
- 只能存放引导相关文件,不能用于存储系统 / 业务数据,容量很小
- 文件系统强制 FAT32,不支持 NTFS 权限、压缩、加密、ADS 等 NTFS 特性
- 纯 Legacy BIOS 模式下 ESP 不会被固件调用,创建了也无效
- ESP 损坏后系统直接无法启动(报 0xc000000e 等引导错误)
- 主板 NVRAM 故障时,即使 ESP 完好,固件也找不到引导入口
- BitLocker 加密环境,ESP 不能加密,无法保护引导文件安全
📌 适用边界
✅ GPT+UEFI 架构 Windows/Linux 操作系统引导、多系统 EFI 启动、离线引导修复 ❌ Legacy BIOS+MBR 原生启动、存放业务数据、BitLocker 加密存储、大容量文件存放
补充速记
ESP = UEFI 固件能直接读的 FAT32 引导分区;MSR = Windows 预留裸分区;二者是 GPT 磁盘 Windows 标配搭档。

📅 ESP与UEFI启动技术演进里程碑
| 时间节点 | 阶段/事件 | 关键技术与变革 | 对ESP的影响 |
|---|---|---|---|
| 1998年 | UEFI诞生前夜 | Intel发布EFI 1.0规范(用于Itanium架构) | 概念萌芽:提出了将驱动程序和引导加载程序从操作系统中分离出来的概念,这是ESP存在的理论基础。 |
| 2002年 | EFI 1.10发布 | 引入FAT文件系统支持 | ESP的“出生”:明确规定使用FAT文件系统作为固件与OS之间的交换介质,奠定了ESP必须格式化为FAT32的基石。 |
| 2005年 | UEFI 2.0发布 | 统一可扩展固件接口取代EFI | 标准化:UEFI论坛成立,ESP成为标准配置。微软宣布支持UEFI,Windows Vista(及后续Win 7/8/10)开始依赖ESP进行引导。 |
| 2000年代中期 | GPT分区表普及 | GUID分区表取代MBR | 物理载体确立:在GPT磁盘上,ESP拥有专属的GUID(C12A7328...)。ESP成为UEFI+GPT组合下的“启动必需品”,不再像MBR那样依赖活动分区。 |
| 2010年代 | 安全启动兴起 | Secure Boot机制引入 | 安全性升级:ESP不仅是引导文件的仓库,还成为了信任链的起点。固件会校验ESP中引导加载程序的数字签名,防止恶意软件篡改启动流程。 |
| 2016年至今 | 多系统共存 | Linux与Windows共存 | 枢纽作用:ESP成为多系统环境下的共享资源。GRUB(Linux)和Windows Boot Manager通常共存于同一个ESP中,由用户选择启动项。 |
🚀 深度解析:ESP发展的三个关键阶段
1. 诞生期:打破BIOS的枷锁(1998-2005)
- 里程碑:Intel为了解决64位处理器的引导问题,提出了EFI架构。
- ESP的角色:它被设计为一个独立的、FAT格式的物理分区。因为FAT是当时最通用的文件系统,无论是UEFI固件还是DOS、Windows、Linux都能读写。这使得ESP成为了固件(硬件层)和操作系统(软件层)之间的“公共语言区”。
2. 成长期:Windows的强制推行(2005-2015)
- 里程碑:微软强制要求预装Windows 8的电脑必须支持UEFI和安全启动。
- ESP的角色:此时ESP的大小通常被固定为100MB(Win7)或260MB+(Win8/10/11)。它存储了
bootmgfw.efi(Windows启动管理器),成为了系统启动的“唯一钥匙”。如果这个分区丢失,系统将无法启动。
3. 成熟与未来:安全与多协议(2016至今)
- 里程碑:Linux发行版(如Ubuntu, Fedora)全面适配UEFI启动;TPM(可信平台模块)与ESP结合。
- ESP的角色:
- 多系统枢纽:现在的ESP通常包含多个文件夹(如
\EFI\Microsoft,\EFI\ubuntu),它是多操作系统共存的物理基础。 - 安全锚点:结合TPM芯片,系统可以测量ESP中引导文件的哈希值(PCR寄存器),确保启动路径未被篡改。这使得ESP从一个简单的“文件存储区”变成了计算机安全的“信任根”。
- 多系统枢纽:现在的ESP通常包含多个文件夹(如
👶 诞生:系统的“产房”
- 安装程序启动:当你使用 Windows 或 Linux 安装介质(如U盘)启动电脑时,安装程序首先会接管控制权。
- 磁盘分区:安装程序会按照 GPT(GUID 分区表)标准对硬盘进行分区。作为这个标准的一部分,它会在磁盘的起始位置创建一个新的分区。
- 格式化与标记:这个新分区会被强制格式化为 FAT32 文件系统。这是为了确保主板上的 UEFI 固件能够无条件地识别和读取它。同时,它会被赋予一个特殊的分区类型标识符(在 GPT 磁盘上是
C12A7328-F81F-11D2-BA4B-00A0C93EC93B),正式“宣告”自己为 EFI 系统分区。 - 注入“灵魂”:操作系统安装程序会将启动所必需的核心文件复制到 ESP 中。对于 Windows,这主要是
\EFI\Microsoft\Boot\bootmgfw.efi(Windows 启动管理器);对于 Linux,则可能是grubx64.efi(GRUB 引导程序)等。
🛡️ 服役:忠诚的“守门人”
- UEFI 固件启动:当你按下电源键,电脑完成硬件自检(POST)后,UEFI 固件会立即开始工作。
- 寻找 ESP:UEFI 固件会扫描所有存储设备,寻找带有 EFI 系统分区标识的分区。
- 加载引导程序:找到 ESP 后,UEFI 固件会读取其中预先配置好的启动项,并加载对应的引导程序文件(如
bootmgfw.efi)到内存中执行。 - 交出控制权:引导程序被激活后,它会继续加载操作系统的内核,然后将电脑的控制权完全移交给操作系统。
⚠️ 危机:当“钥匙”丢失或损坏
- 启动失败:当 ESP 损坏或丢失后,UEFI 固件在开机时将无法找到任何有效的引导程序。
- 错误提示:电脑屏幕通常会变黑,并显示类似 “No bootable device found”(未找到启动设备)或 “Operating System not found”(未找到操作系统)的错误信息。
- 系统瘫痪:由于启动链条在最开始就断裂了,你将完全无法进入操作系统,电脑陷入瘫痪状态。
🛠️ 转机:危机后的“重生”
- 借助外部介质:你需要一个 Windows 安装U盘或 PE(预安装环境)启动盘来启动电脑。
- 重建分区与文件:通过命令行工具(如
diskpart和bcdboot),可以重新创建 ESP 分区,并将其格式化。 - 恢复引导文件:使用
bcdboot等命令,可以从已安装的 Windows 系统中提取并重新生成所有必要的引导文件,并将它们复制回新建的 ESP 中。 - 恢复启动:完成上述步骤后,重启电脑,UEFI 固件便能再次找到 ESP 和其中的引导文件,系统恢复正常启动。
⚰️ 结局:硬盘的“退休”
- 硬盘报废:当硬盘因物理损坏而彻底无法使用时,ESP 也随之消失。
- 硬盘格式化:当用户决定彻底清空并重新分区整个硬盘时,ESP 会被删除。
📁 核心特性
- 文件系统:采用 FAT16 或 FAT32 格式,以确保不同操作系统(如 Windows、Linux)的引导加载程序都能识别和访问。
- 可见性:在 Windows 操作系统中,ESP 通常没有盘符,因此在文件资源管理器中是不可见的。
- 容量:最小建议容量为 100MB,实际大小会根据操作系统和主板固件的需求而有所不同。
⚙️ 主要作用
- 引导加载程序 (Bootloader):如 Windows Boot Manager (Windows的引导管理器) 或 GRUB (Linux的引导程序)。
- 驱动程序:系统启动初期所需的硬件驱动。
- EFI 应用程序:一些系统级的维护工具或应用。
⚠️ 重要提醒
- 切勿随意操作:不要无故删除、格式化或修改 ESP 分区内的文件。
- 潜在风险:如果 ESP 分区损坏或被误删,将直接导致系统无法启动。
ESP(EFI System Partition,EFI系统分区)是一种特殊的分区,用于存储启动时必要的系统文件和引导加载器,以支持系统的启动和运行。以下是关于ESP分区的主要特点和作用:
-
存储EFI引导加载器: ESP分区包含操作系统的引导加载器(如GRUB、Windows Boot Manager等),这些加载器帮助操作系统启动并初始化硬件设备以加载操作系统内核。
-
存储EFI应用程序: 除了引导加载器,ESP也可以存储其他EFI应用程序,如诊断工具、系统恢复工具等。
-
文件系统: ESP分区通常使用FAT文件系统(通常是FAT32),这是因为大多数EFI固件都能够识别和读取FAT文件系统,使得引导加载器和其他系统文件能够被EFI固件正确地访问。
-
位置和大小: ESP分区通常位于磁盘的开始部分,并且它的大小通常是100 MB或更大,具体取决于操作系统和安装时的需要。这确保了在分区调整或备份时,ESP分区总能够包含所需的所有文件。
-
多系统支持: 由于EFI固件能够理解ESP分区上的多个引导加载器,因此ESP分区可以支持在同一硬盘上安装多个操作系统,而无需引导顺序的复杂管理。
ESP分区在现代计算机中扮演着关键的角色,它不仅支持操作系统的引导和加载,还允许系统管理员在需要时对引导过程进行灵活的配置和管理。
GUID(GUID Partition Table,GPT)是一种用于在计算机硬盘上分区的标准。它是一种磁盘分区方案,旨在取代传统的主引导记录(MBR)分区方案。以下是关于GUID Partition Table的主要特点和作用:
-
容量支持: GPT支持更大的磁盘容量,最大可达到8 ZiB(1 ZiB = 270 bytes),远超过MBR的2 TiB(1 TiB = 240 bytes)限制。
-
磁盘分区和标识: GPT使用
全局唯一标识符(GUID)来标识每个分区,这些GUID是全球唯一的,几乎不会出现冲突。每个分区都有一个GUID作为其标识符。 -
备份和恢复: GPT存储分区表的多个副本,这有助于在磁盘损坏或数据损坏时更容易地进行恢复。
-
安全性: GPT通过CRC32校验和保护分区表的完整性,以便在读取时能够检测到数据损坏或未经授权的修改。
-
兼容性: GPT被现代操作系统广泛支持,包括Windows(64位版本)、Mac OS X(从Intel Mac OS X 10.6.5开始)、Linux以及其他支持EFI(Extensible Firmware Interface)的操作系统。
GPT相对于传统的MBR分区表更先进和灵活,特别是在处理大容量磁盘和提供更好的数据完整性方面有显著优势。
全局唯一标识符(GUID)是一种由软件系统或设备使用的标识符,其设计初衷是确保在全球范围内其值是唯一的。GUID是128位(16字节)的数字标识符,通常以32个十六进制数字(分为5段,如8-4-4-4-12)表示,例如:123e4567-e89b-12d3-a456-426614174000。
特点和用途包括:
-
全球唯一性: GUID的生成算法和约定使得几乎可以确保在所有情况下都不会发生重复。这使得GUID在分布式系统中被广泛使用,如数据库键、文件标识、软件组件标识等。
-
随机性: GUID通常包含伪随机生成的部分,以减少冲突的可能性。这意味着即使在不同的地点或时间生成GUID,它们也不太可能重复。
-
格式: GUID的标准格式为32个十六进制数字分组,通常带有连字符分隔。每个组的长度和位置都有特定的意义,其中包括标识GUID版本、变体和特定的标识号码。
-
应用领域: GUID被广泛用于各种软件和系统中,例如Windows系统中的注册表项、COM组件标识、Web开发中的唯一资源标识符(UUID)、分布式系统中的唯一标识等。
GUID作为一种独特标识符的标准,确保了在全球范围内的唯一性和可靠性,使其在分布式计算和大规模系统中非常有用。
GPT GUID(Globally Unique Identifier)指的是GUID Partition Table(GPT)中用于标识分区的唯一标识符。GPT是一种现代的磁盘分区表标准,取代了传统的MBR(Master Boot Record),能够支持更大的磁盘容量和更多的分区。
在GPT中,每个分区都有一个唯一的128位(16字节)GUID作为其标识符。这个GUID用于确保在磁盘上的所有分区中都是唯一的,避免了传统MBR中可能会出现的分区号限制和冲突问题。
以下是一些关于GPT GUID的要点:
-
格式和表示: GPT GUID是128位的数字标识符,通常以32个十六进制数字表示,如
123e4567-e89b-12d3-a456-426614174000。 -
分区标识: 每个GPT分区都有一个GUID作为其唯一标识符。这个GUID是分区在整个GPT分区表中的唯一标识,允许操作系统和软件准确地识别和管理每个分区。
-
唯一性: 与普通的GUID类似,GPT GUID也保证了其全球唯一性。这意味着即使在多个磁盘和多个系统中,不同的GPT分区也不会有相同的GUID。
-
应用: GPT GUID在操作系统启动时的EFI系统分区(ESP)标识、数据分区、备份分区等均有广泛的应用。它们使得系统能够准确地定位和访问存储在磁盘上的各个分区。
GPT GUID是GPT分区表中用于唯一标识分区的重要组成部分,为现代计算机系统中磁盘管理提供了更高的灵活性和可靠性。
ESP(EFI System Partition)分区是UEFI固件中的一个特殊分区,通常位于硬盘上的第一个分区,用于存储引导加载程序、UEFI应用程序和其他与系统启动相关的文件。ESP分区使用FAT32文件系统,并拥有特定的分区类型GUID(GUID Partition Table,GPT)。
ESP分区的主要作用是提供一个可被UEFI固件直接访问和读取的位置,以引导操作系统和管理系统启动过程。具体来说,ESP分区的作用包括:
存储引导加载程序:ESP分区是存放引导加载程序的主要位置,例如UEFI引导管理器(如GRUB),用于加载操作系统。
存储UEFI应用程序:ESP分区可以用于存储各种UEFI应用程序,如诊断工具、固件更新工具和硬件配置工具等。
存储启动配置文件:ESP分区中的启动配置文件(如bootloader配置文件)存储了系统启动时的相关设置和参数,用于指导引导加载程序的启动行为。
支持多操作系统启动:通过在ESP分区中存储多个引导加载程序和配置文件,可以实现多操作系统的启动选择,方便用户在多系统之间进行切换。
提供安全引导支持:ESP分区中的引导加载程序和配置文件可以通过数字签名进行验证,从而实现安全引导(Secure Boot),防止未经授权的代码加载和执行。
EFI系统分区(ESP,EFI System Partition)使用FAT32文件系统的底层原理主要涉及到EFI标准以及操作系统启动和引导过程的需求。以下是关于ESP分区使用FAT32文件系统的基本原理和背景:
-
EFI标准与ESP:
- EFI(Extensible Firmware Interface) 是用于计算机引导和系统配置的标准接口。它取代了传统的BIOS(Basic Input/Output System),支持更现代的硬件和软件需求。
- ESP 是EFI标准中的一个重要概念,它是一个特殊的分区,用于存储启动时必需的EFI程序和文件。这些文件包括引导加载器、驱动程序以及操作系统启动所需的其他文件。
-
FAT32文件系统的选择:
- 可移植性和兼容性: FAT32是一种通用的文件系统,被广泛支持和识别,特别是在操作系统和固件级别。这种广泛的兼容性使得在多个操作系统和不同的设备上都能够识别和访问ESP中的文件。
- 文件系统特性: FAT32支持文件和目录的基本结构、访问控制和文件属性,同时又相对简单,适合于启动和引导过程中需要快速访问和处理的文件。
-
底层实现细节:
- 文件存储和组织: ESP中的文件按照FAT32文件系统的规则进行存储和组织。文件和目录的索引、分配表等元数据通过FAT32文件系统的数据结构管理。
- 启动文件的位置和访问: EFI固件在启动时会从ESP分区中读取特定的启动文件,例如启动加载器(如GRUB、Windows Boot Manager等)和相关的驱动程序。这些文件的位置和路径通常在EFI固件的启动设置中预定义。
-
兼容性和更新:
- EFI规范的进化: 随着EFI标准的演变,对于ESP分区中文件系统的要求和支持也在不断发展。最新的EFI标准版本可能会支持更新的文件系统类型或特性,但FAT32因其稳定性和广泛的支持仍然是首选。
ESP分区使用FAT32文件系统的原理是基于EFI标准和操作系统引导的需求。FAT32的广泛兼容性和简单性使其成为存储EFI引导文件的理想选择,确保了多个操作系统和不同的硬件平台之间的良好兼容性和可靠性。
ESP(EFI System Partition)是一个在UEFI固件中的特定分区,与操作系统版本本身的功能更新没有直接关系。ESP分区的作用主要是提供UEFI固件和引导加载程序所需的文件和配置信息,而不涉及具体操作系统的功能。
然而,随着操作系统版本的更新,可能会涉及到对ESP分区的更改或更新,以适应新的引导需求或安全特性。这些更改可能来自于操作系统供应商、UEFI固件供应商或硬件制造商。
下面是一些可能与不同操作系统版本相关的ESP功能更新示例:
Windows操作系统:随着Windows操作系统版本的更新,Microsoft可能会对ESP分区进行调整,以适应新的引导要求和安全特性,如安全引导(Secure Boot)和UEFI兼容性。此外,Windows操作系统可能还会使用ESP分区存储引导加载程序文件、启动配置文件和新的UEFI应用程序。
macOS操作系统:苹果公司也可能会在macOS操作系统版本更新中进行ESP分区的调整。例如,引入新的引导加载程序和配置文件,以支持新的硬件或引导选项。此外,随着Apple Silicon芯片的推出,ESP分区也可能需要调整以支持新的引导流程。
Linux操作系统:Linux发行版通常也会利用ESP分区存储引导加载程序(如GRUB)和启动配置文件。因此,随着Linux内核和发行版的更新,可能会引入新的引导加载程序版本或配置文件格式来满足新的需求或修复安全漏洞。
EFI系统分区(ESP,EFI System Partition)是一种特殊的分区,用于存储操作系统引导时必需的文件和数据。它是EFI(Extensible Firmware Interface)标准的一部分,取代了传统的BIOS系统中的启动方式。
主要特点和作用:
-
存储引导加载器和相关文件: ESP包含了操作系统引导过程中所需的关键文件,如引导加载器(如GRUB、Windows Boot Manager)、操作系统内核、驱动程序以及启动配置文件等。
-
文件系统要求: ESP通常采用FAT32文件系统,这是因为FAT32具有良好的跨平台兼容性,能够被几乎所有操作系统和EFI固件直接读取和识别。
-
位置和大小: ESP通常位于硬盘上的一个特定位置,它不同于操作系统分区或数据分区,而是作为EFI固件能够识别和访问的特定分区。
-
多系统支持: 如果一台计算机上安装了多个操作系统(如Windows和Linux),每个操作系统可能都会在ESP中有自己的启动文件和配置,使得用户可以在启动时选择要启动的操作系统。
-
管理和维护: 在多系统环境下,ESP的管理可以通过EFI固件的设置工具或操作系统的启动管理器来进行。通常,安装操作系统时会自动创建或指定ESP分区。
在现代计算机系统中,EFI系统分区的存在使得操作系统的启动和管理变得更为灵活和高效,同时也促进了不同操作系统之间的兼容性和交互性。
EFI系统分区(ESP,EFI System Partition)的底层原理涉及到EFI标准和操作系统启动过程的需求。以下是ESP底层原理的主要方面:
-
EFI标准和固件接口:
- EFI标准(Extensible Firmware Interface) 是用于取代传统BIOS的固件接口标准。它定义了固件与操作系统之间的交互方式,包括启动过程中的文件系统支持和管理。
- EFI固件 是计算机启动时运行的低级软件,负责初始化硬件、加载引导程序以及管理存储在ESP中的文件。
-
ESP的文件系统:
- FAT32文件系统 是ESP的首选文件系统。FAT32被选择的原因包括其简单性、广泛的操作系统支持和EFI固件能力直接识别读取的特性。
- ESP中的文件系统通过FAT32的文件和目录结构进行管理和组织,这些文件包括启动加载器(如GRUB、Windows Boot Manager)、操作系统内核、驱动程序和引导配置文件等。
-
位置和访问:
- ESP通常位于硬盘的一个特定分区上,其位置由EFI固件预定义。在启动时,EFI固件会从ESP中加载并执行特定的引导加载器,以引导操作系统或提供启动选择菜单。
- 访问ESP的过程涉及到EFI固件的文件系统驱动程序,这些驱动程序能够识别FAT32格式并按照其规范读取和执行文件。
-
启动过程:
- 在计算机启动时,EFI固件首先初始化硬件,然后会自动寻找ESP分区,并查找特定的引导文件(如
EFI/BOOT/BOOTX64.EFI)。这些文件包含有关如何启动操作系统的信息。 - 根据文件中的指令,EFI固件加载操作系统的引导加载器或直接启动操作系统内核,从而完成整个启动过程。
- 在计算机启动时,EFI固件首先初始化硬件,然后会自动寻找ESP分区,并查找特定的引导文件(如
-
管理和维护:
- ESP的管理通常由操作系统安装程序负责,它会在安装过程中自动创建和配置ESP分区,并将必要的文件复制到其中。
- 在多操作系统环境中,可以通过操作系统自带的引导管理器(如Windows的BCD编辑器或GRUB的配置文件)来管理ESP中的引导选项和文件。
EFI系统分区的底层原理基于EFI标准的规范和文件系统的选择,确保了计算机能够在启动时有效地识别和执行必要的引导文件,从而实现操作系统的正确启动和管理。
EFI系统分区(ESP,EFI System Partition)的架构主要涉及其在计算机系统中的位置、文件组织结构以及与EFI固件的交互方式。以下是ESP架构的主要方面:
-
位置和分区:
- ESP通常位于硬盘驱动器上的一个特定分区。其位置和大小由计算机制造商或操作系统安装程序预定义。
- 在大多数情况下,ESP位于硬盘的起始部分,这使得EFI固件能够在计算机启动时迅速找到并加载所需的引导文件。
-
文件系统和文件结构:
- ESP使用FAT32文件系统,这是为了确保EFI固件和多个操作系统之间的兼容性和可读性。
- ESP的根目录通常包含一个或多个目录,其中最常见的是
EFI目录。这个目录下包含了各种供启动使用的文件和文件夹,每个操作系统或引导加载器通常有一个特定的子目录。
-
EFI目录结构:
EFI目录是ESP中的一个重要部分,它通常包含若干子目录,每个子目录对应一个具体的引导加载器或操作系统。- 典型的目录结构如下:
EFI/BOOT/: 包含默认的引导加载器文件,用于启动过程中的自动引导。EFI/{OS_VENDOR}/: 包含特定操作系统(如Windows、Linux发行版等)的引导文件和配置。
-
引导加载器和配置文件:
- ESP中的每个子目录通常包含一个引导加载器(例如
.efi文件),这些文件由操作系统或引导管理器提供。 - 引导加载器的作用是在计算机启动时加载操作系统内核或提供启动选项菜单。
- 配置文件(例如GRUB的
grub.cfg)通常也存储在ESP中,用于定义引导加载器的行为和启动选项。
- ESP中的每个子目录通常包含一个引导加载器(例如
-
管理和维护:
- ESP的管理涉及到操作系统安装程序和EFI固件的配合工作。安装新操作系统时,安装程序会负责在ESP中创建和配置必要的文件和目录。
- 在运行时,可以通过EFI固件的设置界面或操作系统提供的引导管理器来修改和配置引导选项,以适应多操作系统或不同启动需求。
通过这些架构设计,EFI系统分区确保了计算机能够在启动时高效地找到并加载所需的引导文件,从而实现操作系统的正常启动和管理。
EFI (ESP) 分区 & Windows 恢复分区 (WinRE) 全套查看 / 管理命令
一、快速查看类命令(识别 EFI / 恢复分区)
1. diskpart 完整分区识别(最常用)
diskpart
list disk # 列出所有磁盘,GPT列打*代表UEFI磁盘
select disk 0 # 选择系统盘(一般disk0)
list partition # 列出全部分区,识别特征:
# EFI分区:100~500MB,类型System,GUID=EF00
# 恢复分区:450MB+/1GB+,类型Recovery,GUID=de94bba4-06d1-4d40-a16a-bfd50179d6ac
select partition X # X为分区编号
detail partition # 查看分区完整GUID、文件系统、隐藏属性
2. PowerShell 一键筛选 EFI / 恢复分区

# 1. EFI ESP 系统引导分区 Type=System
Get-Partition | Where-Object {$_.Type -eq "System"}
# 2. MSR 微软保留分区 Type=Reserved
Get-Partition | Where-Object {$_.Type -eq "Reserved"}
# 3. 普通数据/系统主分区 Type=Basic
Get-Partition | Where-Object {$_.Type -eq "Basic"}
# 4. WinRE 系统恢复分区 Type=Recovery
Get-Partition | Where-Object {$_.Type -eq "Recovery"}
# ESP分区详情
Get-Partition | Where-Object Type -eq System | Select-Object `
DiskNumber,PartitionNumber,
@{Name="SizeGB";Expression={[math]::Round($_.Size/1GB,2)}},
Offset,Guid,Type | Format-List
# MSR保留分区详情
Get-Partition | Where-Object Type -eq Reserved | Select-Object `
DiskNumber,PartitionNumber,
@{Name="SizeMB";Expression={[math]::Round($_.Size/1MB)}},
Offset,Guid,Type | Format-List
# Basic主分区详情
Get-Partition | Where-Object Type -eq Basic | Select-Object `
DiskNumber,PartitionNumber,
@{Name="SizeGB";Expression={[math]::Round($_.Size/1GB,2)}},
Offset,Guid,Type | Format-List
# Recovery恢复分区详情(多个会全部列出)
Get-Partition | Where-Object Type -eq Recovery | Select-Object `
DiskNumber,PartitionNumber,
@{Name="SizeMB";Expression={[math]::Round($_.Size/1MB)}},
Offset,Guid,Type | Format-List
各分区作用简要说明
- System(ESP/EFI):存放 Windows 启动文件,GPT 磁盘必备,无盘符隐藏
- Reserved(MSR):微软保留分区,用于磁盘转换、BitLocker 预留,极小(16MB)
- Basic:日常 C 盘、D 盘等存储系统与文件的主分区
- Recovery:WinRE 恢复分区,存放修复、重置系统镜像,多系统升级后会出现多个
PowerShell 分区信息完整解读
一、磁盘 0 全分区汇总(三星 128G SSD,GPT UEFI 布局)
| 分区序号 | 类型 (Type) | 大小 | 作用说明 |
|---|---|---|---|
| Partition 1 | System(ESP/EFI) | 200MB | EFI 引导分区,存放 BCD、UEFI 启动文件,FAT32 格式 |
| Partition 2 | Reserved(MSR) | 16MB | GPT 磁盘微软保留分区,磁盘底层元数据预留 |
| Partition 3 | Basic | 约 118.6GB | C 盘系统主分区,Windows 系统安装位置 |
| Partition 4 | Recovery(WinRE) | 891MB | Windows 恢复分区,内置 winre.wim,用于重置、修复系统 |
关键数值换算
- EFI 分区:
209715200 Byte = 200MB - MSR 分区:
16777216 Byte = 16MB - 恢复分区:
934281216 Byte ≈ 891MB
二、截图内 3 条 PowerShell 命令解析
1. 全分区导出命令
Get-Partition | Select DiskNumber,PartitionNumber,Size,Type,Guid | Format-List
- 功能:列出当前所有磁盘的分区编号、字节大小、分区类型、GPT 分区唯一 GUID;
- 输出关键字段:
Type=System= EFI (ESP) 引导分区Type=Reserved= MSR 保留分区Type=Basic= 普通数据 / 系统盘Type=Recovery= WinRE 恢复分区
2. 单独筛选 EFI 分区
Get-Partition | Where-Object {$_.Type -eq "System"}
3. 单独筛选恢复分区
Get-Partition | Where-Object {$_.Type -eq "Recovery"}
三、配套实操命令(基于当前分区结构)
1. 给 EFI 分区分配盘符(修复引导用)
# 选中磁盘0,分区1(EFI)
Set-Partition -DiskNumber 0 -PartitionNumber 1 -NewDriveLetter S
Remove-PartitionAccessPath -DiskNumber 0 -PartitionNumber 1 -AccessPath S:
2. 查看恢复分区 WinRE 状态
reagentc /info
WinRE位置指向分区 4,状态为已启用。3. 挂载恢复分区查看镜像文件
Set-Partition -DiskNumber 0 -PartitionNumber 4 -NewDriveLetter R
# 浏览恢复镜像
dir R:\Recovery\WindowsRE
# 用完隐藏
Remove-PartitionAccessPath -DiskNumber 0 -PartitionNumber 4 -AccessPath R:
4. 一键导出分区清单备份
Get-Partition | Format-List > C:\disk_part_backup.txt
四、分区状态说明与注意事项
- 布局标准合规:标准 Windows GPT 四分区结构(EFI+MSR + 系统盘 + 恢复分区),分区大小符合微软官方规范;
- 无盘符为正常现象:EFI、恢复分区默认不分配盘符,防止误删修改引导 / 恢复文件;
- 恢复分区容量充足:891MB 满足系统镜像存放、更新扩容需求,无需扩容;
- 高危操作提醒:
- 禁止删除 Partition1(EFI),删除后直接无法开机;
- 删除 Partition4(恢复分区)会丢失重置、自动修复功能;
- 修改分区 GUID / 属性需管理员权限,推荐在 PE 环境操作。
# 列出所有分区,标注类型、大小、GUID
Get-Partition | Select DiskNumber,PartitionNumber,Size,Type,Guid | Format-List
# 1. EFI ESP 系统引导分区 Type=System
Get-Partition | Where-Object {$_.Type -eq "System"}
# 2. MSR 微软保留分区 Type=Reserved
Get-Partition | Where-Object {$_.Type -eq "Reserved"}
# 3. 普通数据/系统主分区 Type=Basic
Get-Partition | Where-Object {$_.Type -eq "Basic"}
# 4. WinRE 系统恢复分区 Type=Recovery
Get-Partition | Where-Object {$_.Type -eq "Recovery"}
3. wmic 命令行快速查看卷
wmic volume get DriveLetter,FileSystem,Label,Capacity,HealthStatus
# EFI分区无盘符、文件系统FAT32;恢复分区无盘符、NTFS
4. 图形界面快速查看
diskmgmt.msc
# 图形化磁盘管理器,直观看到隐藏EFI、恢复分区
二、diskpart 底层分区管理命令(挂载 / 创建 / 删除 / 改类型)
1. EFI 分区专用操作
① 给无盘符 EFI 分配盘符(用于修复引导)
diskpart
select disk 0
list partition
select partition 1 # 选中EFI分区
assign letter=S # 分配S盘,方便访问\EFI目录
remove letter=S # 修复完成后移除盘符(隐藏分区)
② 重建损坏 EFI 分区(仅 PE / 恢复环境执行)
diskpart
select disk 0
# 删除旧损坏EFI
select partition X
delete partition override
# 新建260MB标准EFI分区
create partition efi size=260
format quick fs=fat32 label="ESP"
assign letter=S
exit
# 重建引导文件:bcdboot C:\Windows /s S: /f UEFI
③ 修复分区类型标识(EFI 被误标恢复分区)
select partition X
set id=EF00 override # 强制设为EFI系统分区GUID
2. 恢复分区 (WinRE) 底层操作
① 恢复分区设置隐藏保护属性(默认隐藏)
diskpart
select disk 0
select partition Y # 选中恢复分区
set id=de94bba4-06d1-4d40-a16a-bfd50179d6ac override
gpt attributes=0x8000000000000001 # 设置隐藏+只读保护,资源管理器不可见
② 删除多余恢复分区(谨慎!)
select partition Y
delete partition override
diskpart 通用关键参数说明
override:强制删除受保护分区(EFI / 恢复分区默认禁止删除,必须加此参数)gpt attributes:控制分区隐藏、只读属性create partition efi size=xxx:仅 GPT 磁盘可用,自动分配 EF00 类型
三、EFI 引导修复命令(bcdboot /bootrec/bcdedit)
1. bcdboot(复制 EFI 引导文件,核心修复命令)
# 标准修复,C:系统盘,S:已挂载的EFI盘符
bcdboot C:\Windows /s S: /f UEFI /l zh-CN
参数说明:
/s S: 指定ESP(EFI)分区盘符
/f UEFI 仅生成UEFI引导文件
/l zh-CN 设置中文启动菜单
2. bootrec 引导记录修复(UEFI+BIOS 通用)
bootrec /fixmbr # 修复磁盘主引导记录
bootrec /fixboot # 写入EFI分区引导扇区(ESP必须先挂载盘符)
bootrec /scanos # 扫描磁盘中所有Windows系统
bootrec /rebuildbcd # 重建BCD启动配置数据库,丢失启动项必用
3. bcdedit(管理 EFI 内 BCD 启动菜单)
bcdedit /enum all # 列出全部启动项(含恢复环境)
bcdedit /timeout 5 # 设置开机菜单等待5秒
bcdedit /create /d "Windows恢复环境" /application osloader # 新建恢复启动项
bcdedit /export S:\bcd_backup # 备份EFI内BCD文件
四、恢复分区 (WinRE) 专用管理命令 reagentc
1. 查看当前恢复环境状态
reagentc /info
# 输出包含:WinRE分区位置、winre.wim路径、启用状态
2. 基础开关
reagentc /disable # 临时禁用恢复环境(更新扩容恢复分区前执行)
reagentc /enable # 重新启用WinRE
3. 迁移 WinRE 镜像到恢复分区
# R: 为已分配盘符的恢复分区
reagentc /setreimage /path R:\Recovery\WindowsRE /target C:\Windows
# 注册后执行reagentc /enable生效
4. 导出 / 备份恢复镜像
xcopy R:\Recovery\WindowsRE\winre.wim D:\backup\winre.wim /h /r
五、配套校验 / 修复命令
- 校验 EFI 分区文件完整性
sfc /scannow
dism /online /cleanup-image /restorehealth
- 校验分区文件系统错误
chkdsk S: /f /x # S:为挂载后的EFI盘符,强制卸载修复FAT32错误
chkdsk R: /f /x # R:恢复分区盘符,修复NTFS镜像分区
分区 GUID 速查表(区分 EFI / 恢复)
| 分区类型 | GPT 分区 GUID 标识 | 特征 |
|---|---|---|
| EFI 系统分区 (ESP) | EF00 |
FAT32,100~500MB,系统启动必需 |
| Windows 恢复分区 (WinRE) | de94bba4-06d1-4d40-a16a-bfd50179d6ac |
NTFS,450MB~2GB,存放 winre.wim |
| MSR 保留分区 | E3C9E316-0B5C-4DB8-817D-F92DF00215AE |
16MB,GPT 磁盘底层预留 |
⚠️ 高危操作提醒
delete partition override会直接清空分区数据,误删 EFI 会直接无法开机;- 所有重建 EFI、删除恢复分区操作,建议在Windows 安装 U 盘 / PE中执行,避免系统锁定;
- EFI 分区必须格式化为 FAT32,恢复分区固定 NTFS,格式不可互换。

浙公网安备 33010602011771号