如何制作一个启动盘

2025-03-10 10:58:26 管理员 28

作为一个IT工程师,经常需要安装各种系统,一个启动U盘必不可少,但是在制作过程中经常遇到各种问题,本文详细介绍下如何能制作一个能正常启动的系统安装盘。文章详细介绍了启动的原理和免工具制作windows启动盘,文末有快捷工具,不想看文章直接拉到最下面。


首先我们需要了解下U盘是如何实现启动的

在远古时期,所有磁盘采用MBR分区表格式,启动过程如下:

BIOS自检完成后,根据BIOS设置,找到对应的启动硬盘,BIOS读取启动硬盘的0扇区主引导记录(MBR,Main Boot Record),并且把控制权交给MBR,MBR是一个可执行程序,负责基本启动功能,以及加载并读取分区表(DPT,Disk Partition Table)。

主引导记录成功运行并读取分区表以后,在分区表中查找活动分区,找到活动分区后,继续加载分区引导记录(PBR,Partition Boot Record)。

PBR包含了对应分区的驱动程序,可以读取分区信息,并且根据不同的系统加载对应的系统引导文件(如XP系统的NTLDR,WIN7系统的BOOTMGR)

系统引导文件包含了更复杂的功能,最终启动到对应的系统中。

由于BIOS容量有限,无法容纳过多内容,所以采用如此复杂的步骤,从简单到复杂一步一步加载更高级的引导程序,实现复杂的启动。

MBR启动方式有点是BIOS不用管目标磁盘的分区格式,BIOS只需要加载0扇区的MBR即可,剩下的事情就交给MBR了,所以目标磁盘的分区采用什么方式由目标系统决定,目标系统的PBR中会包含对应分区的驱动程序,比如FAT32/NTFS等等,所以兼容性一般都不会有问题。也不会存在FAT32系统4GB文件大小的限制问题。


最近10年以内的电脑基本都支持UEFI启动,UEFI支持更大的容量,可以实现更多复杂的内容,所以原本MBR,PBR做的事情,都整合到了UEFI中

UEFI启动过程如下:

UEFI自检完成以后,已经加载了硬盘,周边设备,甚至常见的分区格式的各种驱动,可以直接读取硬盘上的文件

一般情况下,根据设置,直接找到硬盘EFI分区中的启动文件,比如64位系统默认是EFI\BOOT\bootx64.efi,直接加载此引导文件,实现系统启动

此方式优点是启动过程简化了,也支持了更多安全特性

当然也存在缺点,日常遇到最多的就是分区驱动,部分UEFI程序只支持FAT/FAT32文件系统,而windows系统安装盘中经常存在大于4G的镜像文件,必须采用NTFS系统,导致系统盘制作失败。


根据以上特性,启动U盘制作方法如下:

对于windows10/11,win server系统:

如果不需要Legacy BIOS支持,则不需要任何第三方工具,将U盘格式化成FAT32格式,如果U盘超过了32G,那么可以在磁盘管理里将U盘分区,分一个小于32G的分区用于启动,剩下的再分一个区用来存别的数据。

然后将下载下来的windows镜像所有文件(包含隐藏和系统文件)完整解压缩到U盘FAT32分区的根目录即可实现UEFI启动

但是实际上还有一个很大的问题,WINDOWS的安装盘的安装镜像,位于sources\install.wim或者install.esd经常会有超过4G的情况,这个时候会触发FAT32文件系统4G文件大小限制,解决方式也很简单,window自带工具DISM命令行工具,使用此命令将ISO镜像中的install.wim分割成2个小于4G的文件即可,然后再复制到U盘上,命令如下ImageFile参数指定原始文件,SWMFile参数指定目标文件,FileSize参数指定分割后的大小,单位MB

DISM.exe /Split-Image /ImageFile:install.wim /SWMFile:split.swm /FileSize:4000


如果需要支持Legacy BIOS,需要借助2个命令行工具实现,部分是windows自带,部分可以从安装镜像中得到

1,diskpart.exe,windows系统自带

2,bootsect.exe,windows安装ISO的BOOT目录下


首先起个管理员身份的命令行,运行diskpart

list disk ,列出系统下所有硬盘和可移动磁盘

select disk x ,x代表磁盘编号,选择对应的U盘前面的编号即可

clean ,清空U盘数据和分区表,操作之前最好使用detail disk命令看下选择的磁盘是否为正确的U盘,选错硬盘的话,硬盘上数据就没了

create partition primary ,在U盘上创建一个主分区

format quick fs=ntfs ,格式化分区为ntfs(也可以使用fat32,但是不支持单个文件大于4G)

active , 将分区设置为活动分区

assign ,给分区分配一个盘符


进我的电脑看下U盘分配的是什么盘符,比如是G:,那么下一步

bootsect /nt60 G: /mbr /force

然后和UEFI一样,把ISO里边所有文件(包括隐藏和系统文件)全部解压缩到U盘上即可(U盘是FAT32遇到4G限制问题,请参考UEFI方式中的DISM分割镜像),NTFS无此问题。


Linux系统比较麻烦,请使用下面的工具


当然,有很多效率工具可以替你完成这些事情,比如rufus,下载地址:https://rufus.ie/zh/

具体方法可以参考官方文档,支持MBR,UEFI


最近还有个更好用的工具,ventoy,下载地址:https://www.ventoy.net/cn/

可以在一个U盘上创建多个系统启动,直接把ISO文件复制到U盘上即可,无需解压缩。具体使用方法可以参考官方文档。

ventoy使用中遇到最多的问题是UEFI的secureboot安全启动的问题,请参考官网安全启动解决方案:https://www.ventoy.net/cn/doc_secure.html



首页
产品
新闻
联系