65 不用Ventoy,实现多PE启动U盘?无惧固件,手搓多PE系统U盘,让你的U盘PE不再孤独!
不用Ventoy,实现多PE启动U盘?无惧固件,手搓多PE系统U盘,让你的U盘PE不再孤独!
我们都知道,ventoy是一款可以启动多PE系统的efi工具,我们只需要把各种各样的PE系统的ISO光盘镜像文件或者可启动的wim包放在U盘里面,ventoy就可以自动识别这些PE镜像并列出菜单供我们启动时选择.
那么,没有ventoy,我们就没有办法实现这个"单U盘多PE"的梦想了吗?
今天,我么就从技术层面实现这一目的,达到部分复现ventoy功能的目的.
为什么说是"部分"复现?因为想要引导各种各样的PE镜像,efi程序必须要给力.单凭一个Windows boot manager,我们只能引导最普通的wim,vhd,以及正常安装的分区内部的系统(分别使用Ramdisk,VHD,分区模式启动).ventoy的强大之处正是在于他的efi引导程序非常优秀,可以加载ISO,wim等等一系列磁盘映像文件.
然而,ventoy有两个明显的缺点:
-
在制作启动盘的时候,必须格式化U盘,这会导致U盘里面的所有数据全部消失.
-
由于ventoy的efi程序没有经过UEFI的认证,如果UEFI主板启用了secure boot(安全启动)功能,那么UEFI会阻止ventoy加载.我们还需要手动导入安全证书,十分麻烦.这对于不懂电脑的人来说,根本无从下手
本次教程提供的方法可以有效的避免以上两个缺点,达到数据不丢失,安全启动检查正常通过,直接启动PE的目的.
开始前的准备
我们需要准备的资源工具如下:
- 一个U盘(最好8GB以上)
- 至少两个PE系统的ISO镜像(笔者使用的是微PE和U启通的ISO)
- diskgenius软件
- BOOTICE软件
制作多PE系统启动U盘
我们制作的多启动U盘需要适应新老固件,也就是在BIOS和UEFI环境下都可以启动.
由于UEFI固件可以识别MBR,GPT两种分区表类型,BIOS固件只能识别MBR分区表类型,所以,我们的U盘必须使用MBR分区表类型才能在两类固件上正常启动.
如何查看并更改U盘的分区表类型?
使用diskgenius软件,点击U盘,右键,菜单里面会有转换分区表类型.如果U盘是GPT(又叫GUID)分区表,那么转换为MBR的那个选项就是可以点击的.反之,则转换为GUID的选项是可以点击的.
我们转换为MBR,然后点击左上角保存更改即可.
diskgenius转换分区表是无损的,不会丢失数据,可以放心秒转.

现在,对于两种固件来说,我们分别需要两种手段制作启动U盘.
UEFI固件启动多PE系统U盘
我们都知道,UEFI启动需要一个EFI分区(ESP分区),里面放置引导启动的efi文件和启动配置文件BCD等等.
EFI分区必须是FAT32或FAT16文件系统.因为UEFI固件只能识别这些文件系统类型的分区.(强力推荐使用FAT32文件系统)
所以,当务之急是建立一个EFI分区.由于笔者喜欢把PE系统的镜像也放在EFI分区里面,所以,笔者给了EFI分区2GB的大小.
事实上,PE系统的镜像可以放在U盘中的任何地方.这是个人习惯问题.
建立EFI分区的方法如下:
- 右键U盘里的原始分区,点击"拆分分区"
- 分区前部的大小输入2GB.分区后部的大小输入0
- 下拉框选择"保持空闲"
- 确定


以上的操作不会导致U盘里原有的数据丢失,可以放心进行.
- 点击新产生的空闲空间(2GB)
- 点击新建分区
- 选择"主磁盘分区",文件系统类型FAT32,卷标为EFI,点击确定
- 点击左上角保存更改
- 右键新建立的EFI分区
- 点击"更改分区参数"
- 在"系统标识"里面,找到并选择"EFI system partition"
- 一路确定,保存更改


EFI分区至此创建完成.
复制引导文件
EFI分区里的引导文件可以通过直接复制PE系统ISO根目录里面EFI文件夹的方法获取到.
笔者使用微PE的ISO镜像,双击打开微PE的ISO,直接把里面的EFI文件夹复制到刚刚建立好的EFI分区里面即可.
获取PE系统wim包
PE系统一定是以Ramdisk模式启动的,不明白Ramdisk的同学可以阅读我公众号的第25篇文章《25Ramdisk 启动模式简介》了解.
Ramdisk启动所需的资源有两个:
- PE的wim包
- SDI文件
这两个文件都存在于PE系统的ISO里面.对于微PE,他们的路径为:
\WEPE\WEPE64.WIM
\WEPE\WEPE.SDI
笔者把他们复制到了U盘的EFI分区里的WEPE文件夹里面,方便管理.

