基于PXE的启动WINPE系统

来源:互联网 发布:网络出版许可证查询 编辑:程序博客网 时间:2024/05/16 10:02

前些日子做了基于PXE的网络克隆DOS版。今天实验成功基于PXE启动的WINPE,具体过程如下:

1.启动TFTPDHCP服务器:

PXEDOS版一样,要从网络启动WINPE,必须要有TFTPDHCP服务器用于分配IP和设置启动文件。PXE原理请看基于PXE的网络克隆(DOS版) 。配置如下:

2.DHCP服务器中指定启动文件为:startrom.n12

 

这个文件可以从WINDOWS XP/2003光盘中获取。具体路径为:CDROM\I386\startrom.n1_。用WINRAR解压缩后即得startrom.n12文件。

3.WINDOWS XP/2003光盘中的SETUPLDR.EX_文件解压缩后得到setupldr.exe。然后将其重命名为ntldr,放到TFTP服务器根目录下。

4.创建winnt.sif文件,用于指定WINPE的系统目录和要加载的WINPE镜像文件。winnt.sif文件内容为:

[SetupData]
BootDevice = "ramdisk(0)"
BootPath = "\I386\SYSTEM32\"
OsLoadOptions = "/minint /fastdetect /rdexportascd /rdpath=WINPE.IMG"

 

我用的是深度:

[SetupData]

BootDevice = "ramdisk(0)"

BootPath = "\WXPE\System32\"

OsLoadOptions = "/minint /fastdetect /rdpath=\DEEPIN.IMG"

 

其中,BootPath用来指明WINPE的系统目录。OsLoadOptions用来指明WINPE镜像文件。镜像文件通常有两种类型:ISO/IMGSDI。当镜像文件为ISO/IMG格式时,需要给OsLoadOptions添加 /rdexportascd 参数;当镜像文件为SDI格式时,需要给OsLoadOptions添加 /rdoffset参数。

winnt.sif文件也必须放到TFTP服务器的根目录下。

经过上述这四个步骤即可创建一个基于PXE启动的WINPE

补充说明:

1.由于镜像文件是通过网络加载到内存中,所以当内存小时,一定要精减WINPE镜像文件的大小。

2.WINPE的系统目录有可能不是I386,如深山红叶、老毛桃等制作的WINPE镜像就不是I386,而分别是WINSWXPE

当WINPE的系统目录不是I386时,我们需要修改ntldr和WINNT.SIF文件。ntldr文件需要用二进制编辑器修改,我用的是windows下的sed命令修改,sed功能和linux下的相同,总共有六处I386要被替换。WINNT.SIF文件同样也是需要替换I386。使用Sed命令修改

sed -i -e “s/i386/WINPE/gi” ntldr

原创粉丝点击