titanbai 发表于 2007-5-29 11:46:17

终于搞定PXE启动PE2.0映像了

搞了一星期终于搞定了,前面都是按照WAIK的User Guide里写的作的,里面有一章叫:Deploy an Image by using PXE
里面的步骤是安装好WAIK以后,在Windows PE Tools Command Prompt中
copype.cmd x86 c:\winpe_x86
imagex /mountrw c:\winpe_x86\winpe.wim 1 c:\winpe_x86\mount
copy c:\winpe_x86\mount\Windows\Boot\PXE\*.*
copy c:\Program Files\Windows AIK\Tools\PETools\x86\boot\boot.sdi
copy c:\winpe_x86\winpe.wim
------这里有问题,其中有一个bootmgr.exe不用拷贝到boot下而需要拷贝到tftp根目录下,微软的说明有问题,这个问题造成我几天工夫------
然后制作自己的BCD文件,放到
这样文件和目录上就OK了,现在开始来配置PXE。
-----------------------------
按照微软文档说明里这样写的:
Deployment process
A client gets directed (via DHCP Options or the PXE Server response) to download WDSNBP.COM
WDSNBP.COM validates the DHCP/PXE response packet and proceeds to download PXEBoot.com.
Note:
PXEBoot.com requires the client to press the F12 key to initiate PXE boot. One can rename one of the other PXE boot files (such as pxeboot.n12) to get WDSNBP.COM to download a different file.
PXEBoot.com downloads bootmgr.exe and the BCD store. The BCD store must reside in a \boot directory in the TFTP root folder. Additionally, the BCD store must be called BCD.
Bootmgr.exe reads the BCD operating system entries and downloads Boot.sdi and the Windows PE image (Winpe.wim).
Bootmgr.exe begins booting Windows PE by calling into Winload.exe within the Windows PE image.
-----------------------------
根据这个说明配置PXE如下
在根目录放上pxelinux.0,然后建立一个目录叫pxelinux.cfg,里面放一个default文件,文件内容如下:

default winpe2
prompt 1
timeout 30

label winpe2
      kernel \boot\pxeboot.0

注意上面黑体的那一行,按照微软文档里说应该写的是WDSNBP.COM,但我实际运行不行,将WDSNBP.COM拷贝一份改成WDSNBP.0,在default文件里指定到\boot\WDSNBP.0,可以找到但连接不到TFTP,报错误如下:
Downloaded WDSNBP
Architecture: x86
Please wait while the machine account is created.
Contacting Server: 172.19.95.51
Failed to restart TFTP
TFTP download failed.
PXE-M0F: Exiting Intel PXE Now
Operation System not found
查找了很多资料,微软官方说明http://support.microsoft.com/kb/926172/en-us
里说需要修改DHCP的选项
在某些环境, 可能适用于下列 DHCP 选项用于直接 PXE 客户端到适当的网络启动文件来下载: •60 = 客户标识符设置为 PXEClient 的字符串值•66 = 启动服务器主机名•67 = 引导文件名称
后来看没办法了,看到了上面文档里的可以直接指向pxeboot.com从而跳过WDSNBP,default文件里改成kernel \boot\pxeboot.com,一样出现找不到文件停住的问题,最后拷贝一份改成pxeboot.0,一切OK!

希望能够对大家有点参考作用!

titanbai 发表于 2007-5-29 11:48:33

因为使用的是别人写好的BCD文件,所以还没有出现BCD的错误,一但能够看到Boot Manager界面了,说什么驱动不对什么的,那就是BCD文件不对了,需要用bcdedit去自己写一个,这个回来有心得了再来分享吧!:)

Climbing 发表于 2007-5-29 12:09:41

早在几个月前DOS联盟论坛的xugaohui朋友就解决了PE 2.0的PXE启动问题。

titanbai 发表于 2007-5-29 12:25:36

啊,是吗?我是一直找不到相关资料,所以没办法才自己看的,怎么不发在这个论坛啊,发到DOS里。。。。。

titanbai 发表于 2007-5-29 15:18:30

请问一下版主你说的xugaohui发的贴子在那里啊,我也好参考一下,怎么找不到呢?

armymangl 发表于 2007-5-29 16:08:56

