无忧启动论坛

标题: PXE局域网启动PE方法汇总 [打印本页]

作者: liuzhaoyzz    时间: 2010-4-3 12:19
标题: PXE局域网启动PE方法汇总
PXE局域网启动PE方法汇总
参考Climbing的[原创]PXE服务器架设及无盘天使相关文章http://bbs.znpc.net/viewthread.php?tid=4610&;highlight=pxe
PXE服务器架设指南及PXE启动WinPE(含PE2.0)解决方案总结: http://bbs.znpc.net/viewthread.php?tid=3662
主机可以采用tftpd32或者Hanewin dhcp,客户机要求支持PXE启动。以tftpd32为例,主要有以下几个方法。
grldr采用最新版的,http://nufans.net/grub4dos/tinybit/,它可以优先检测PXE服务器根目录下是否存在menu.lst配置文件,如果存在,就直接加载,如果不存在再搜索\menu.lst\default配置文件。
1、grldr+startrom.0+PE映像
主机需要这几个文件:tftpd32.exe,tftpd32.ini,grldr,menu.lst,startrom.0,ntldr,ntdect.com,winnt.sif及winpe的映像文件。ntldr中的路径可以用winhex暴力修改指向ntdetect.com,winnt.sif需要指向winpe的映像文件,路径和文件名都要相符合, ISO格式的内核需要加/rdexportascd参数。winpe的映像可以是iso,img,ima,sdi,dsk格式的,但是只能是winpe的内核,不能是压缩格式的。如果不需要多启菜单,grldr,menu.lst可以省略,tftpd32的启动文件可以直接选择startrom.0。
启动过程:主机tftpd32→客户机PXE→[grldr→menu.lst菜单]→startrom.0→ntldr→ntdetect.com→winnt.sif→winpe映像。
menu.lst是默认的PXE启动配置菜单,可以这样写:
timeout 3
default 0
title WINPE by lrbin50(startrom.0-winpe.ima)
pxe keep
chainloader --force (pd)/startrom.0
boot
提取lrbin50的pe20090727.iso的内核winpe.img映像,把部分程序内置到winpe.ima启动后有部分外置程序.

2、grldr+PE映像
主机需要tftpd32.exe,grldr,menu.lst及winpe的映像文件。winpe的映像可以使gz,iso,img,ima,sdi,dsk格式,iso可以是原版winpe光盘。karyonix的firadisk驱动类似windrv的wdsys,把firadisk.ima用map --mem (pd)/firadisk.ima (fd0)这一句加载到虚拟软驱后,在PE中就可以看到用grub4dos创建的所有虚拟磁盘,所以能够加载外置程序。shao的winvblock也可以。
启动过程:主机tftpd32→客户机PXE→grldr→menu.lst菜单→winpe映像里的启动文件。
menu.lst是默认的PXE启动配置菜单,可以这样写:
timeout 3
default 0

title tongyong WINPE by Uepon(TonPE_net.iso+firadisk)
map --mem  (pd)/TonPE_net.iso (0xff)
map --hook
chainloader (0xff)
boot

title tongyong WINPE by Uepon(TonPE.iso+firadisk)
map --mem (pd)/winvblock.ima (fd0)
map --mem  (pd)/TonPE.iso (0xff)
map --hook
chainloader (0xff)
boot

title WINPE by lrbin50(PE20090727_net.iso+firadisk)
map --mem  (pd)/PE20090727_net.iso (0xff)
map --hook
chainloader (0xff)
boot

title WINPE by lrbin50(PE20090727.iso+firadisk)
map --mem (pd)/winvblock.ima (fd0)
map --mem  (pd)/PE20090727.iso (0xff)
map --hook
chainloader (0xff)
boot

title WINPE by Nictense(TangoPE.iso+firadisk)
map --mem  (pd)/TangoPE.iso (0xff)
map --hook
chainloader (0xff)
boot

title boot from hard disk
root (hd0,0)
chainloader +1
boot

title command line
commandline

title reboot
reboot

title halt
halt
grldr以光盘仿真模式启动原版映像测试:
①益丰家园Uepon的通用PE1.94版,内核是xp sp2的tongpe.iso,有外置程序。原版156M启动,带网络的170M内存启动。
②自由天空lrbin50的pe20090727.iso,配合firadisk驱动,能够加载所有的外置程序。原版160M启动,带网络的176M内存启动。
③Nictense的全内置TangoPE.iso,内核是XP SP3,有外置程序。最小176M启动。
有些PE测试出现WINPE.IS_不能加载,错误代码16,可能是因为内存不够导致的。

3、pxelinux.0+startrom.0+winpe映像:
主机需要这几个文件:tftpd32.exe,tftpd32.ini,pxelinux.0,\pxelinux.cfg\default,menu.c32,startrom.0,ntldr,ntdect.com,winnt.sif及winpe的映像文件。
pxelinux.0等文件可以syslinux3.86压缩包里提取,官方下载地址http://www.kernel.org/pub/linux/utils/boot/syslinux/
ntldr中的路径可以用winhex暴力修改指向ntdetect.com,winnt.sif需要指向winpe的映像文件,路径和文件名都要相符合,ISO格式的内核需要加/rdexportascd参数。winpe的映像可以是iso,img,ima,sdi,dsk格式的,但是只能是winpe的内核,不能是压缩格式的。如果不需要多启菜单,pxelinux.0,\pxelinux.cfg\default,menu.c32可以省略,tftpd32的启动文件可以选择startrom.0。
启动过程:主机tftpd32→客户机PXE→[pxelinux.0→\pxelinux.cfg\default菜单→menu.c32]→startrom.0→ntldr→ntdetect.com→winnt.sif→winpe映像。
\pxelinux.cfg\default是默认的PXE启动配置菜单,菜单可以这样写:
UI menu.c32
prompt 0
allowoptions 0
timeout 30
menu title PXE boot from pxelinux
label WINPE by lrbin50(startrom.0)
menu deafult
kernel startrom.0
lrbin50制作的WINPE 2009 SATA版提取的内核winpe.img映像,把部分程序内置到winpe.ima启动后有部分外置程序。参见http://bbs.wuyou.net/forum.php?mod=viewthread&tid=160720&;highlight=pxe

4、pxelinux+memdisk+winpe映像
主机需要tftpd32.exe,tftpd32.ini,pxelinux.0,\pxelinux.cfg\default,menu.c32,memdisk及winpe的映像文件。
memdisk支持iso,img,zip,gz格式,在syslinux3.86压缩包里可以提取,官方下载http://www.kernel.org/pub/linux/utils/boot/syslinux/
启动过程:主机tftpd32→客户机PXE→pxelinux.0→\pxelinux.cfg\default菜单→menu.c32→memdisk→winpe磁盘映像。
启动ISO后没有外置程序,不过可以把外置程序放在其他盘上,在系统启动前插入电脑,这样就能加载。还有个办法就是利用shao编写的winvblock驱动,能够把memdisk仿真的磁盘带入Windows。2010.5.30日karyonix发布的firadisk0.0.1.20驱动也支持memdisk磁盘仿真了。
\pxelinux.cfg\default是默认的PXE启动配置菜单,菜单可以这样写:
UI menu.c32
prompt 0
allowoptions 0
timeout 30
menu title pxelinux boot from PXE

