自制可运行pe的iso

准备软件

  • UltraISO:用于制作可启动的ISO
  • Bootice: 用于修改PE引导的BCD启动项
  • Dism++: 编辑wim镜像

准备文件

  • 微软官方ISO镜像

步骤

  1. 创建任意一个工作目录。

  2. 微软官方ISO镜像中提取必要文件

    1. 双击ISO镜像,挂载。
    2. 在工作目录中新建Boot文件夹,复制挂载目录的sources\boot.wim, boot\boot.sdiefi\microsoft\boot\efisys_noprompt.bin到其中。
  3. 修改Boot.wim

    1. 打开Dism++,依次点击 文件 -> 打开镜像文件,选择工作目录的Boot\boot.wim
    2. 选择 Windows Setup 的镜像,点击删除映像。
    3. 选择 Windows PE 的镜像,点击可启动(这会将其转换为可启动WIM),点击退出。
  4. 准备EFI文件

    1. 生成

      1. 打开管理员权限的Windows Terminal。
      2. 输入 bcdboot c:\windows /s D: /f UEFI,运行后在D盘根目录生成主机的EFI文件夹。
      3. 复制D盘下的EFI文件夹到工作目录。
    2. 修改BCD

      1. 打开Bootice,依次点击 BCD编辑 -> 其他BCD文件,选择工作目录EFI\Microsoft\Boot下的BCD文件。
      2. 点击智能编辑模式,删除原有启动项。点击 添加 -> 新建WIM启动项。
      3. 设置设备文件为 \Boot\boot.wim,设置SDI文件为 \Boot\boot.sdi
      4. 点击保存当前系统设置并关闭。
    3. 复制 bootmgr.efi
      在EFI文件夹下的Microsoft\Boot 文件夹复制 bootmgr.efi 到工作目录。

  5. 制作ISO

    1. 打开UltraISO,点击文件 -> 新建 -> UDF DVD 镜像。
    2. 复制工作目录下的EFIBootbootmgr.efiUltraISO中。
    3. 打开 Boot 文件夹,在 efisys_noprompt.bin 右键 -> 设置为引导文件。
    4. 点击文件 -> 保存 iso 文件。
  6. 尝试用虚拟机启动吧!

名词解释

boot.wim: 官方iso的启动镜像,里面包含Windows PE (Preintallation Environment,预安装环境) 和 Windows Setup (用于安装系统),这里用到的是Windows PE。

boot.sdi: System Deployment Image 系统部署镜像,一个空的镜像文件,用来存放wim启动后的盘(C盘)。

efisys.binefisys_noprompt.bin: iso启动的必须引导,在efi前先执行。二选其一即可。前者比后者在启动时多了一条提醒:Press any key to boot from cdrom.

EFI文件夹:
文件树:

EFI
|-- Boot
	|-- bootx64.efi           ->       64位efi系统启动关键引导
|-- Microsoft
	|-- Boot
		|-- BCD               ->       Boot Config Data 主系统启动配置文件,包含开机所选项
		|-- bootmgr.efi       ->       Windows Boot Manager 启动管理器的引导
	|-- Recovery
		|-- BCD               ->       Windows RE 启动配置文件

UDF DVD: Universal Disc Format 多功能,可多启动的ISO格式。

结语

做完可把自己牛逼坏了!