PowerShell 脚本 来自动化磁盘分区配置、格式化以及 Windows 11 安装过程。特别是涉及到 EFI 分区 (ESP)、MSR 分区 (Microsoft Reserved Partition) 和 REFS 文件系统 分区的配置要求及安装步骤
EFI 系统分区 ESP(EFI System Partition)完整底层拆解
ESP :EFI System Partition 文件系统:FAT32 (FAT‑12/FAT‑16 不用于 ESP);GPT 磁盘下专用分区;分区类型 GUID:
C12A7328‑F81F‑11D2‑BA4B‑00A0C93EC93BWindows 下:默认大小 100MB(Win10/Win11);Linux 一般 200‑512MiB; 路径:Windows 下默认不分配盘符,内核设备路径\Device\HarddiskX\PartitionY;可通过 diskpart 分配盘符访问。
整体链路总览: 主板UEFI固件上电 → 读取GPT分区表 → 定位ESP分区(GUID匹配) → UEFI内置FAT驱动挂载ESP(FAT32) → 读取\EFI\BOOT\bootx64.efi默认引导程序;Windows:bootmgfw.efi → bootmgr.efi → BCD(BCD存储在ESP:\EFI\Microsoft\Boot\BCD) → 加载winload.efi → 切换到NTOS内核;ESP只存放引导组件,**不存放Windows系统C盘本体**;ESP损坏机器直接无法引导,数据盘不受影响。
一、基础信息
1. ESP 分区关键元信息
| 项目 | 值 | 说明 |
|---|---|---|
| GPT 分区 GUID | C12A7328‑F81F‑11D2‑BA4B‑00A0C93EC93B |
固件识别 ESP 的唯一标识,不是靠卷名、不是靠盘符 |
| 必须文件系统 | FAT32 | UEFI 固件内置 FAT 驱动,不支持 NTFS/ReFS;固件阶段只能读 FAT;这是 ESP 强制 FAT32 根本原因 |
| 最小官方大小 | 100MiB;Windows 推荐≥100MB;Linux 建议≥512MiB | 小于 100MB 部分固件会报错;多系统共存建议 512MB |
| 分区属性 GPT | bit 60: NO_IO_TIME;不设置 readonly;必须标记为 EFI 系统分区 |
不能设置为 MSR、基本数据分区类型 |
注意:ESP 只是引导分区,操作系统内核、系统注册表、用户文件全部在 C 盘(NTFS);ESP 只放 EFI 可执行 efi、BCD、字体、引导驱动。
2. ESP 标准目录结构(Windows)
ESP:\
├─ EFI\
│ ├─ BOOT\ # 固件默认fallback引导
│ │ └─ bootx64.efi # x64 UEFI默认启动文件
│ └─ Microsoft\
│ └─ Boot\
│ ├─ bootmgfw.efi # Windows主EFI引导程序
│ ├─ bootmgr.efi
│ ├─ BCD # Windows引导配置数据库(二进制注册表格式,不是文本)
│ ├─ BCD.LOG*
│ ├─ en‑US\*.mui # 本地化语言资源
│ └─ *.efi (引导环境驱动)
└─ [可选其它Linux厂商EFI目录]
bootx64.efi:Fallback 启动项。当 NVRAM 引导变量全部损坏丢失,固件自动读取 ESP:\EFI\BOOT\bootx64.efi 启动。BCD:二进制引导数据库,替代旧 BIOS boot.ini;bcdedit.exe 读写 BCD,BCD 存放在 ESP 分区。
3. 用户态配套工具
diskpart.exe:识别 ESP 分区、分配盘符、设置分区类型 GUIDbcdedit.exe:读写 ESP 内 BCD 引导数据库;bcdedit 不需要盘符,直接通过磁盘分区定位 BCDbcdboot.exe:关键工具:复制全套 EFI 引导文件到 ESP、重建 BCD;ESP 损坏修复核心命令。- mountvol.exe:挂载 ESP 卷 GUID 路径,不需要分配盘符。
注意:资源管理器默认隐藏 ESP,没有盘符;必须 diskpart 手动 assign letter 挂载才能浏览。
二、完整分层执行链路(开机引导流程)
流程 1:UEFI 固件上电,识别 ESP 分区
- 主板 UEFI 固件初始化硬件;读取磁盘 GPT 分区表。
- 遍历 GPT 分区,匹配分区类型 GUID=
C12A7328‑F81F‑11D2‑BA4B‑00A0C93EC93B,定位 ESP 分区。 - UEFI 固件内置 FAT32 驱动,固件层面挂载 ESP 分区;此时还没有 Windows 任何驱动运行。
- 读取主板 NVRAM UEFI 引导变量:里面记录优先启动路径:
\EFI\Microsoft\Boot\bootmgfw.efi。 - 固件加载并执行
bootmgfw.efi(Windows EFI 引导程序)。
NVRAM 引导变量损坏:固件找不到引导项,自动回退读取
\EFI\BOOT\bootx64.efifallback。
流程 2:bootmgfw.efi 执行阶段(运行在 UEFI 固件环境,还没有 Windows 内核)
- bootmgfw.efi 读取 ESP 分区内的 BCD 数据库。
- BCD 记录:Windows 系统分区(C 盘 NTFS)的 GPT 分区位置。
- bootmgfw.efi 加载EFI 版 NTFS 驱动(存放在 ESP),此时固件本身不能读 NTFS,靠 efi‑ntfs 驱动读取 C 盘。
- 从 C:\Windows\System32 加载
winload.efi。 - winload.efi 做内核初始化:加载 ntoskrnl.exe、各类启动驱动;切换到保护模式,移交控制权给 Windows 内核。
- Windows 内核启动后:disk.sys、partmgr.sys 识别 ESP 分区;mountmgr 默认不给 ESP 分配盘符。
关键点:ESP 的 FAT32 访问分为两个完全不同阶段 ① 固件阶段:主板 UEFI 内置 FAT 驱动读写 ESP,无 Windows 参与; ② Windows 系统运行阶段:Windows fastfat.sys 驱动挂载 ESP (FAT32)。
三、依赖文件、配套链、上下游关系图谱
| 组件 | 文件 | 角色说明 |
|---|---|---|
| UEFI 固件 | 主板 SPI Flash | 识别 GPT、匹配 ESP‑GUID,内置 FAT 驱动,NVRAM 存放启动变量 |
| ESP 文件系统驱动 (固件内部) | 固件内置 FAT 实现 | 固件阶段读取 ESP,不是 Windows fastfat.sys |
| fastfat.sys | C:\Windows\System32\drivers\fastfat.sys |
Windows 运行之后,挂载 ESP 分区使用的 FAT32 内核驱动 |
| bootmgfw.efi | ESP:\EFI\Microsoft\Boot\bootmgfw.efi | Windows 主 EFI 引导程序,UEFI 应用 |
| BCD 数据库 | ESP:\EFI\Microsoft\Boot\BCD | 二进制引导配置库,bcdedit 操作对象 |
| bcdboot.exe | Windows 工具 | 复制 efi 引导文件到 ESP,重建 BCD;ESP 修复核心工具 |
| bcdedit.exe | Windows 工具 | 读写 BCD 引导配置 |
| diskpart.exe | 磁盘分区工具 | 设置 ESP 分区 GUID、分配盘符 |
| winload.efi | C:\Windows\System32\winload.efi | 内核加载器,从 C 盘读取 |
周边关键关系
- ESP 与 MSR 分区关系 GPT 磁盘 Windows 标准:ESP (100MB) + MSR (16MB),MSR 是微软保留分区,没有文件系统,不存放任何文件;MSR 不能充当 ESP。
- ESP 和 NVRAM 引导变量 NVRAM 存主板 Flash,不在磁盘;NVRAM 记录优先 EFI 启动路径;磁盘 ESP 存放实际 efi 程序。
现象:把磁盘迁移到另一台主板,NVRAM 没有引导项,但 ESP 文件完好,需要主板添加引导项,或者依靠 fallback bootx64.efi。
- ESP 与安全启动 Secure Boot Secure Boot 校验 ESP 里面
.efi签名;未签名 efi 固件拒绝加载;ESP 分区本身不做加密。 - 多系统共存 ESP 一台机器 GPT 磁盘只需要一个 ESP 分区,Windows、Linux 全部把自己 EFI 目录写入同一个 ESP;ESP 空间耗尽会导致无法安装新系统。
四、能力边界:能干 / 不能干
✅ ESP 可以:
- UEFI 固件识别,固件内置 FAT 驱动读取引导 efi 程序。
- 存放 Windows / Linux EFI 引导组件、BCD 数据库。
- fallback bootx64.efi 保证 NVRAM 全部损坏依然可以尝试引导。
❌ ESP 不能做:
- 不能存放 Windows 操作系统本体;ntoskrnl、注册表、用户文件都在 NTFS C 盘。
- 固件阶段只能 FAT32;固件原生不支持 NTFS、ReFS。
- ESP 不是系统备份;ESP 文件损坏直接无法开机,但 C 盘用户数据完全不受破坏。
- ESP 不能扩容收缩随便操作,调整大小会直接导致引导失效。
- BitLocker 加密不会加密 ESP 分区;ESP 始终明文存放引导文件。
五、典型故障现象对照表
| 现象 | 底层根因 | 处理方向 |
|---|---|---|
| 开机:找不到启动设备;直接进 BIOS 设置 | ESP 分区丢失;GPT 分区表损坏;ESP 分区 GUID 被篡改;ESP 文件全部删除 | diskpart 修复分区类型 GUID;bcdboot 重建 ESP 引导文件 |
开机出现蓝屏 0xc000000f BCD 丢失损坏 |
ESP 里面 BCD 文件损坏 / 删除 | PE 环境:bcdboot C:\Windows /s S: (S 为 ESP 盘符)重建 BCD |
| 迁移硬盘到新主板,无法启动;旧主板正常 | 新主板 NVRAM 没有 EFI 引导变量;ESP 文件完好 | BIOS 手动添加 EFI 启动项;或者复制 bootmgfw.efi 到 bootx64.efi 触发 fallback |
| diskpart 可以看到 ESP,但资源管理器看不到 | mountmgr 默认不给 ESP 分配盘符 | diskpart assign letter=S: 挂载盘符访问 |
| 安装 Linux 后 Windows 引导消失 | Linux 重写 NVRAM 优先启动项;ESP 文件还在 | BIOS 调整启动顺序;PE 执行 bcdboot 恢复 Windows 引导项 |
常用修复命令(PE 环境)
diskpart
sel disk 0
list partition
sel partition 1 # 选中ESP分区
assign letter=S:
exit
bcdboot C:\Windows /s S: /f UEFI
六、关键误区总结
- ❌误区:ESP 就是 Windows 系统盘。 ✅事实:ESP 仅仅是引导分区;系统内核、用户数据全部在 NTFS C 盘;ESP 损坏不开机,但 C 盘数据完好无损。
- ❌误区:ESP 用 NTFS 格式化。 ✅事实:UEFI 固件只有 FAT 驱动;ESP 必须 FAT32;固件阶段读不到 NTFS。
- ❌误区:每一个操作系统需要独立 ESP 分区。 ✅事实:一块 GPT 磁盘只需要一个 ESP 分区,多系统共用同一个 ESP,各自建立 EFI 子目录。
- ❌误区:BCD 是 Windows 注册表的一部分。 ✅事实:BCD 是独立二进制数据库,物理存放在 ESP 分区,不在 C 盘注册表。
记忆链路: ESP 是 GPT 磁盘 EFI 系统分区,GUID
C12A7328‑F81F‑11D2‑BA4B‑00A0C93EC93B,强制 FAT32;主板 UEFI 固件内置 FAT 驱动读取 ESP,加载 bootmgfw.efi;BCD 引导数据库存储在 ESP;ESP 只存放引导组件,操作系统本体在 NTFS 系统卷;bcdboot 是 ESP 损坏重建核心工具;BitLocker 不加密 ESP 分区。
MSR(Microsoft Reserved Partition)微软保留分区完整底层拆解
MSR:Microsoft Reserved Partition,微软保留分区;GPT 磁盘 Windows 专属特殊分区 分区类型 GUID:
E3C9E316‑0B5C‑4DB8‑817D‑F92DF00215AEMicrosoft ... 无文件系统、不格式化、不分配盘符、资源管理器不可见;diskpart list partition 可以看到;Windows 安装程序自动创建;GPT 磁盘每块磁盘都要求存在 MSR 分区,不是只针对启动盘Microsoft ...。
整体链路总览: ` 磁盘 GPT 分区表记录 MSR 分区条目;MSR 原始是一块原始裸扇区,没有任何文件系统;Windows 磁盘管理组件 (dmio.sys、dmdskmgr.dll) 管理 MSR;当基本磁盘转动态磁盘,系统切割 MSR 一部分空间生成 LDM 动态磁盘元数据分区;MSR 剩余部分继续保留;MSR 作为预留缓冲,用于未来系统新增磁盘功能、BitLocker 底层元数据、Storage Spaces 操作;MSR 不存放用户文件;删除 MSR 当下可能正常运行,但动态磁盘转换、部分加密、系统升级会失败;磁盘标准顺序:ESP → OEM (可选) → MSR → 数据 / 系统分区Microsoft ...。
一、基础信息
1.MSR 核心元信息
| 项目 | 参数 | 说明 |
|---|---|---|
| GPT 分区 GUID | E3C9E316‑0B5C‑4DB8‑817D‑F92DF00215AEMicrosoft ... |
GPT 识别 MSR 的唯一标识 |
| 文件系统 | 无,原始 RAW 裸分区 | 绝对不能 format 格式化 MSR,格式化会破坏 MSR 设计意图 |
| 默认大小 | Win10/Win11 安装程序:16MB;旧规范:磁盘<16GB=32MB;≥16GB=128MBMicrosoft ... | 现代 Windows 统一 16MB |
| 盘符 | 永远不分配盘符 | mountmgr 不会给 MSR 分配驱动器号,用户无法直接读写 |
| 磁盘位置规范 | ESP(如有)→OEM 分区(可选)→MSR →主数据分区;MSR 必须在普通数据分区之前创建Microsoft ... | 放到数据分区之后属于不合规布局 |
重要区分:
- ESP:FAT32,存放 UEFI 引导 efi、BCD,机器没有 ESP 直接无法 UEFI 开机
- MSR:无文件系统裸预留空间,不存放引导程序;删掉 MSR 系统当下可以开机,但高级磁盘功能失效
2.MSR 生成时机
- Windows 安装程序,磁盘 clean 之后,自动创建 ESP、MSR;
- OEM 出厂预装机,厂商固件部署阶段必须建立 MSR;
- diskpart 手动:
create partition msr size=16手动创建 MSR 分区。
一旦磁盘已经划分完数据分区,没有空闲间隙,就无法再插入 MSR 分区,这就是为什么要求首次分区就建立 MSRMicrosoft ...。
3. 配套用户态 / 内核组件
| 组件 | 文件名 | 职责 |
|---|---|---|
| dmdskmgr.dll | 磁盘管理用户态库 | 磁盘管理 MMC 控制台底层逻辑,识别 MSR 分区类型,拒绝格式化、分配盘符操作 |
| dmio.sys | 内核磁盘管理器驱动 | GPT 分区解析,处理动态磁盘转换,切割 MSR 空间生成 LDM 元数据分区 |
| diskpart.exe | 磁盘分区工具 | 支持create partition msr创建 MSR;允许 override 强制删除 MSR(危险) |
| BitLocker(fvevol.sys) | BitLocker 加密驱动 | 部分底层元数据、坏块替换缓冲会使用 MSR 预留空间 |
| Storage Spaces 驱动栈 | spaceport.sys | 存储池高级磁盘操作依赖 MSR 预留空间 |
二、核心底层原理与工作流程
流程 1:MSR 初始状态(普通基本磁盘,没有动态磁盘)
- GPT 分区表标记一块连续扇区为 MSR 类型 GUID;
- 这块区域完全原始裸扇区,无任何文件系统、无 MFT、无 FAT;Windows 不会读写 MSR 内部扇区;
- MSR 只是一块 “预留占位缓冲区”,防止第三方磁盘工具错误占用该段扇区;
- 此时 MSR 完整保留 16MB,不被切割。
此时 MSR 几乎无 IO;磁盘管理工具识别 GUID,屏蔽格式化、分配盘符按钮。
流程 2:基本磁盘转换为动态磁盘(MSR 最核心使用场景)
- 用户执行转换动态磁盘操作;dmio.sys 内核驱动识别该磁盘存在 MSR 分区;
- 切割 MSR 分区尾部一部分空间,生成 LDM 元数据分区(分区 GUID 5808C8AA‑7E8F‑42E0‑85D2‑E1E90434CFB3),用于存放动态磁盘数据库(LDM 数据库,卷布局、镜像、条带卷元数据)Microsoft ...。
- MSR 被切割后体积缩小;剩余部分继续保留为 MSR 分区。
- 如果磁盘没有 MSR 分区:基本磁盘转动态磁盘直接失败,报错没有足够空间创建 LDM 数据库分区。
关键点:GPT 磁盘动态磁盘,不能像 MBR 那样使用磁盘末尾隐藏扇区,GPT 没有隐藏扇区概念,因此 MSR 承担这个预留角色Microsoft ...。
流程 3:BitLocker / Storage Spaces 使用 MSR 预留空间
- BitLocker:遇到介质坏块,MSR 预留扇区可作为替换缓冲;部分 TPM 绑定元数据会使用 MSR 内偏移;
- Storage Spaces 创建镜像 / 奇偶卷,底层磁盘要求磁盘具备 MSR 分区;缺少 MSR 会初始化失败;
- Windows 版本升级、新磁盘功能,微软可以后续把 MSR 切分出一小块生成新系统分区,不需要破坏现有用户分区布局。
流程 4:MSR 删除后的行为(重点)
强制删除 MSR 之后:系统可以正常启动,因为 MSR 不参与引导;但属于非标准 GPT 磁盘布局,属于 “隐性故障”,不是立刻蓝屏。
- 短期:普通读写、普通 NTFS 分区使用一切正常;
- 触发条件:转换动态磁盘、开启 BitLocker、部署 Storage Spaces、部分 Windows 大版本更新,会报错失败。
三、MSR 能干、不能干边界
✅ MSR 可以:
- GPT 磁盘预留一块裸扇区缓冲区;当需要新增系统元数据分区时,可以切割 MSR,不破坏用户数据分区;
- 支持基本磁盘转换动态磁盘,从中切出 LDM 动态磁盘数据库分区;
- 为 BitLocker、Storage Spaces 等高级磁盘功能提供底层预留空间;
- 防止第三方分区工具误占用磁盘靠前间隙,保护 GPT 分区布局。
❌ MSR不能做:
- 不能存放引导文件,不能替代 ESP 分区;引导全部由 ESP 完成;删掉 ESP 直接不开机;删掉 MSR 还能开机,但高级磁盘功能损坏。
- MSR 没有文件系统,不能存放任何用户文件,不能分配盘符读写。
- MSR 不是备份分区,不保存系统镜像。
- MSR 不是坏道替换分区,只是预留空间;磁盘硬件坏块依旧依靠磁盘本身固件。
- 不要格式化 MSR,格式化会覆盖分区类型属性,破坏 MSR 身份。
四、ESP 与 MSR 关键对比总表
| 项目 | ESP(EFI 系统分区) | MSR(微软保留分区) |
|---|---|---|
| GPT GUID | C12A7328‑F81F‑11D2‑BA4B‑00A0C93EC93B |
E3C9E316‑0B5C‑4DB8‑817D‑F92DF00215AE |
| 文件系统 | FAT32 | 无(RAW 裸分区) |
| 大小 | Win 默认 100MB | Win10/11 默认 16MB |
| 作用 | 存放 EFI 引导程序、BCD,负责 UEFI 开机引导 | 预留裸空间,用于动态磁盘、高级磁盘功能扩展 |
| 删除后果 | 机器直接无法 UEFI 启动 | 系统可正常启动;动态磁盘 / BitLocker/Storage Spaces 功能异常 |
| 是否必须盘符 | 默认无盘符,可手动 assign 挂载 | 禁止分配盘符 |
| 磁盘顺序 | 最前面 | ESP 之后,数据分区之前 |
五、典型故障现象对照表
| 现象 | 底层根因 | 处理方向 |
|---|---|---|
| 磁盘管理:无法将基本磁盘转换为动态磁盘 | 磁盘 GPT 但缺少 MSR 分区;没有预留空间生成 LDM 元数据分区 | 备份数据,磁盘重新分区,创建 MSR 分区 |
| BitLocker 启用报错 0x8031000C | GPT 磁盘缺少 MSR 分区 | 重建标准分区布局,补 MSR |
| Windows 大版本升级报错 0x80070057 | 磁盘 GPT 布局不合规,缺少 MSR 分区 | 备份数据,重建 GPT 分区结构 |
| diskpart list partition 看到 MSR,但磁盘管理显示 “未分配” | MSR 被错误格式化,分区 GUID 被改写 | diskpart 修改分区 type 恢复 MSR GUID,不要格式化 |
| 动态磁盘转换后 MSR 体积变小 | 转换时切割 MSR 分出 LDM 元数据分区,属于正常现象 | 无需处理 |
diskpart 查看 MSR 命令
select disk 0
list partition
diskpart 手动创建 MSR(仅全新磁盘 clean 后执行)
create partition msr size=16
六、关键误区总结
- ❌误区:MSR 是启动分区,删掉 MSR 电脑就开不了机。 ✅事实:MSR 不参与引导,ESP 才是引导分区;删除 MSR 机器可以正常开机,但是高级磁盘功能会失效,属于隐性故障。
- ❌误区:MSR 可以格式化,可以分配盘符使用。 ✅事实:MSR 是裸预留分区,没有文件系统;格式化会破坏 MSR 分区身份,失去预留功能。
- ❌误区:只有系统启动盘才需要 MSR。 ✅事实:微软规范:每一块 GPT 磁盘,不管是不是启动盘,都建议配置 MSR 分区,用于后续磁盘管理操作Microsoft ...。
- ❌误区:MSR 里面存放系统备份、恢复镜像。 ✅事实:MSR 无任何文件;恢复镜像存放单独恢复分区,不是 MSR。
记忆链路: MSR 是 GPT 磁盘上微软保留裸分区,GUID
E3C9E316‑0B5C‑4DB8‑817D‑F92DF00215AE,无文件系统;核心用途:基本磁盘转动态磁盘时切割出 LDM 元数据分区;为 BitLocker、Storage Spaces 预留空间;磁盘顺序 ESP→MSR→数据分区;删除 MSR 不会立刻无法开机,但高级磁盘功能异常;与 ESP 分工明确:ESP 管引导,MSR 管磁盘底层预留。
Windows 7、8、10、11 各个版本对于 EFI 分区 (ESP)、MSR 分区 (Microsoft Reserved Partition) 和 REFS 文件系统分区 在最大要求方面的详细。
| 操作系统版本 | EFI 分区 (ESP) 最大要求 | MSR 分区 (Microsoft Reserved Partition) 最大要求 | REFS 文件系统分区 |
|---|---|---|---|
| Windows 7 | 300MB(但一般不超过100MB) | 128MB(强制要求最大) | 不支持 REFS 文件系统 |
| Windows 8 | 300MB(但一般不超过100MB) | 128MB(强制要求最大) | 不支持 REFS 文件系统 |
| Windows 10 | 300MB(最大可达512MB) | 128MB(最大建议 1GB) | 可选 REFS 文件系统 |
| Windows 11 | 300MB(最大可达512MB) | 128MB(最大建议 1GB) | 默认支持 REFS 文件系统,最大可达数TB |
说明:
-
EFI 分区 (ESP) 最大要求:
- Windows 7 和 Windows 8:尽管通常推荐 100MB,但在某些特殊情况下(如双系统、支持更多启动文件等需求),可以将 EFI 分区 增加到 300MB 或 更大。实际上,大多数情况不会超过 300MB。
- Windows 10 和 Windows 11:在更复杂的启动环境或多重启动的情况下,可以将 EFI 分区 最大增大到 512MB。通常不会超出该范围,因为 EFI 分区 的主要用途是存储启动文件,而这些文件通常不会占用太大空间。
-
MSR 分区 (Microsoft Reserved Partition) 最大要求:
- Windows 7 和 Windows 8:MSR 分区的大小是 128MB。通常不会超过此大小,除非是某些特殊配置(例如通过手动调整分区时)。
- Windows 10 和 Windows 11:在一些特殊情况下,如磁盘需要预留更多空间用于磁盘管理或操作系统管理,MSR 分区可能会增加到 1GB。但默认情况下 128MB 已足够。
-
REFS 文件系统分区:
- Windows 7 和 Windows 8:不支持 REFS 文件系统,只能使用 NTFS 文件系统。
- Windows 10 和 Windows 11:REFS 文件系统支持较大规模的数据存储,理论上可以支持数TB或更多,特别适用于大型数据中心和存储方案。对于 Windows 11,推荐最大支持数量为数TB以上。
最大要求总结:
- EFI 分区:通常最大为 512MB(适用于复杂启动环境),但常见大小在 100MB 到 300MB 之间。
- MSR 分区:最大为 1GB,但默认通常为 128MB。
- REFS 文件系统:理论上可以支持非常大的分区,尤其在 Windows 11 中,用于数据存储时可支持数TB的大小。
这张帮助你更全面地理解 Windows 系统在不同版本下对于磁盘分区的最大要求。
PowerShell 批处理开发需求文档
本需求文档旨在定义通过 PowerShell 脚本 来自动化磁盘分区配置、格式化以及 Windows 11 安装过程。特别是涉及到 EFI 分区 (ESP)、MSR 分区 (Microsoft Reserved Partition) 和 REFS 文件系统 分区的配置要求及安装步骤。
1. 目标
开发一个 PowerShell 脚本,用于以下自动化任务:
- 配置并格式化 EFI 分区 (ESP)。
- 创建并配置 MSR 分区。
- 格式化并配置 REFS 文件系统 分区。
- 自动安装 Windows 11 系统到配置好的分区。
2. 分区配置要求
2.1 EFI 分区 (ESP) 最大配置要求
EFI 分区 (ESP) 用于 UEFI 启动的操作系统。必须为其分配足够的空间来存储启动加载程序。根据 Windows 11 的要求,EFI 分区的最大配置为:
- 大小:最大 512MB(推荐 300MB,但最大可以设置为 512MB)。
- 文件系统:FAT32。
- 用途:存储启动文件和操作系统的引导程序,支持 UEFI 启动。
PowerShell 命令示例:
# 创建 EFI 分区 512MB 并格式化为 FAT32
New-Partition -DiskNumber 0 -Size 512MB -AssignDriveLetter -GptType "EFI" | Format-Volume -FileSystem FAT32 -Quick -Confirm:$false
2.2 MSR 分区 (Microsoft Reserved Partition) 最大配置要求
MSR 分区 是用于未来扩展的保留分区,不包含数据或文件系统。它的最大配置为 1GB,用于存放系统保留的管理空间。
- 大小:最大 1GB(推荐 128MB,但最大为 1GB)。
- 用途:为未来的系统操作提供保留空间,不直接用于存储。
PowerShell 命令示例:
# 创建 MSR 分区 1GB
New-Partition -DiskNumber 0 -Size 1GB -AssignDriveLetter -GptType "MSR"
2.3 REFS(Resilient File System)分区格式化
REFS 文件系统 是一种高容错、高性能的文件系统,Windows 11 支持将 REFS 用于主操作系统分区或存储数据的分区。根据 Windows 11 的要求,REFS 分区适用于系统或大容量数据存储。
- 文件系统:REFS。
- 用途:主要用于 Windows 11 系统分区以及存储大数据量的分区。
- 大小:根据实际磁盘空间进行设置,通常较大。
PowerShell 命令示例:
# 创建主分区并格式化为 REFS 文件系统
New-Partition -DiskNumber 0 -Size 100GB -AssignDriveLetter | Format-Volume -FileSystem ReFS -Quick -Confirm:$false
3. PowerShell 脚本功能需求
-
磁盘管理:
- 自动选择磁盘并删除所有现有分区。
- 创建并格式化 EFI 分区 (ESP)、MSR 分区 和 REFS 分区。
- 自动为每个分区分配驱动器字母。
-
安装 Windows 11 系统:
- 使用指定的目标磁盘进行安装。
- 设置 EFI 分区 为启动分区。
- 启动 Windows 11 安装程序,自动选择合适的目标分区进行安装。
-
安装完成后:
- 在系统安装后,重启并启动至 EFI 分区,完成 Windows 11 的设置。
4. PowerShell 脚本实现
4.1 磁盘分区配置脚本
# 获取磁盘列表
$disk = Get-Disk | Where-Object IsBoot -eq $false | Select-Object -First 1
# 清空磁盘
Clear-Disk -Number $disk.Number -RemoveData -Confirm:$false
# 创建 EFI 分区 (512MB)
New-Partition -DiskNumber $disk.Number -Size 512MB -AssignDriveLetter -GptType "EFI" | Format-Volume -FileSystem FAT32 -Quick -Confirm:$false
# 创建 MSR 分区 (1GB)
New-Partition -DiskNumber $disk.Number -Size 1GB -AssignDriveLetter -GptType "MSR"
# 创建 REFS 主分区 (100GB)
New-Partition -DiskNumber $disk.Number -Size 100GB -AssignDriveLetter | Format-Volume -FileSystem ReFS -Quick -Confirm:$false
# 启动 Windows 安装
Start-Process -FilePath "X:\setup.exe" -ArgumentList "/auto upgrade"
4.2 详细命令解释
- Get-Disk:列出所有磁盘。
- Clear-Disk -Number $disk.Number -RemoveData:删除目标磁盘上的所有数据。
- New-Partition -DiskNumber $disk.Number -Size 512MB -GptType "EFI":创建 EFI 分区,大小为 512MB。
- Format-Volume -FileSystem FAT32:格式化为 FAT32 文件系统。
- New-Partition -DiskNumber $disk.Number -Size 1GB -GptType "MSR":创建 MSR 分区,大小为 1GB。
- New-Partition -DiskNumber $disk.Number -Size 100GB -GptType "Primary":创建 REFS 文件系统分区,大小为 100GB。
- Start-Process -FilePath "X:\setup.exe":启动 Windows 11 安装程序。
5. 安装 Windows 11
在分区和格式化完成后,启动 Windows 11 安装程序,进行系统安装。
Start-Process -FilePath "X:\setup.exe" -ArgumentList "/auto upgrade"
其中,X 是 USB 安装媒体的驱动器字母,脚本将自动启动 Windows 安装并选择 REFS 分区 作为安装目标。
6. 预期结果
- EFI 分区:
- 成功创建并格式化为 FAT32,最大为 512MB。
- MSR 分区:
- 成功创建 MSR 分区,最大为 1GB。
- REFS 分区:
- 成功创建并格式化为 REFS 文件系统,作为 Windows 11 系统分区。
- Windows 11 安装:
- 系统成功启动并完成安装,系统文件存放在 REFS 分区。
通过本 PowerShell 脚本,可以自动化配置磁盘分区并格式化为 EFI 分区、MSR 分区 和 REFS 文件系统 分区,最后完成 Windows 11 安装。此脚本实现了完全自动化的磁盘分区和系统安装过程,适用于大多数 UEFI 启动的设备。
一个 .cmd 批处理 脚本开发需求文档,用于在安装 Windows 11 系统时对 EFI 分区 (ESP)、MSR 分区 (Microsoft Reserved Partition) 和 REFS(Resilient File System)分区 进行格式化,并且为安装操作系统做好准备。
1. 背景与目标
目标是通过一个 .cmd 批处理脚本来自动化分区、格式化以及安装 Windows 11 操作系统。脚本会:
- 创建和格式化 EFI 分区 (ESP),MSR 分区,并支持 REFS 文件系统。
- 配置分区顺序,确保符合 Windows 11 安装要求。
- 最后引导到安装过程。
2. 需求概述
-
EFI 分区 (ESP):
- 容量:至少 300MB,最大可以增大至 512MB。
- 格式:FAT32 文件系统。
- 用途:存储启动文件,确保操作系统能从 UEFI 启动。
-
MSR 分区 (Microsoft Reserved Partition):
- 容量:128MB(最低要求),也可以为 1GB,但不宜过大。
- 用途:用于预留空间供 Windows 管理磁盘。
-
REFS(Resilient File System)分区:
- 格式:REFS 文件系统。
- 容量:此分区可以根据磁盘大小调整。
- 用途:为 Windows 11 系统提供高性能、数据冗余支持。
-
Windows 11 安装:
- 安装路径:操作系统安装到 REFS 格式化后的分区。
- 安装源:通过网络或USB安装媒体进行安装。
3. 脚本功能需求
-
磁盘管理:
- 检测目标磁盘并选择要操作的磁盘。
- 删除目标磁盘上现有的分区。
- 创建 EFI 分区 (ESP)、MSR 分区 和 REFS 分区。
- 格式化分区为所需文件系统。
- 设置 EFI 分区 (ESP) 为活动分区。
-
自动化安装配置:
- 启动 Windows 11 安装程序。
- 设置合适的引导项,以确保操作系统安装在 REFS 格式化分区。
4. 命令实现概述
步骤 1: 打开命令提示符
启动 cmd 作为管理员权限。
diskpart
步骤 2: 清除现有分区
首先选择目标磁盘(假设目标磁盘为 磁盘 0)。
select disk 0
clean
步骤 3: 创建 EFI 分区 (ESP)
创建 EFI 分区 (ESP),至少 300MB,格式为 FAT32。
create partition primary size=300
format fs=fat32 quick
assign letter=S
步骤 4: 创建 MSR 分区
创建 MSR 分区,大小为 128MB。
create partition msr size=128
步骤 5: 创建 REFS 分区
创建一个 REFS 分区并格式化为 REFS 文件系统。
create partition primary
format fs=refs quick
assign letter=R
步骤 6: 设置 EFI 分区为活动分区
设置 EFI 分区 (ESP) 为活动分区。
select partition 1
active
步骤 7: 使用 Windows 11 安装程序
如果通过 USB 安装程序启动 Windows 11,确保 Windows 11 安装程序已复制到 USB 启动盘,可以通过以下命令启动安装:
X:\setup.exe
X 代表 USB 启动盘的驱动器字母。
5. 详细需求说明
5.1 EFI 分区 (ESP)
- 需要一个大小为 300MB 的 EFI 分区,该分区需要格式化为 FAT32。
- 安装过程中,EFI 分区应自动挂载到 S: 驱动器。
5.2 MSR 分区
- MSR 分区需要 128MB,且默认大小为 128MB。
- 无需格式化,只需创建并保留空间。
5.3 REFS 分区
- REFS 分区可用于存储操作系统和用户数据,文件系统将格式化为 REFS。
- 分区大小根据需求,操作系统将安装到该分区。
5.4 Windows 11 安装
- 系统通过安装媒介启动,Windows 11 将安装到 REFS 分区。
- 安装过程中,操作系统应自动配置所需分区格式。
6. 脚本执行流程
-
磁盘选择与清理: 用户手动选择目标磁盘并清除原有分区。通过
diskpart执行清理操作,删除所有分区。 -
分区创建与格式化: 根据需求,脚本会依次创建 EFI、MSR 和 REFS 分区,并格式化为所需文件系统(FAT32、REFS)。
-
安装过程: 安装脚本将会启动 Windows 11 安装程序,并确保操作系统安装到 REFS 格式化的分区。
7. 预期结果
- EFI 分区 正确创建并格式化为 FAT32。
- MSR 分区 大小为 128MB,不会被格式化,但系统会成功创建。
- REFS 分区 正确创建并格式化为 REFS 文件系统,用于安装 Windows 11。
- Windows 11 成功安装在 REFS 格式的分区上。
8. 示例批处理文件
@echo off
echo Starting partitioning...
:: Start diskpart
diskpart /s partition_script.txt
:: Mount Windows 11 Setup
echo Starting Windows 11 Setup...
X:\setup.exe
partition_script.txt 内容:
select disk 0
clean
create partition primary size=300
format fs=fat32 quick
assign letter=S
create partition msr size=128
create partition primary
format fs=refs quick
assign letter=R
select partition 1
active
- 这个 .cmd 批处理脚本 旨在通过自动化磁盘分区操作,确保 EFI、MSR、REFS 分区的创建和格式化,顺利完成 Windows 11 系统的安装准备工作。
- 根据具体需求,脚本可以进一步定制,以应对不同的磁盘布局和系统配置。
.cmd批处理开发需求文档
该文档旨在定义通过 .cmd 批处理脚本 自动化配置磁盘分区、格式化以及 Windows 11 安装过程的需求。具体内容包括 EFI 分区 (ESP)、MSR 分区 和 REFS 文件系统 分区的最大配置要求,及其在安装 Windows 11 时的相关设置。
1. 目标
开发一个 .cmd 批处理 脚本,该脚本可在 Windows 11 安装前自动化配置以下内容:
- EFI 分区 (ESP) 配置及格式化
- MSR 分区 (Microsoft Reserved Partition) 配置
- REFS 文件系统 分区配置及格式化
- 系统安装到合适的分区
脚本将通过命令行工具(例如 diskpart)来操作磁盘,确保系统分区格式化正确,符合 Windows 11 安装要求。
2. 分区配置要求
2.1 EFI 分区 (ESP) 最大配置要求
EFI 分区 (ESP) 是 UEFI 启动所必需的,它需要在硬盘上分配足够的空间来存放启动加载程序。其最大配置要求为:
- 大小:最大 512MB(建议使用 300MB,但最大可以达到 512MB)。
- 文件系统:FAT32。
- 用途:存储启动加载程序和相关文件,用于启动操作系统。对于 UEFI 启动的系统,EFI 分区是必不可少的。
命令示例:
create partition efi size=512
format fs=fat32 quick
assign letter=S
2.2 MSR 分区 (Microsoft Reserved Partition) 最大配置要求
MSR 分区 是为了让 Windows 在磁盘上保留未分配的空间,以便将来进行系统更新或维护。虽然它的最小要求为 128MB,但为了未来的兼容性,最大配置为 1GB。
- 大小:最大为 1GB(建议大小为 128MB,但可以配置到 1GB)。
- 用途:该分区通常不被格式化或挂载,它只为 Windows 提供系统管理空间。
命令示例:
create partition msr size=1024
2.3 REFS(Resilient File System)分区配置与格式化
REFS 文件系统 是 Windows 11 支持的一种高性能文件系统,提供增强的数据完整性和可靠性。它适合用于需要更高容错性的分区,例如存储大量数据和系统文件。
- 文件系统:REFS。
- 大小:分区大小可根据需求配置,通常根据磁盘的大小来设定。
- 用途:用于安装 Windows 11 操作系统和存储用户数据。
命令示例:
create partition primary
format fs=refs quick
assign letter=R
3. 批处理脚本功能需求
-
磁盘管理:
- 通过 diskpart 选择目标磁盘。
- 删除所有现有分区。
- 创建 EFI 分区 (ESP)、MSR 分区 和 REFS 分区。
- 格式化分区为所需文件系统。
- 为每个分区分配驱动器字母。
-
安装 Windows 11 系统:
- 设置好启动分区(EFI 分区)。
- 启动 Windows 11 安装程序,并指定合适的目标分区(REFS 分区)进行安装。
-
安装完成后:
- 系统自动重启,Windows 11 应该能够从 EFI 分区启动并使用 REFS 文件系统进行操作。
4. 批处理脚本实现
4.1 磁盘分区配置脚本
@echo off
echo Starting disk partitioning...
:: Start diskpart
diskpart /s partition_script.txt
:: Mount Windows 11 Setup
echo Starting Windows 11 Setup...
X:\setup.exe
partition_script.txt 内容:
:: Select disk 0 (assumed target disk)
select disk 0
clean
:: Create EFI partition (ESP) 512MB
create partition efi size=512
format fs=fat32 quick
assign letter=S
:: Create MSR partition 1GB
create partition msr size=1024
:: Create REFS partition for OS installation
create partition primary
format fs=refs quick
assign letter=R
:: Set the EFI partition as active
select partition 1
active
4.2 详细命令解释
- select disk 0:选择目标磁盘(假设目标磁盘为磁盘 0)。
- clean:清除磁盘上的所有分区。
- create partition efi size=512:创建 EFI 分区 (ESP),大小为 512MB。
- format fs=fat32 quick:将 EFI 分区 格式化为 FAT32。
- assign letter=S:为 EFI 分区 (ESP) 分配驱动器字母 S。
- create partition msr size=1024:创建 MSR 分区,大小为 1GB。
- create partition primary:创建用于安装 Windows 11 的主分区。
- format fs=refs quick:将该主分区格式化为 REFS 文件系统。
- assign letter=R:为 REFS 分区 分配驱动器字母 R。
- select partition 1:选择 EFI 分区。
- active:将 EFI 分区 设置为活动分区,以确保系统能够从该分区启动。
5. 安装 Windows 11
一旦磁盘分区和格式化完成,可以通过启动 USB 安装媒体来开始 Windows 11 安装过程。
X:\setup.exe
其中 X 是 USB 安装媒体的驱动器字母。启动安装后,Windows 11 将自动识别 REFS 分区 作为目标安装分区。
6. 预期结果
- EFI 分区 被创建并格式化为 FAT32,最大为 512MB。
- MSR 分区 被创建并预留 1GB 空间,未格式化。
- REFS 分区 被创建并格式化为 REFS 文件系统,用于存储系统文件。
- Windows 11 安装程序成功启动并完成系统安装,操作系统被安装到 REFS 分区。
该 .cmd 批处理脚本 能够自动化配置磁盘分区、格式化并为 Windows 11 的安装做准备。通过配置 EFI 分区 (ESP)、MSR 分区 和 REFS 文件系统 分区,确保安装过程符合 Windows 11 的需求。

浙公网安备 33010602011771号