label WINPE by uepon(TonPE_net.iso+firadisk inside)
kernel memdisk  raw iso initrd=TonPE_net.iso

label WINPE by uepon(TonPE.iso)
kernel memdisk  raw iso initrd=TonPE.iso

label WINPE by lrbin(PE20090727_net.iso+firadisk inside)
kernel memdisk raw iso initrd=PE20090727_net.iso

label WINPE by lrbin(PE20090727.iso)
kernel memdisk raw iso initrd=PE20090727.iso

label WINPE by Nictense(TangoPE.iso)
kernel memdisk raw iso initrd=TangoPE.iso

label WINPE(startrom)
menu deafult
kernel startrom.0

label Boot from hard disk
localboot 0x80

总结下:
1、PXE多引导管理器可以选择grub4dos或者pxelinux。2010.6.23日,grub4dos在PXE网络启动方面有了重大更新:优先检测PXE服务器根目录下是否存在menu.lst配置文件,如果存在,就直接加载,如果不存在再搜索\menu.lst\default配置文件,加载速度比以前快多了。如果多启菜单复杂,而且有不同格式(gz,iso,img,ima,sdi,dsk),强大的grub4dos绝对是你不二的选择。
2、利用startrom.0加载ntldr不能启动原版的WINPE光盘映像,只能启动WINPE的内核,而且内核映像不能被压缩,启动后没有外置程序。如果想启动外置程序,需要把外置程序放到其他地方,或者加入到内核做成内置映像,但做成内置的又会加大启动的内存消耗。这种方式需要修改ntldr,winnt.sif文件,还有可能需要修改内置映像文件,而img文件的扩容(用Winimage)也是很费事的事情。
3、官方的memdisk支持ISO启动,不过启动后没有外置程序,如果想要加载外置程序,可以利用shao编写的winvblock驱动,把memdisk仿真的磁盘带入Windows,或者使用全内置的PE。2010.5.30日karyonix发布的firadisk0.0.1.20驱动也支持memdisk磁盘仿真了。
4、grub4dos能够直接启动原版的WINPE光盘映像,PE的内核可以是img,iso或dsk的磁盘映像格式,dsk的磁盘映像需要windrv大师的无盘天使wdsys.sys的驱动。这种方式可以直接把成品的WINPE光盘拿来使用,避免DIY PE的重复劳动,配合karyonix大师提供的firadisk驱动http://nufans.net/grub4dos/FiraDisk/,能够加载所有的外置程序,但由于仿真磁盘的内存消耗,PXE启动比本地直接启动需要更大内存支持。在firadisk出来之前,要想加载PE的外置程序,要么就是把外置转成内置,加入到winpe.img中,要么就是把外置拷贝到其他地方来实现加载。然而2009年8月firadisk横空出世,一切都改变了,PE不再需要重复的DIY,grub4dos在不点大师的改进下,早在2007-11-18开始支持用ISO仿真CDROM http://bbs.znpc.net/viewthread.php?tid=4227&;extra=page%3D2,原版光盘映像可以直接用grub4dos加载,因此TFTPD32+FIRADISK+GRLDR+WINPE的启动方式是强烈推荐的PXE启动PE方式。而内外双修,占用内存小启动快,支持本地、网络、USB多重启动的PE必然成为未来PE的主导。
5、grldr和pxelinux互相引导:
pxelinux可以启动grldr,但是名字必须改成pxelinux要求的grldr.0的格式。或者引导grub.exe,但是要加keeppxe参数。
label Boot from grub4dos
kernel grldr.0
#kernel grub.exe --config-file=(pd)/menu.lst keeppxe
从grub4dos中进入pxelinux:
pxe keep
chainloader --raw (pd)/pxelinux.0
#chainloader --force (pd)/pxelinux.0
chainloader参数--raw,用于一次性装载文件,是bean对grldr的pxe功能的改进。

grldr启动的支持文件模板。

http://www.everbox.com/f/Tebbr6F6aCMNxkVGOnkZo2kj8H
http://pan.baidu.com/share/link?shareid=155749&uk=2298763057

[ 本帖最后由 liuzhaoyzz 于 2013-1-3 16:53 编辑 ]
作者: linyehua    时间: 2010-4-3 12:21
原帖由 liuzhaoyzz 于 2010-4-3 12:19 发表
PXE局域网启动PE方法汇总
liuzhaoyzz@wuyou
参考Climbing的[原创]PXE服务器架设及无盘天使相关文章http://bbs.znpc.net/viewthread.php?tid=4610&highlight=pxe
PXE服务器架设指南及PXE启动WinPE(含PE2.0) ...

感谢楼主,学习了!
作者: shn    时间: 2010-4-3 12:28
学习了。多谢分享
很久不用了,都用u盘
作者: 北斗    时间: 2010-4-3 13:00
楼主最好重新排下版式,全糊在一起,这样读起来太累了

我平时用的是startrom加载ntldr
作者: padistar    时间: 2010-4-3 13:08
现在正在学习PXE启动,楼主的帖子功德无量...
作者: pseudo    时间: 2010-4-3 17:17
标题: 介绍一下0PE、CSPE的网启技术
n年前0PE就是支持本地、网络、USB多重启动的PE。

1. “pxelinux.0查找到/menu.lst/default一系列菜单文件的速度比grub4dos流畅,如果不点把grldr的菜单/menu.lst/default放在第一个
查找就好了。”
    grub4dos流畅查找菜单问题,0PE最早给出有效方案,目前已被推广。

2. “chenall的CSPE中提取的cspe.gz启动到命令行,没有system.wim。”
    正确使用CSPE,会有system.wim的。

3. “grub4dos能够直接启动原版的WINPE光盘映像,它要求PE的内核是img或dsk的磁盘映像格式,内核是iso的就不能启动(原因不明)”
    用0PE可启动其它WINPE光盘映像,包括iso核心的老毛桃911PE,不知道是否属于此范畴。

4. “在firadisk出来之前,要想加载PE的外置程序,要么就是把外置转成内置,加入到winpe.img中,要么就是把外置拷贝到其他地方来实
现加载。”
    0PE、CSPE(MicroPE)是最早使用firadisk的PE。在firadisk出来之前,也实现了“直接PXE”特性。不需要转内置、拷贝。

参考:一种U启、网启两用,内置外置自由的部署
作者: ziyun    时间: 2010-4-3 17:57
精品不能错过,感谢楼主分享!
作者: liuzhaoyzz    时间: 2010-4-3 18:05
感谢pseudo大师的指点,cspe我没有用原版来make成iso的,只是提取了,所以没有外置,如果makeiso或者使用本身的网启,肯定有外置的。grub4dos启动iso的我只是拿手头的几个PE简单的测试了下,不知道为什么iso内核的不能启动, 0PE、CSPE有直接PXE的特性,也看过你很早写的那个关于直接PXE构想的帖子,可是我对于0PE的复杂真的有点发怵,0PE、CSPE的许多构思很独到,很值得研究。
作者: guanjinman    时间: 2010-4-3 21:01
作为PXE多引导管理器,pxelinux.0调用/menu.lst/default菜单 很好,可以专门用来启动多个网启pe。

一般情况下网启基于xp、2k3的pe用pxelinux.0+startrom.0+winpe映像就行了。对于0PE的启动文件GRLDR不知道是什么打造的非常特别:既可以用grub4dos直接调用,也可以当做pxelinux.0作为网启启动文件,还可以当成startrom.0放在/menu.lst/default菜单被pxelinux.0调用(必须把grldr改名成grldr.0)