原帖由 titanbai 于 2007-5-29 03:18 PM 发表 http://bbs.wuyou.net/images/common/back.gif
请问一下版主你说的xugaohui发的贴子在那里啊,我也好参考一下,怎么找不到呢?
到dos联盟搜索xugaohui不就可以看到了,除非不能搜索

xywlty 发表于 2007-5-29 18:57:44

原帖由 titanbai 于 2007-5-29 03:18 PM 发表 http://bbs.wuyou.net/images/common/back.gif
请问一下版主你说的xugaohui发的贴子在那里啊,我也好参考一下,怎么找不到呢?


在这里那!!!

http://www.cn-dos.net/forum/viewthread.php?tid=19003&fpage=1&highlight=%2Bxugaohui

michael_xm 发表于 2007-5-29 22:28:20

微软的BDD真是弄得人头大. 光文档就有tons of it. 还要来回折腾.不过,很傻瓜式. 只要照着文档做就成了,没有特别的技术含量.

这些天,正研究这个呢.

titanbai 发表于 2007-5-30 10:10:36

原帖由 Climbing 于 2007-5-29 12:09 PM 发表 http://bbs.wuyou.net/images/common/back.gif
早在几个月前DOS联盟论坛的xugaohui朋友就解决了PE 2.0的PXE启动问题。

版主老大,你看清楚那个人写的内容了吗?:o
xugaohui写的内容是关于使用PXE启动DOS和PE1.6映像的方法啊!


再怎么说我的也是自己研究出来的,我还没看到那里有写过,Google上只搜索到问题,没发现解决方法。
我的贴子说的是用PXE启动WINPE2.0映像就是wim格式映像啊:'( 我自己研究的东西不会被人说是抄袭吧?

xieliuyun 发表于 2007-5-30 12:34:56

楼主原创很好!
不过xugaohui应该是去年已经研究促来了!
因为我1月的帖子就引用了它的成果!
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=90605&extra=page%3D5

topvs 发表于 2007-5-30 16:34:40

偶是新手还看不懂这么高深的东东。。。。。。。:L :L :L :L :L

Climbing 发表于 2007-5-30 17:24:47

Re 楼主:

我并没有看到xugaohui的帖子,但在他发布的十分经典的pxe启动包:tftpboot.zip中,很早以前就解决了PE 2.0的启动问题,当然也是用Vista的bootmgr和bcd来搞定。这些资料均来源于群讨论和下载中。我个人由于对PE 2.0并不感冒,因此并没有深究PE 2.0的PXE启动方法,请楼主原谅。

当然,楼主的原创性是很值得肯定的,你至少添补了这个空白。不过我怀疑国外应该更早有人解决了这个问题,国内的新技术大部分总是落后于国外的。可能你在搜索时过于偏重国内的网站而忽略了外文网站。

Climbing 发表于 2007-5-30 17:35:53

我以pxe "PE 2.0" 为关键字用google进行了搜索,发现在国内的论坛上很少有解决pxe启动PE 2.0这个问题的,倒是楼主这个帖子排名很靠前,而外国的邮件列表或者论坛里,讨论的就相当多了,而且很多讨论直指问题的关键。这个pxeboot.com我不知道是从哪里来的(这应该相当于PE 1.0中的startrom.com),同时还有一个pxeboot.n12(相当于1.0中的startrom.n12),想来应该从BDD或者WAIK中获得。个人感觉应该使用pxeboot.n12作为启动文件(最好改名为pxeboot.0),而xugaohui就是这么做的。另外,那个wdsnbp.exe只有在使用Windows Deploy Service时才用得到,它就是用来验证Windows Deploy Service的正确性的,所以没有必要启动它,尤其你如果使用传统的PXE服务器时。微软的PXE服务器是很格味儿的,它使用了不同的端口(好像是4011),微软就是一个不兼容的缔造者(看来一定要打倒微软才行)。

titanbai 发表于 2007-5-30 18:14:22

晕晕晕。。那篇文章根本没说怎么搞定启动WINPE2.0的,只是说了一句“pxe启动vista pe 2.0成功。pe 1.0就没什么值得研究的了 ”

学习东西难道不应该是知其然同时还要知其所以然吗?我写的这些东西应该是第一次看到,如果没有我写的那么详细的过程,有人知道为什么那样作吗?如果那位老兄能够把过程说出来,我也不至于忙活了一个星期啊