对于U启通来说,它的wim包和sdi文件存在于:
\BOOT\10PEx64.wim
\BOOT\BOOT.SDI
笔者把他们复制到U盘的EFI分区的\easyu\boot文件夹里面,方便管理.
为什么放在boot文件夹里,而不是直接放在easyu文件夹里面?
U启通有些特殊,他有一个外置扩展工具包文件夹,名叫PETOOLS.位于ISO根目录里面.我们也需要把它复制到easyu文件夹里面,否则U启通无法识别到这个外置包.
由于10PEx64.wim和PETOOLS文件夹的相对位置关系不能更改,所以把那两个文件复制到boot文件夹里面了.
建立BCD菜单引导
PE文件准备完毕,现在开始为UEFI固件建立他的BCD引导文件菜单.
打开软件BOOTICE.点击BCD编辑.
点击"其他BCD文件",点击三个点,选择U盘的EFI分区里面的BCD文件.具体路径为:
\EFI\MICROSOFT\BOOT\BCD
点击"智能编辑模式".
我们可以看见,这里面已经有了两个微PE的引导菜单,由于这是从ISO里面复制出来的BCD,并不适合我们的U盘,我们需要修改其中的一些项目.
-
启动磁盘修改为我们的U盘.
-
启动分区修改为我们存放PE系统wim包的分区,对于笔者来说,我应该选择U盘的EFI分区.
-
设备文件是输入PE系统wim包的路径.即为
\WEPE\WEPE64.WIM -
sdi文件即为sdi文件的路径.即为
\WEPE\WEPE.SDI -
sdi左侧有一个按钮,我们点击之后选择sdi文件所在的U盘和分区即可,方法与刚刚的"启动磁盘"和"启动分区"的选择方法一致.
-
其余的项目可以不做更改,点击"保养当前系统设置"
-
下面的 [2] 包含1024x768的项目做同样的更改.保存当前系统设置.
下面为U启通添加引导.
-
点击左侧"添加->新建WIM启动项"
-
启动磁盘和启动分区选择U启通PE的wim包所在的U盘和分区.对于笔者的U盘,我选择U盘的EFI分区.
-
设备文件:
\easyu\boot\10pex64.wim -
sdi文件:
\easyu\boot\boot.sdi -
菜单标题随意起,最好不要有中文,笔者设置为
[3] easyU -
其余设置不变,保存当前系统设置,保存全局设置.一路退出.
至此,UEFI固件的单U盘多PE系统启动盘制作完成.

BIOS固件启动多PE系统U盘
BIOS固件启动要求磁盘要有活动主分区.所以,我们需要把U盘里面的一个分区设置为活动主分区.这样MBR才能引导进分区的PBR,以启动BOOTMGR.
活动主分区的选择并不是唯一的,笔者为了方便,将U盘的EFI分区设置为活动主分区.
设置方法:
-
打开diskgenius
-
右键U盘的EFI分区,点击"激活当前分区".如果已经激活,则不用操作.
然后,我们需要准备针对BIOS固件的启动引导文件.具体包括:
-
BOOTMGR(BIOS下的引导程序)
-
BCD(B64)
BOOTMGR直接从微PE工具箱的ISO里面复制出来,放到U盘EFI分区根目录下即可.
而对于BCD文件,情况略有不同.由于微PE的BOOTMGR并不是微软官方的BOOTMGR,而是经过修改的,所以官方文档中显示,这个BOOTMGR并不读取BCD文件,而是读取一个名为B64的文件.B64文件的本质仍然是BCD文件,只不过是名字不同而已.
所以,我们可以使用UEFI模式下的BCD文件,但是需要把这个文件名修改为B64.此外,BIOS的BCD文件配置内容与UEFI略有不同,下面将进行介绍.
首先,我们把U盘EFI分区里面的
\EFI\MICROSOFT\BOOT\BCD文件复制到任意其他位置,编辑这个BCD.只需修改easyu的启动菜单. -
把启动文件修改为
winload.exe,其他不变. -
保存当前系统设置,保存全局设置.一路退出.
-
把这个BCD文件名字修改为
B64BCD修改完成.

为什么不修改微PE的BCD菜单?
如果你细心,可以发现,微PE的启动文件里面是空的.这就意味着可以使用默认的启动文件,而不用我们手动设置.系统会自动寻找合适的文件启微PE.
然后,我们把B64复制到U盘的EFI分区里面的WEPE文件夹里.
事实上,微软的BOOTMGR在搜索BCD文件的时候,使用的路径是
\boot\BCD.微PE官方通过魔改BOOTMGR,把这个路径改为了
\WEPE\B64.
至此,BIOS+UEFI双固件多PE系统系统U盘制作完成.
U盘EFI分区的文件结构:
C:.
│ BOOTMGR
│
├─EFI
│ ├─BOOT
│ │ bootx64.efi
│ │
│ └─MICROSOFT
│ └─BOOT
│ │ BCD
│ │
│ └─FONTS
│ wgl4_boot.ttf
│
├─WEPE
│ WEPE64.WIM
│ WEPE.SDI
│ B64
│
└─easyu
├─PETOOLS
│ |.............各种工具............
│
└─boot
10PEx64.wim
BOOT.SDI
启动测试
UEFI

BIOS

浙公网安备 33010602011771号