一般般的LDRXPE(以老毛桃的pe为例)只能被grub4dos直接调用,作为网启用不知道怎么改造LDRXPE,然后被startrom.0调用

pxelinux.0如果在主分区,startrom.0在逻辑分区,启动逻辑分区上的winpe不知道怎么写菜单?
作者: limonet    时间: 2010-4-3 21:19
谢谢,原来只是使用,真未深究,这次又学到很多,太感谢了。
作者: 网上飞鹰    时间: 2010-4-4 21:13
这两天正恶补pxelinux。。。,进来学习一下
作者: 251190679    时间: 2010-4-5 14:44
感谢楼主,正需要着``
作者: huangn2008    时间: 2010-4-26 19:23
也正在学习pxe,补充下知识,以前为索尼老本,不带光驱,不支持U盘的,1.8寸硬盘做系统,很是费力,用网启就方便多了
作者: kloikjj    时间: 2010-4-27 17:35
太深了,看不懂,做个记号
作者: 83835200    时间: 2010-4-27 18:03
好东西,找了好久了~~~
作者: 极度凶残    时间: 2010-4-27 21:56
局域网还是用PXE方便,正需要,收下了,谢谢楼主的分享
作者: xianglang    时间: 2010-4-28 00:35
要是PXE启动PE,能够解决压缩WINPE.IM_不出错这个问题就好了。
作者: 快雪时晴    时间: 2010-4-28 01:11
PXE还没用过,没环境
作者: liuzhaoyzz    时间: 2010-4-28 16:20
原帖由 xianglang 于 2010-4-28 00:35 发表
要是PXE启动PE,能够解决压缩WINPE.IM_不出错这个问题就好了。


你说的是直接用startrom.0直接加载winpe.im_的情况吧?感觉grldr+firadisk就是替代startrom.0+winpe.im_的方式,用这种方式,winpe.im_是可以压缩的呀。
作者: xianglang    时间: 2010-4-28 17:33
是啊。grldr+firadisk可能需要的内存比较大,256MB内存的可能不行,而且firadisk好象也不太稳定。
作者: liuzhaoyzz    时间: 2010-4-28 20:21
是呀,grldr+firadisk模式需要的内存是比一般大点。不过如果PE的体积小点的话,256MB应该能运行了,上面列举的几个PE160MB以下内存都可以启动,PE本身也都是40M以下的。哎,没办法了,大点就大点吧,好歹控制在256M之内能够启动PE就算不错了。最主要是的把外置程序也加载了起来,方便呀,总比把个PE搞得七零八落的好。

[ 本帖最后由 liuzhaoyzz 于 2010-4-29 17:36 编辑 ]
作者: huangn2008    时间: 2010-4-30 18:44
我把ghost版win7pe2003去掉win7gho,直接用网启加载了,结果 在进入开始菜单的几个分区软件时,就直接进入dos工具箱了,不知道是什么原因
作者: liuzhaoyzz    时间: 2010-5-3 21:20
2010.5.2日,grub4dos在PXE网络启动方面有了重大更新:优先检测PXE服务器根目录下是否存在menu.lst配置文件,如果存在,就直接加载,如果不存在再搜索\menu.lst\default配置文件,加载速度比以前快多了,这下grub4dos在网络启动速度方面和pxelinux有得比了!
这个功能由chenall修改,还是测试版,密切关注正式版发布。
http://bbs.znpc.net/viewthread.php?tid=2931&extra=page%3D1&page=10

测试版下载:
http://nufans.net/grub4dos/tinybit/
http://code.google.com/p/grub4dos-chenall/
http://code.google.com/p/grub4dos-chenall/downloads/list?can=2&q=&sort=-uploaded&colspec=Filename%20Summary%20Uploaded%20Size%20DownloadCount
再次感谢chenall的努力和付出!

[ 本帖最后由 liuzhaoyzz 于 2010-5-18 21:57 编辑 ]
作者: 不点    时间: 2010-5-21 23:49
2010.5.2日,chenall更新了grub4dos的PXE功能,优先检测PXE服务器根目录下是否存在menu.lst配置文件,如果存在,就直接加载


很抱歉,不凑巧,这个文件 menu.lst 的名称已经于今天(2010-05-21) 被迫更改了。改成了 main.lst。
作者: LJN    时间: 2010-5-21 23:58
谢谢!好资料教程!学习中
作者: liuzhaoyzz    时间: 2010-5-22 10:38
不点说的main.lst,我在http://nufans.net/grub4dos/tinybit/下载grub4dos-0.4.5b-2010-05-21.zip测试过了,tftp server目录里面把menu.lst直接改名为main.lst,启动WINPE成功,速度很快,期待final版0.4.5。
作者: 不点    时间: 2010-5-22 10:52
谢谢 liuzhaoyzz 对grub4dos的支持,以及为大家所做的大量工作。

我个人感觉 grub4dos 0.4.5 的发布,还需要有一段路要走。到目前为止,没有人测试用 kernel 加载“非Linux内核”是否能够成功的问题。我们现在不知道 kernel 加载 grub2 的 core.img 是否成功,也不知道加载 ReactOS 的 freeldr 是否成功,也不知道加载 BSD 的 kernel 是否成功。至少得等到各个方面都有人报告成功了,才算完成了开发的工作。

另外,grub4dos 本身的设计,现在有了初步运行外部程序的功能,还需要加以完善,把内存管理和进程管理加以实现,使得运行 grub4dos 系统上的 TSR 程序成为可能。那样,grub4dos 就成为了一个相对比较完整的操作系统模型。

所以,0.4.5 估计会测试很长时间,也许到明年,都是有可能的。
作者: xiao75918    时间: 2010-5-22 10:57
能否放出一个做好的成品,下载后直接解压到硬盘根目录,我的电脑以pe作服务器,客户机启动成功,但直接在xp下运行tftpd32.exe或者是其它的免配cmd(包括0pe的,按其目录结构放置也是一样),客户机启动错误:

pxe-E53:no boot filename received

这个问题是否我的xp系统有问题?
作者: liuzhaoyzz    时间: 2010-5-22 11:04
我知道的,grub4dos0.4.4和grub4dos0.4.5应该说是一个划时代的更新,依稀记得changelog上好像是32位代码放在3M以上,留出更大的空间,要改动的东西肯定很多,还有就是增加外部命令都需要很长时间的测试,另外一个比较重要的更新就是PXE了。
http://bbs.znpc.net/viewthread.p ... muid=12697#pid44911
楼上的我在1楼已经有做好的成品了啊?你下载看看吧,随便扔一个RAM版的PE到tftp目录,改下menu.lst(main.lst)里面相应的ISO名字就行了。pxe-E53:no boot filename received的出现,你是不是没有指定启动文件为grldr或者grldr.0或者pxelinux.0?
给个grldr+pxelinux启动的支持文件模板吧。发到1#了。

[ 本帖最后由 liuzhaoyzz 于 2010-5-24 20:49 编辑 ]
作者: 135956    时间: 2010-5-22 11:13
记号一下。以后要用到,再细细看。
作者: coolg    时间: 2010-5-22 19:43
这个模板非常好用,谢谢楼主!!