在那个贴子的回贴中看到了和我一样的兄弟:
kate1997
新手上路

Quote:
Originally posted by xugaohui at 2006-12-10 11:39 PM:
pxe启动vista pe 2.0成功。pe 1.0就没什么值得研究的了



能否详细点介绍如何启动vista PE?

titanbai 发表于 2007-5-30 20:54:46

pxeboot.com是从WAIK生成的WIM映像中来的,就在我写的那一步:copy c:\winpe_x86\mount\Windows\Boot\PXE\*.*

另外我搜索的时候是所有都搜的,当然E文的一般都只看前面两页,我也看到有人解决了的,但只是把目录列表列出来,那个目录包含了太多文件,根本不知道那些是必须使用的文件,我的目的就是找到必须要的文件,所以作了这一番试验.

titanbai 发表于 2007-5-30 20:59:11

另外,那个wdsnbp.exe只有在使用Windows Deploy Service时才用得到,它就是用来验证Windows Deploy Service的正确性的,所以没有必要启动它,尤其你如果使用传统的PXE服务器时。微软的PXE服务器是很格味儿的,它使用了不同的端口(好像是4011),微软就是一个不兼容的缔造者(看来一定要打倒微软才行)。

谢谢版主告诉我WDSNBP是干什么的.
另外PXE使用4011端口是PXE协议规定的,由于PXE协议和DHCP协议端口和包格式都是一样的,所以在PXE和DHCP装在一台机器上时,PXE需要启动在4011端口,用户机器在取得DHCP后由DHCP知道需要往4011再发送一个网络包取得PXE,如果不在一台机器上就都会启动在(好象是67端口),PXE回应的包比DHCP多出一个PXEClient的标识.

Climbing 发表于 2007-5-30 21:14:49

不管怎么说,xugaohui确实很早就解决了这个问题。对于这种技术性的东西,有些人可能喜欢公布其细节,也就是所以然(例如楼主这样的),而有些人可能不喜欢这样做,例如xugaohui。不过我看到的很多国外网站上的东西公布的还是很详细的,其实启动PE2.0本来就没有什么太复杂的技术,说白了就是在bootmgr.exe和pxe服务器之间多加一个引导程序而已,就正如PE 1.0中的NTLDR和pxe服务器之间的startrom.n12,只不过这里换成了pxeboot.n12而已。

xugaohui 发表于 2007-6-19 01:16:49

网友说国内有人pxe引导pxe 2.0成功。于是用google去找,今天终于在这里发现有人用这个bcd文件。它对应的pe 2.0镜像文件名是winpe.wim。我也不记得当时怎么生成出这个bcd文件。当时网上只有英文pe 2.0可下载,我是在简体vista测试版上生成的bcd。按照微软的帮助文件是不可能正确bcd.网上也一直找到能正确生成bcd文件的资料,参数了很多bcd方面的文章。无数的启动失败终于搞好了bcd。为了大家方便使用文件名直接指定为winpe.wim了。楼主所以微软的帮助文档里面的bootmgr.exe放错了地方却实是这样的。其实boot目录下还要建立Fonts目录,里面有wgl4_boot.ttf这个字体文件。

Climbing 发表于 2007-6-19 08:58:36

大侠xugaohui终于来了。欢迎!

我写了一篇总结性的帖子。就在这两页吧。

titanbai 发表于 2007-8-27 13:35:42

好久没来了,一直忙别的了,现在又开始接着搞PE启动的东东,欢迎Climbing版主总结一下

z640919a 发表于 2007-8-30 17:41:12

这是lyncom (阿楠) 的采用最新版本WinBuilder v069制作的精简版vistaPE2.0用PXE启动,不知为何
找不到光驱.

nm888 发表于 2007-10-21 09:36:30

怎么没有人接着写了呢,好想学这方面的东西。

fatality 发表于 2009-11-3 20:18:37

用PXE方式启动, BCD文件要怎么写呢?

papago 发表于 2018-10-15 18:03:47

感谢titanbai的分享“终于搞定PXE启动PE2.0映像了”
页: [1]
查看完整版本: 终于搞定PXE启动PE2.0映像了