我花了好长时间也没搞定Hanewin dhcp,楼主能不能搞个Hanewin dhcp模板
作者: jamesdai2002    时间: 2010-5-22 20:23
楼主漏了bootmgr启动pe 1.0 2.0,bootmgr应该也是很强的pe启动工具, 当然也可以pxe启动pe,  最大优势是pxe启动多个pe 1.0不用修改ntldr winnt.sif的名称
作者: liuzhaoyzz    时间: 2010-5-22 22:59
@coolg
你本身就是PXE高手了,呵呵。Hanewin dhcp和tftpd32不是一样的吗,他的文件太多了,有好几个,把他们往tftp目录一扔不就行了吗,免配的你也搞了好几套方案了吧,好像pseudo和歌理是最早公布的。
@jamesdai2002
学习了,还不会倒腾bootmgr呢。

[ 本帖最后由 liuzhaoyzz 于 2010-5-23 07:12 编辑 ]
作者: coolg    时间: 2010-5-22 23:40
原帖由 liuzhaoyzz 于 2010-5-22 22:59 发表
@coolg
你本身就是PXE高手了,呵呵。Hanewin dhcp和tftpd32不是一样的吗,他的文件太多了,有好几个,把他们往tftp目录一扔不就行了吗,免配的你也搞了好几套方案了吧,好像歌理是最早公布的。
@jamesdai2002 ...



搞定了,谢谢,不仅在有线网卡,无线网卡也行
作者: zhangze    时间: 2010-5-23 02:01
也就是说
只要内存足够大

丢一个无人值守的安装光盘过去
就直接装系统了

完全不需要Ghost那个服务端了
作者: liuzhaoyzz    时间: 2010-5-23 07:22
PE下的网克有两种,内存要求256M就行,无论哪种,PE的SRS驱动都是最重要的,看不到客户机的硬盘一切都是枉然。
一种是利用grub4dos的grldr+winvblock(firadisk)驱动整体启动带网络支持的WINPE的ISO映像,扔个ghostsrv在tftp目录,启动ghostsrv,客户机开启PXE,启动WINPE后,开启网络支持,启动ghost的多播multicast就可以进行网克了。Winpe下网克速度快,操作方便,可以一对多克隆。
另外一种,如果要克隆的客户机不是太多,主机不用启动ghostsrv,直接用PE里面的Penetcfg设置好共享文件夹映射,启动客户机的ghost,选择local→partition→from image模式进行克隆,不过这就不是利用ghostsrv的多播克隆了,而是利用windows的共享映射建立的网克,速度上没有ghostsrv的多播快,可以到400M/min,而ghost多播可以到550M/min甚至更高,决定于交换机网卡带宽及硬盘速度。这种严格意义上怕是不能叫做网克。

[ 本帖最后由 liuzhaoyzz 于 2010-5-23 10:06 编辑 ]
作者: jamesdai2002    时间: 2010-5-23 10:14
标题: 回复 #36 liuzhaoyzz 的帖子
应这么说:
1.   如果零散的装一些不同配置的pc, 映射共享文件夹方式更好一些,因为不用开启ghostsrv.
2.  同时安装很多台相同配置的pc, ghostsrv+多播方式更好。
3.  ghost的速度决定因素主要是网络速度和硬盘的速度,当然和pc的配置也有些关系,对于100M网络,pe 1.0网络共享利用率一般在75%左右, pe 2.0和3.0可以达到99%, pe 1.0多播方式也许可以超过75%.
4. 普通ghost和ghost多播差别只是一对一发送和一对多发送,网络传输速度其实差别不大的,如果你的pc性能够强大,并使用1000M网络,网络可以达到700Mbit/s,也就是ghost速度4000M/min
作者: liuzhaoyzz    时间: 2010-5-23 10:22
认同你的观点。事实上我都是用共享映射,ghostsrv多播很少用,都是百兆网,千兆网投入太大没有试过。我测试过一对一网克,ghostsrv+multicase确实比共享映射要快。

[ 本帖最后由 liuzhaoyzz 于 2010-5-23 10:30 编辑 ]
作者: jamesdai2002    时间: 2010-5-23 10:29
标题: 回复 #38 liuzhaoyzz 的帖子
我们公司每天都要装很多pc,一直用RIS安装和PE网络共享方式ghost, 去年还把网络提升到1000M, ghost的速度提升还是很明显的,现在的瓶颈主要在server的硬盘速度不够快。
作者: jamesdai2002    时间: 2010-5-23 10:40
pxe启动dos下映射网络驱动器ghost也是个不错的选择, 不用考虑网卡驱动(驱动就是pxe rom)和硬盘控制器的驱动(驱动就是bios),就是ghost速度慢一点,大概400M/min
作者: zhangze    时间: 2010-5-23 13:34
我的意思是跟PE没关系
是不是直接PXE一个系统盘,如电脑城Ghost版,客户端就象光驱启动电脑城Ghost版光盘一样安装系统了呢??

这是直接用系统光盘里边的GHost安装

同理
如果直接PXE微软原版的Windows XP或者Windows 7光盘过去,也一样的安装呢
作者: 极度凶残    时间: 2010-5-23 14:50
原帖由 coolg 于 2010-5-22 23:40 发表



搞定了,谢谢,不仅在有线网卡,无线网卡也行

不是吧?客户机用无线网卡也可以PXE启动??
作者: liuzhaoyzz    时间: 2010-5-23 15:26
@zhangze
不是很明白你的意思,你说的不是PXE启动,说的好像主要是PXE启动后如何安装系统的问题吧。
“完全不需要Ghost那个服务端了”,是可以的,如果客户机启动的是maxdos或者mousedos,驱动网卡后用net use建立映射是可以用电脑城ghost XP来安装系统的,如果客户机启动的是PE,启用网络支持后用penetcfg建立映射既可以ghost安装,也可以安装微软原版的Windows XP。
@极度凶残
PXE无线网卡启动目前怕是很难做到,coolg大概说的是PXE有线网卡启动后加载无线网卡驱动而已吧。

[ 本帖最后由 liuzhaoyzz 于 2010-5-24 14:54 编辑 ]
作者: liuzhaoyzz    时间: 2010-5-24 17:48
grub4dos又有更新了。
http://code.google.com/p/grub4dos-chenall/
注:从2010-05-23版开始,PXE启动使用的菜单文件有修改,具体如下 优先尝试/MENU.LST文件,如果没有找到则使用以前的方式,但menu.lst目录修改为menu
注意:如果PXE启动有使用menu.lst目录的使用新版需要修改为MENU,否则可能会死机.
赶快上sysoft时空,一查,原来如此这般...
http://bbs.znpc.net/viewthread.php?tid=5916&extra=page%3D1
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=151084&extra=page%3D2&page=159
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=159851&extra=page%3D1&page=17
让我们看看chenall兄背后做出了多少努力吧,最终是他一锤定音:“我认为还是用menu.lst文件 + menu目录方式比较直观.”
http://code.google.com/p/grub4dos-chenall/updates/list#
无论如何更新,只要tftp下面有menu.lst就很快,我们完全接受替换menu\default的方式的更改,这就足够了。

[ 本帖最后由 liuzhaoyzz 于 2010-5-25 09:46 编辑 ]
作者: coolg    时间: 2010-5-24 21:58
原帖由 liuzhaoyzz 于 2010-5-23 15:26 发表
@zhangze
不是很明白你的意思,你说的不是PXE启动,说的好像主要是PXE启动后如何安装系统的问题吧。
“完全不需要Ghost那个服务端了”,是可以的,如果客户机启动的是maxdos或者mousedos,驱动网卡后用net us ...



是用笔记本做服务端,无线链接路由器,台式机有线接路由器。作为客户端PXE启动,以前都是用网线直接连接
作者: lk_EC93    时间: 2010-5-31 00:04
原帖由 liuzhaoyzz 于 2010-5-23 07:22 发表
PE下的网克有两种,内存要求256M就行,无论哪种,PE的SRS驱动都是最重要的,看不到客户机的硬盘一切都是枉然。
一种是利用grub4dos的grldr+winvblock(firadisk)驱动整体启动带网络支持的WINPE的ISO映像,扔个g ...


受益非浅!十分感谢!
作者: liuzhaoyzz    时间: 2010-5-31 15:41
原帖由 jamesdai2002 于 2010-5-23 10:40 发表
pxe启动dos下映射网络驱动器ghost也是个不错的选择, 不用考虑网卡驱动(驱动就是pxe rom)和硬盘控制器的驱动(驱动就是bios),就是ghost速度慢一点,大概400M/min


这个观点值得商榷吧?即使是DOS下网克,如果没有网卡驱动,无论使用net use还是用ghost多播,估计都是无法实现的,PXE ROM只能用来启动,如果真的不要网卡驱动了,maxdos和mousedos PXE版也不用集成那么多网卡驱动了。硬盘驱动不全网克估计也够呛,具体没有试过。

2010.5.30日,karyonix更新了firadisk,终于让它支持memdisk了!
http://www.boot-land.net/forums/index.php?showtopic=8804&st=240
v0.0.1.20
Detect MEMDISK RAM drive.
Test SSE2 memory copy code.
下载地址
http://www.mediafire.com/file/mn5j45gmomi/firadisk-driver-0.0.1.20.zip

[ 本帖最后由 liuzhaoyzz 于 2010-5-31 16:00 编辑 ]

firadisk-driver-0.0.1.20.zip

30.93 KB, 下载次数: 39, 下载积分: 无忧币 -2

原版的0.0.1.20

firadisk.rar

26.86 KB, 下载次数: 49, 下载积分: 无忧币 -2

做好的firadisk映像


作者: hhh333    时间: 2010-5-31 16:31
我记得map ISO 要求ISO连续存放吧,否则就要用,map --mem,就要占用内存,map过程也要花时间,倒还不如用全内置,减少麻烦。就目前测试的情况来看,g4d采用压缩格式比不压缩而传大文件更慢。不要太迷信firadisk、winvblock,我现在不知道它们是能够保存直接map的盘还是map --mem的盘,如果直接保持,进PE后网卡可能都没驱动,怎么去保持?如果是保持内存盘,真的意义很小。因此传统的方式我认为简单实用,肯定更稳定。

带上网络组件做成几十M的全内置问题是不大的,进PE驱动网络用服务器上的外置就更灵活可靠。网络启动比U盘启动也更稳定可靠。一个问题一旦复杂化,也就越不可靠。

另外,我也有个问题要请教,你讲的firadisk、winvblock,必须要在PE中装载才行吧?PE中如果不驱动,直接MAP你做的那2个IMA不行吧?

[ 本帖最后由 hhh333 于 2010-5-31 16:39 编辑 ]
作者: liuzhaoyzz    时间: 2010-5-31 17:26
欢迎hhh333大侠来讨论。map iso是要求连续存放,map --mem多占用ISO大小的内存,一个PE的ISO不过50M而已,虽然占用内存,但是map --mem方式还是比直接map方式兼容性好,外置版的很容易做到128M内存本地启动,即使加上50M,178M足够网络启动整个ISO了。而内置版的RAMPE,附带基本维护用的工具,有几个能够做到128M内存本地启动?
firadisk和winvblock只能把map --mem模式的仿真磁盘带入Windows,网卡驱动也外置,进入PE后再加载就行了啊。客观上讲,传统方式改这个改那个,还把个PE搞得七零八落的太麻烦了。对于我们这样的一般用户,为了使用PE而PE,原版不动整体启动还是简单的,对于为了研究PE而PE的大侠就另当别论了。
网络组件10M左右,直接放到核心之外,占用启动内存小多了,map到本地的cd后,cd上的所有外置本身就是可用的,不用主机上的外置了啊。
不是很明白你说的在PE中装载是什么意思?firadisk或者winvblock既可以内置到PE的内核中的\wxpe\system32\drivers下面,也可以以ima或img格式外置在ISO之外,无论内置还是外置g4d下都能够启动,我本人推荐外置方式,因为这样,无论他们怎么更新,PE本身不用更新。但是用于memdisk就必须内置了,因为memdisk还不支持多磁盘仿真,它一旦仿真就必须boot,winvblock的作者shao为memdisk打了补丁,初步成果是memdisk.c32,据boot-land的Icecube说,能够支持多映像,就是相当于map --mem,不过资料太少,我没有尝试成功过。所以只有等待shao为memdisk打补丁,让memdisk支持多磁盘仿真,那样firadisk或winvblock就可以以ima方式外置了。
说实话,我不认为全内置版的PE集成firadisk或者winvblock有什么必要性,没有他们一样可以启动,一样有外置。外置版的PE集成他们才显示出占用启动内存小,启动快的优势来。

[ 本帖最后由 liuzhaoyzz 于 2010-5-31 18:27 编辑 ]
作者: hhh333    时间: 2010-5-31 20:47
标题: 回复 #50 liuzhaoyzz 的帖子
谢谢!
1、我弄清楚了一个问题,就是不必改动PE,将那个驱动放到IMA或IMG中,再map到fd中就相当于驱动了吗?不要其他的什么命令了吗?
这究竟是如何做到的?装了后,对后续的MAP有作用还是对所有的?

2、我还是不明白它有什么优势。打个比方说,PE内核原文件60M,CAB压缩后30M+外置WIM 50M总共80M做成ISO,按LZ所说的整体启动,则

①先map含有firadisk驱动的IMA,这个占内存很小可以忽略不计 即占内存=0   花时间很少=0
②map --mem ISO,这是不是要占ISO大小的内存       即占内存=80M   花时间按每秒10M算=8秒
③再用ISO内部的setupldr.bin解压内核到RAMDISK                        即占内存=60M         解压时间按每秒10M需要3秒加载时间按未解压算3秒=6秒

合计  占内存=120M   花时间=14秒

再看传统方式:
将外置WIM50M放到内核+内核本身60M=110M,CAB打包后最多60M,启动时由setupldr.bin解包装载到内存占110M花时间解压时间6秒+加载时间6秒合计12秒

合计 即占内存=110M    花时间=12秒

这个帐我哪么算都觉得不合算!

[ 本帖最后由 hhh333 于 2010-5-31 21:23 编辑 ]
作者: liuzhaoyzz    时间: 2010-5-31 21:24
1、firadisk或者winvblock本来就是可以外置在ima中的呀,PE里面不用改动任何东西,不需要其他命令的呀,这里面不是有个txtsetup.oem吗,估计是firadisk和winvblock结合他来启动的。map --mem这个ima之后,可以一直保持到Windows里面,在Windows里面不是可以看到A盘的吗?不过有的看不到A盘,不知道是不是因为BIOS里面关闭了软驱,有的可以,有的不行,这点没有详细考证过,只要firadisk或winvblock能启动,看到仿真光盘,其他的我就没管了,反正大家都那样用,呵呵。
2、你分析的很透彻,第③小步好像占内存60*2+16=136M吧。
PE的启动内存和核心有关,大概为下面这个公式(只是大概)
1. 用CAB压缩过的核心
X*2+16(单位MB)(X为未压缩时的核心大小)
2. 不用CAB压缩的核心
X+32(单位MB)(X为未压缩时的核心大小)
总计应该是80+136=216M。
传统方式就少了那个80M,那样子单ISO启动,占用内存似乎是110+32=142M,这个和本地的136M相差无几啊?不过缺点是ISO本身太大110M,不便于网络传播和应用啊。能压缩存放当然很好啊。
我的意思是只要控制在256M之内启动,216M和142M是没有差别的,文件能小点肯定便于存放,而且整体启动的优势就是随便一个RAMPE就可以扔到tftp目录里面启动,不用改来改去的,省心。
你举的这个例子的PE大了点,我用的带局域网网络支持的通用PE,带基本维护工具,ISO大小53M,本地116M启动,网络170M启动后能网克。原版的通用PE,ISO 39M带基本维护工具,差别就更小了,本地116M启动,网络156M启动,这个虽然不能用来网克,但是用来维护还是可以的,比如万能gho文件已经存放在本地硬盘上,调整分区也可以。

[ 本帖最后由 liuzhaoyzz 于 2010-5-31 21:55 编辑 ]
作者: jamesdai2002    时间: 2010-5-31 21:54
标题: 回复 #51 hhh333 的帖子
我也是觉得hhh333 的有理, pxe启动用了好几年了,pxe启动其实最关键还是pe中必须包含所有的网卡驱动,启动完成后map服务器共享的外置程序,不压缩也就60M左右, 另外ghost 文件都放在服务器上,方便克隆。

pxe启动还是比较适合有服务器有网络的环境, 出去修电脑还是usb硬盘启动方便啊

firadisk或者winvblock肯定有他的优势,不过还不会淘汰老的pxe启动方式,因为没有明显的优势,会firadisk或者winblock的人也肯定有能力对pe进行简单的修改。

我的pxe启动服务器用pxelinux的字符界面,因为这样兼容性最好,grub4dos和pxelinux图形界面兼容性要差一些,相信增加firadisk也会导致一些兼容性问题。
作者: hhh333    时间: 2010-5-31 22:04
标题: 回复 #52 liuzhaoyzz 的帖子
整体启动的优势就是随便一个RAMPE就可以扔到tftp目录里面启动,不用改来改去的,省心.....

也不能随便吧,象水大的全功能版两百多M,起动后加内核也占点,没有512M内存可能吃不消。譬如我将我那个内置PE做成嵌套形式的整体启动PE,ISO文件70M,256M内存都启动不了。

吃内存,启动时间也长,我看这种整体启动实用价值不大,ISO文件较大的更吃不消。
作者: liuzhaoyzz    时间: 2010-5-31 22:05
@jamesdai2002
外置程序不是已经map到本地的cd了吗?不用映射主机上的任何共享都可以看到外置的啊?干嘛要映射网络盘???你说的方法似乎和我说的不同?

你说的很对,在启动logo上,我也很少花时间,毕竟3秒钟就跳过去了,花那么大力气做出来的东西兼容性还不一定好,中看不中用,g4d有人报道在某些情况下因为使用了图形菜单花屏,可能你在这台电脑可以使用,在其他电脑花屏。pxelinux方面有人报告图形模式会与sis显卡冲突,导致启动不了。简约即简单,呵呵,个人看法。
firadisk只是让Windows看到grub4dos或者pxelinux在实模式下仿真的磁盘,比如hd,cd,fd,就好比在Windows中做了个指向hd,cd,fd的快捷方式,应该不会与什么东西冲突吧。

@hhh333
你说的70M的ISO,256M启动不了,肯定是内置版PE吧?
如果做成外置版PE,只要保证没压缩过的内核小于50M,本地128M绝对可以启动。100M大小的外置版PE,都可以做到本地128M启动哦?内置版消耗内存的确太大。

[ 本帖最后由 liuzhaoyzz 于 2010-6-1 08:14 编辑 ]
作者: hhh333    时间: 2010-5-31 22:57
标题: 回复 #55 liuzhaoyzz 的帖子
我说的是网启,你不是说往TFTP丢吗?即将随便一个发布的ISO放TFTP,工作站启动时是不是要将这个map --mem XXPE.ISO (0xff),请问这个语句要多大的内存?如果这个 XXPE.ISO有256M大小,256M内存的机器还能够启动吗?
作者: liuzhaoyzz    时间: 2010-5-31 23:00
如果ISO256M大,外置版仍然可以做到本地128M启动,网络启动那最少要384M才能启动了吧。
如果整体启动,ISO要控制在128M之内才能在256M的内存上整体网络启动。

[ 本帖最后由 liuzhaoyzz 于 2010-5-31 23:04 编辑 ]
作者: hhh333    时间: 2010-5-31 23:08
标题: 回复 #57 liuzhaoyzz 的帖子
不要说本地,本地用firadisk或者winvblock更没用,本地可随时取的,要他干吗?这东西我看主要在UD和PXE时,本的的话非RAM<64M就可启动。经过跟你讨论我觉得这个东西越来越没什么用了。

这里致命的地方就是map --mem,要带给PE的东西先要放内存中,这两个东西的作用就是保持DOS下的这块内存进保护模式还能保留并使用。它应该从来就不节约内存,只能是更耗内存。

[ 本帖最后由 hhh333 于 2010-5-31 23:12 编辑 ]
作者: liuzhaoyzz    时间: 2010-5-31 23:12
RAMPE本地启动内存如果很小,那么网络整体ISO启动的内存才会小啊?网启内存或ud整体启动内存=本地启动内存+ISO大小,这个是有关系的。在ISO大小一定的前提下,就是如何做到减少本地启动内存了。我说的不是非RAM,说的就是RAMPE,双ISO启动的那种。
说到ud启动,如果整体放入ud,不都是map --mem的吗?如果直接放在ud扩展分区进行map,那就必须全内置了吧?全内置双ISO启动内存还是不小的。

[ 本帖最后由 liuzhaoyzz 于 2010-5-31 23:17 编辑 ]
作者: hhh333    时间: 2010-5-31 23:16
标题: 回复 #59 liuzhaoyzz 的帖子
不知道LZ对那两个东西评价那么高,依据何在?
作者: liuzhaoyzz    时间: 2010-5-31 23:18
就是减少启动内存,加快启动速度,而且用双ISO后,内核压缩,ISO整体较小便于网络传播,便于存放。
ISO小于128M,借助这两个驱动,绝对可以做到PXE或ud在256M之内启动,做法就是用较小内核的外置版PE。

[ 本帖最后由 liuzhaoyzz 于 2010-6-1 12:30 编辑 ]
作者: hhh333    时间: 2010-5-31 23:29
标题: 回复 #61 liuzhaoyzz 的帖子
我至今没有明白网启时它是如何减少启动内存的。能算笔账给我看吗?

[ 本帖最后由 hhh333 于 2010-5-31 23:31 编辑 ]
作者: liuzhaoyzz    时间: 2010-5-31 23:38
就用你上面那个例子,如果采用外置版双ISO,grldr+firadisk启动,网启80+60*2+16=216M启动。
如果不加载firadisk,比如采用内置版,grldr直接启动,都是指双ISO的那种,这样ISO整体压缩后才能做到较小。全内置大小80M,不采用firadisk,grldr网启内存=80(map --mem占用)+(60+50)*2+16=316.
这是双ISO,单iso的情况不讨论了,大部分的PE都是双ISO的。
加载firadisk,必须采用外置版才有意义,才会减少启动内存,内置版PE加载firadisk没有任何意义。同样80M大小的双ISO,同样的grldr启动方式,一个内置版没用firadisk,一个外置版用了firadisk,启动内存差别就100M。
hhh333还在吗?都凌晨0点了,睡觉去了,明天再驳吧。

[ 本帖最后由 liuzhaoyzz 于 2010-6-1 00:00 编辑 ]
作者: thmzlp    时间: 2010-6-1 01:31
学习了。多谢分享
作者: hhh333    时间: 2010-6-1 07:20
标题: 回复 #63 liuzhaoyzz 的帖子
应该是
前一种=80(ISO中包含压缩内核IS_+WIM外置)+60*2+16=216
后一种=60(ISO中包含内置程序的压缩内核IS_)+110*2+16=296
多消耗的内存=内置程序的大小*2-内置程序CAB压缩而节约的大小

以上是整体启动时ISO套IS_的情况,如果采用传统方式,全内置是不压缩的,应该就是110+32=146,比程序外置采用整体启动(用firadisk带外置到PE)要节约大致=整体启动包的大小-16

[ 本帖最后由 hhh333 于 2010-6-1 07:58 编辑 ]
作者: liuzhaoyzz    时间: 2010-6-1 08:04
不对呀?你说的情况不同吗?我们讨论的都是双ISO,而且ISO不解开的情况下,启动内存的差别。第二种ISO大小也应该是压缩内核30M+wim50M(wim格式本身是压缩的,再用cab压缩变化不大吧)=80M吧,区别只在于wim放在核心里还是放在核心外,无论如何,map --mem占用的80M应该是最少的,不会变的。
firadisk或winvblock提供了一个前提,这个前提就是使用了他们才有可能把外置程序外置来减小启动内存,如果不用他们,外置程序只能内置,否则看不到。

[ 本帖最后由 liuzhaoyzz 于 2010-6-1 12:29 编辑 ]
作者: hhh333    时间: 2010-6-1 17:53
标题: 回复 #66 liuzhaoyzz 的帖子
前面还是我算错了,后一种=80(ISO中包含内置程序的压缩内核IS_)+110*2+16=316
这个公式是没有错的:多消耗的内存=内置程序的大小*2-内置程序CAB压缩而节约的大小(因WIM已经经过压缩,再压的话大致减少=3~5%)也即全内置如果内核压缩的话要多付出2倍左右内置程序容量的大小。如果不压缩,当然只多出内置程序大小。

从这一点来看,全内置最好不压缩,缺点当然就是空间占得大一点,PXElinux启动时要稍慢(但g4d要快)。

再回到开头关于整体启动的话题,由于用内核级带入外置(应该叫内置),再整体启动显得毫无意义,只是增加内存消耗。但对于程序外置的PE,使用整体启动,通过firadisk或winvblock保留原ISO MAP出的盘还是有积极意义的,当然整体启动是要增加内存消耗的(即压缩内核大小+外置大小)。这样就得出如下结论:

1、全内置方式的PE,最好用非压缩格式的内核,因为外置在内核中,如果压缩将付出2倍外置的启动内存占用代价;而且也不要采用整体启动。这样如果是PXE启动,最好采取传统方式,其启动内存占用除PXE适当增加的部分=非压缩内核(含外置)+32M。

2、程序外置的PE,因内核不含外置较小,可以采用压缩方式。PXE启动时要想有外置,则必须借助firadisk或winvblock,采用整体启动方式将整个包含外置的ISO MAP出的内存盘带入windows。其启动内存占用除PXE适当增加的部分=(外置+压缩内核)+内核非压缩时的容量*2+16M。如果内核也不压缩则占用内存=(外置+非压缩内核)+内核非压缩时的容量+32M

我们举一个例来算一下:外置WIM=50M,内核非压缩时50M,CAB压缩率大致50%即25M
1、第一种方式占用内存: 内核非压缩时=50+50+32=132M     内核压缩时=(50+50)*2+16=216M
2、第二种方式占用内存: 内核非压缩时=(50+50)+50+32=182M  内核压缩时=(50+25)+50*2+16=191M

因内核一般固定在45~55大小,因此可以用如下公式对内存消耗进行估算,W代表外置WIM的容量:
1、第一种方式占用内存: 内核非压缩时=W+82     内核压缩时=2W+116
2、第二种方式占用内存: 内核非压缩时=W+132       内核压缩时=W+141

这样借助firadisk或winvblock,在PXE启动时利用整体启动方式,付出整个发布的PE的ISO容量大小的内存的代价而实现启动,看似简单,不要动原来的PE,但实际上也要做一个PXE启动的模板。如果ISO较大,也不一定适合。
(注:以上有关内核的内存消耗,用ISO形式进行了实机验证无误,IMG内核未测试)

[ 本帖最后由 hhh333 于 2010-6-1 19:41 编辑 ]
作者: liuzhaoyzz    时间: 2010-6-1 18:04
你总结和分析的很透彻很到位。是的,如果ISO较大不一定合适256M启动。不过一般来说,一般PE都是双ISO的,最终总体大小控制在128M,这样的PE附带网络支持,带基本维护工具,基本够用了,内核采用cab压缩,外置wim压缩,还是能做到256M启动的。主流的PE都是双ISO的,讨论单ISO意义不是很大。不压缩的PE怕是也很少,毕竟总体ISO小了之后便于网络传播和携带存放。我还是喜欢外置版PE,加个外置程序、网络支持啥的把wim往里面一拖就行了,省心啊,而且启动内存小,启动快。
PXE启动说复杂了需要启动模板,说简单点就扔几个文件而已,tftpd+grldr.0+menu.lst+RAMPEISO1,2,3...,都是没啥技术含量的体力活。

[ 本帖最后由 liuzhaoyzz 于 2010-6-1 18:41 编辑 ]
作者: dvd008    时间: 2010-6-1 18:05
有这么复杂吗?

我的pxe服务器,可以任意放到硬盘,在win系统下启动,
即可启动任意winpe。iso ,不需要什么驱动

另外,启动内存实际不是上面的,那不过是理论的

实际上,没压缩的winpe。iso ,启动时,是
iso大小+大约53M ,否则无法进入桌面

我最新的两个直接用于PXE的内核,一个39M,带网络的55M
作者: 快雪时晴    时间: 2010-6-1 18:26
谢谢hhh333提供参考
http://bbs.znpc.net/viewthread.php?tid=5925&pid=45072&page=1&extra=page%3D1#pid45072
grub4dos与pxeLinux的PXE启动测试(在无忧发了,没多少人关心,我觉得对改进G4D有用就在此发我的第一个帖吧)

grub4dos的PXE启动,以前在使用时启动速度比pxelinux明显要慢,因此就直接PASS了。近期经过chenall不点等几位大侠的努力,现在有了很快的速度了,从而与pxelinux具有了可比性,下面针对PE的PXE启动作了一些测试
分两步走,先测试grub4dos,再测试pxelinux并与grub4dos比较。
一、由grldr启动PE
1、传统方式dhcp-->grldr-->startrom.0-->(去掉启动头的)setupldr.bin-->PE映像
对PE映象的要求:
①不带装载程序的纯映像;
②不能压缩!
PE映像制作:
  为纯内核方式,可集成应用程序。即所谓的全内置核心。

2、整体启动dhcp-->grldr-->MAP PE映像 to 虚拟cd-->将启动转到这个虚拟cd
对PE映象的要求:
    ①必须带装载程序
    ②可以压缩。
PE映像制作有两种方法:
    ①启动镜像套PE纯映像的方式,如不装载特殊驱动只有内嵌的PE纯映像能带进PE,因此外置程序也必须内置到PE纯映象中。这种方式实际上是给全内置核心加一个启动程序外壳,完成全内置核心装载后这个壳就丢失了。这种方式内外两个映像都是可以压缩的。
    ②直接用全内置核心,并将之改造成非RAM方式启动PE。即将setupldr.bin进行一些修改,让其在PE所在盘直接启动。这个与上面的启动方式是不一样的,少了一个先把PE内核装载到RAMDISK的过程。也不存在镜像套镜像的情况。这个镜像可以压缩也可以不压缩。

二、先测试同一个镜像用两种方式的启动速度。
1、先要选一个能同时用以上两种方式启动的PE镜像,这里只有按以上2->②的不压缩方式制作。
2、直接在Winxp下可以测试,大家可以用我的那个ISO解开到硬盘的一个目录,再运行TFTP下的settftp.cmd,在TFTP界面中将DHCP启动文件改成grldt再保存就可以了
3、改菜单,我的PXE启动菜单在boot/grub/pxelinux.lst,加一项整体启动(我的新版中这些菜单和以上改动就做了,测试没什么问题后再上传)

title [01]--启动全内置WinPE 2003        Boot WinPE 2003 By Normal Method\nPE镜像不能以压缩方式存放。
#map --mem (pd)/BOOT/IMGS/firadisk.ima (fd0)
chainloader --force (pd)/BOOT/H3_PXELD.0
title [02]--整体启动全内置WinPE 2003    Boot WinPE 2003 By Map ISO to CD Before\nPE镜像可以用GZ压缩方式存放(根据镜像的大小可能需要更大的内存)。
map --mem (pd)/BOOT/IMGS/firadisk.ima (fd0)
map --mem (pd)/H3PE/WINPEIN.ISO (0xff)
map --hook
pxe unload
rootnoverify (0xff)
chainloader (0xff)

PXE整体启动时不加pxe unload不能往下启动,不加firadisk启动会蓝屏,这可能是非RAM方式造成的。
4、测试结果:只测试到全部装载完成所用时间(即第2次大于号滚动完成)
①grldr从DHCP开始到出菜单11秒。
②94M的非嵌套纯启动镜像第1种方式:27秒左右;第2种不压缩29秒,用压缩格式(70M)也要40秒左右。



之前一直用TangoPE和dos、linux在虚拟机中进行PXE测试,启动都很正常。
今天改用dos菜鸟提供MINIWIN98.ISO(或者其他不带firadisk驱动的PE),
发现如果不加pxe unload,就会提示pxe unload失败;


发现如果不加map firadisk驱动先,就会在Decompress阶段失败。



成功的菜单:
  1. timeout 30
  2. default 0
  3. unifont (pd)/wqy-microhei-lite_0_U16.bin

  4. title 中文MINI98Z42.iso
  5. map --mem (pd)/firadisk.IMA (fd0)
  6. map --mem (pd)/MINI98Z42.iso (0xff)
  7. map --hook
  8. pxe unload
  9. kernel (0xff)/BOOT/GRUB/MEMDISK.GZ
  10. initrd (0xff)/98Z42.ZIP
复制代码


znpc贴不了图,发这里了
作者: liuzhaoyzz    时间: 2010-6-1 18:36
PXE服务器本来就应该在XP下架设,不知道为什么那么多大侠都喜欢在PE下架设,这里好像有个问题,难道局域网里面就没有一台电脑是好的吗?能在XP下搞定的事情为什么要在PE下搞?这对于刚开始接触PXE启动的人是一种误导,语气重点可以称作“愚弄”。
老毛桃谈到PE的启动内存的时候用了一个词就是“只是大概”,理论和实际有差别,但不会很大,我用虚拟机测试过,感觉那个计算启动内存的公式挺准的。

[ 本帖最后由 liuzhaoyzz 于 2010-6-8 08:49 编辑 ]
作者: dvd008    时间: 2010-6-1 18:50
反正我的那个PXE服务器,XP,03,WIN7,PE下都好使,
启动内存是实机测试的数据.

需要启动哪个PE,就把WINPE.ISO拖到PXE目录即可
作者: 依然饭特稀    时间: 2010-6-1 22:57
早就想来顶这个帖子了,楼主的grub4dos+原版ISO的方法最好用了,大部分PE发布的ISO都可用(加FIRADISK).用Hanewin dhcp好一些,是以服务的形式运行的,前不久我把硬盘拆了,用同学的机子作服务机,Hanewin dhcp在他后台天天帮我无盘启动,嘿嘿.
作者: 尽善尽美    时间: 2010-6-24 17:49
这个学习一定要顶的!!楼主有心了!!
作者: hwslj    时间: 2010-6-24 19:02
提示: 作者被禁止或删除 内容自动屏蔽
作者: chenbaker    时间: 2010-9-7 17:13
给出TFTPD32+FIRADISK+GRLDR+WINPE做好的成品(只包括通用PE带网络支持的映像):52M
http://u.115.com/file/f0f211eefd
PXE以不同方式启动PE-通用PE带网络支持.rar

grldr+pxelinux启动的支持文件模板321k。采用grub4dos-0.4.5b-2010-05-23.zip里面的grldr
http://u.115.com/file/f0daff033c
[url=http://www.brsbox.com/filebox/down/fc/6a915e59592dc67a258e0813f866bb6c]http://www.brsbox.com/filebox/down/fc/6a915e59592dc67a258e0813f866bb6c[/url]

115盘的文件已经不存在,楼主能否更新一下地址,正需要这些东西
作者: lsbzhe    时间: 2010-10-17 13:59
感谢楼主分享!!!!
作者: lsbzhe    时间: 2010-10-18 14:30
楼主能更新下地址吗?
作者: loveheart    时间: 2010-10-19 09:53
看不懂,有空再学习下。
作者: papago    时间: 2018-10-20 21:21
PXE局域网启动PE方法汇总 标记,感谢!
作者: papago    时间: 2018-10-20 21:23
pseudo 发表于 2010-4-3 17:17
n年前0PE就是支持本地、网络、USB多重启动的PE。

1. “pxelinux.0查找到/menu.lst/default一系列菜单文 ...

P大厉害,标记。
作者: 2010kisssky    时间: 2024-1-6 13:44
1111111111111111111111111111111111111111




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3