无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 15694|回复: 50
打印 上一主题 下一主题

求教wim启动的正确方法和ramdisktftpblocksize 如何配置???

[复制链接]
跳转到指定楼层
1#
发表于 2012-10-27 10:41:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我的目的是想测试bootmgr pxe启动速度
bcdedit /store bcd /set {ramdiskoptions} ramdisktftpblocksize 8192
据说配置好bcd后下载速度飞快。


结果我卡在第一步了。
我从没做过wim格式的ramos,网上找了个Win7PE_v13.ISO
只是为了能尽快测试结果。

我先测试的是grub4dos==>bootmgr==>win7pe.wim
结果出错了。我是菜鸟。一时找不到错在哪里
特来此请教一下。


问题1:  如果是wim的ramos或者这样的winpe如何配置才能正确启动?
就是启动wim格式系统。



网上找了个win7pe iso 启动正常
title find and boot Win7PE_v13.ISO   527M  ok version
pxe blksize 1456
map /Win7PE_v13.ISO (0xff) || map --mem(pd) /Win7PE_v13.ISO (0xff)
map --hook
root(0xff)
chainloader (0xff)

这说明这个 iso是完全没问题的。










Win7PE_v13.ISO 解压后将里面的所有文件BOOTMGR win7pe.wim 和 BOOT目录都拷贝到了tftp服务器 启动目录内了



menu.lst里添加了

title win7
find --set-root /BOOTMGR
chainloader /BOOTMGR



结果是 error 13:  invalid or unsupported executable format
请问问题出在哪里?


附件有Win7PE_v13.ISO内结构的图片。

1.jpg (13.74 KB, 下载次数: 154)

1.jpg
2#
 楼主| 发表于 2012-10-27 10:42:51 | 只看该作者
Win7PE_v13.ISO/BOOT内的结构如下图

2.jpg (40.76 KB, 下载次数: 135)

2.jpg
回复

使用道具 举报

3#
 楼主| 发表于 2012-10-27 10:50:30 | 只看该作者
问题2. 如何配置 bcdedit /store bcd /set {ramdiskoptions} ramdisktftpblocksize 8192


是不是在win7pe下 执行 bcdedit /store bcd /set {ramdiskoptions} ramdisktftpblocksize 8192???
然后将bcd文件copy到tftp 启动目录下???就是和bootmgr同一个目录内???

我在win7pe内执行过 bcdedit /store bcd /set {ramdiskoptions} ramdisktftpblocksize 8192???

但出错误。

执行  bcdedit /store C:\bcd /set {ramdiskoptions} ramdisktftpblocksize 8192
也出错误。  

要建立一个正确可以启动系统的的bcd 应该还有其他很多参数吧?? 不光是配置
一个ramdisktftpblocksize 参数???


我的最终目标是 bootmgr pxe启动 win2003的 wim格式的ramos


希望有谁能指导一下。

谢谢
回复

使用道具 举报

4#
发表于 2012-10-27 10:54:33 | 只看该作者
我给你一套文件吧,把下面所有文件解压到/w8pe
可以修改mybcd.cmd(mybc8.cmd)重新生成bcd(bc8)文件,wim文件名称自己改。

菜单调用方法:
pxe keep
command /w8pe/bootw8pe.bat

--------------------------
注:因为千兆网卡百兆交换机的情况,也只能按百兆网速处理,这种情况5秒内按y键处理成百兆速度。

[ 本帖最后由 zhaohj 于 2012-10-27 11:09 编辑 ]

pxe.part1.rar

495 KB, 下载次数: 121, 下载积分: 无忧币 -2

pxe.part2.rar

161.48 KB, 下载次数: 97, 下载积分: 无忧币 -2

回复

使用道具 举报

5#
 楼主| 发表于 2012-10-27 11:10:05 | 只看该作者
谢谢zhaohj

我马上测试一下
回复

使用道具 举报

6#
发表于 2012-10-27 11:14:00 | 只看该作者
另外,把上面bootmgr.exe对应的mui文件,拷贝到/boot/zh-cn下

bootmgr.exe.rar

11.57 KB, 下载次数: 48, 下载积分: 无忧币 -2

回复

使用道具 举报

7#
 楼主| 发表于 2012-10-27 11:58:28 | 只看该作者
按zhaohj 的说明
测试了一下还是不成功。
应该说是我还不懂怎么放置这些文件

首先要说明的是我测试是在linux上的。所以有大小写的区分。
请问你给我的那些文件都是小写吗????
比如  bootmgr.exe对应的mui  和wim文件?? 我发现你的W8pe.WIM 和 W8pe1.WIM,W8pe2.WIM
都是大写的格式,我也按你mybcd.cmd 里对应的将我的winpe7.wim改成了W8pe.WIM 和W8pe1.WIM,W8pe2.WIM
结果还是不行。  (我没有重新生成新的bcd用你现成的bcd测试的,只是改了wim的文件名并转移到w8pe目录下)


出错信息为 error 13:  invalid or unsupported executable format



请问除了将你给的那些pxe.part2.rar pxe.par1.rar文件放在/w8pe
还需要将我找到的Win7PE_v13.ISO里的winpe7.wim改成了w8pe.wim改名放在/w8pe/w8pe.wim  ??

同时还需要将Win7PE_v13.ISO中BOOTMGR.exe改名为bootmgr.exe放在/bootmgr.exe
将Win7PE_v13.ISO中BOOT目录改名为boot放在/boot 并将里面所有文件都改名为小写文件???同时替换
bootmgr.exe对应的mui文件,拷贝到/boot/zh-cn下


???


是这样做吗???
回复

使用道具 举报

8#
 楼主| 发表于 2012-10-27 12:02:11 | 只看该作者
能否给我一整套的东西??? 除了WIM那个大文件外。这样我就知道那些是需要的。并也知道目录结构该是如何的
现在有点一头雾水
回复

使用道具 举报

9#
发表于 2012-10-27 12:08:30 | 只看该作者
首先pxe的引导文件是grldr,你linux上设法转到grldr引导。
除了6楼外,其他文件都放在tftp服务器的根w8pe下,包括wim文件

[ 本帖最后由 zhaohj 于 2012-10-27 12:14 编辑 ]

Snap1.jpg (64.26 KB, 下载次数: 152)

Snap1.jpg

Snap2.jpg (46.06 KB, 下载次数: 158)

Snap2.jpg
回复

使用道具 举报

10#
 楼主| 发表于 2012-10-27 12:20:58 | 只看该作者
首先pxe的引导文件是grldr,你linux上设法转到grldr引导。???



我通过grub4dos可以正常pxe启动iso winpe 和img的ramos 这是不是说明linux可以通过grldr引导???

menu.lst添加
pxe keep
command /w8pe/bootw8pe.bat


运行结果是:

coomand  /w8pe/bootw8pe.bat

Error 13:  invalid or unsupported executable format

这意思是bootw8pe.bat无法执行???? 还是bootmgr根本还没运行到就出错了???

[ 本帖最后由 buypro 于 2012-10-27 12:54 编辑 ]
回复

使用道具 举报

11#
 楼主| 发表于 2012-10-27 12:24:15 | 只看该作者
刚没看到你的图。
看来我那个启动管理器菜单都没进入。


你那图里没显示boot里的结构

除了你说的bootmgr.exe对应的mui文件,拷贝到/boot/zh-cn下

boot里面是否还有一套别的文件??? 我是将我那iso文件下boot目录直接
copy到了/boot,  只是简单替换了bootmgr.exe.mui

[ 本帖最后由 buypro 于 2012-10-27 12:41 编辑 ]

3.jpg (54.47 KB, 下载次数: 137)

3.jpg

4.jpg (26.15 KB, 下载次数: 139)

4.jpg

5.jpg (20.5 KB, 下载次数: 134)

5.jpg

6.jpg (24.42 KB, 下载次数: 141)

6.jpg
回复

使用道具 举报

12#
发表于 2012-10-27 13:00:28 | 只看该作者
w8pe/pxeboot.bcd也就是原来的bootmgr.exe修改而来。
bootw8pe.bat没法运行,说明你的grldr版本太老,请换成最新的
--------------
/boot/fonts下还有一些字库,不影响启动的(没字库大不了不会显示中文)。
哦,/boot/grub下需要chkpci外部命令(bootw8pe.bat运行需要)。
说明一下引导过程吧:
grldr->bootw8pe.bat(需要chkpci)->pxeboot.bcd(pxeboot.bc8)->w8bcd(w8bc8)->bcd(load boot.sdi and wim)->winload.exe

[ 本帖最后由 zhaohj 于 2012-10-27 13:07 编辑 ]
回复

使用道具 举报

13#
 楼主| 发表于 2012-10-27 14:07:32 | 只看该作者
我更新了grldr到最新版本
增加了 chkpci  是不是这里下载的??code.google.com/p/grubutils/downloads/detail?name=grubutils-2011-06-27.zip&can=2&q=
解包后是个5K的文件。


然后再测试
command  /w8pe/bootw8pe.bat
这次是 Error 15:  File not found


这是bootw8pe.bat没找到还是别的哪个文件没找到???
回复

使用道具 举报

14#
发表于 2012-10-27 14:14:08 | 只看该作者
哦,把下面文件解压到/boot/grub目录下

grub.rar

219.27 KB, 下载次数: 46, 下载积分: 无忧币 -2

回复

使用道具 举报

15#
 楼主| 发表于 2012-10-27 14:20:07 | 只看该作者
我将那个批处理换成

!BAT
pxe blksize 1456
map --mem (pd)/3g1.img.gz (hd0)
map --hook
root (hd0,0)
chainloader /ntldr


可执行。说明 批处理是被执行的。
回复

使用道具 举报

16#
 楼主| 发表于 2012-10-27 14:41:13 | 只看该作者
谢谢帮我找问题。我这次按你说的添加了这两个文件
chkpci 和 pci.txt
结果还是Error 15

由此怀疑chkpci 和 pci.txt具体应该在什么位置



既然是路径有问题。 我采用了绝对路径
这次执行下去了。
屏幕显示出  Press y key Run 100M loaded within 5 seconds:

不管我选择Y还是 不按任何键
接着就显示出

tftp download failed

你图片上的那个3个选项的菜单都没显示出来。
这是不是还是路径问题??? 到底是下载什么的时候没找到文件???



!BAT
debug off
chkpci -net /w8pe/pci.txt > (md)0x200+1
cat --locatei=vmware  (md)0x200+1 && chainloader --force /w8pe/pxeboot.bc8 && boot
clear
echo -e \n\nPress y key Run 100M loaded within 5 seconds:
set keyt=
pause --wait=5 --test-key && set /A keyt=*0x4CB00
if %keyt%==0x1579 && chainloader --force /w8pe/pxeboot.bcd && boot
cat --locatei=gigabit (md)0x200+1 && chainloader --force /w8pe/pxeboot.bc8 ! chainloader --force /w8pe/pxeboot.bcd
boot
回复

使用道具 举报

17#
 楼主| 发表于 2012-10-27 14:46:28 | 只看该作者
这个!BAT是否能简单写成


!BAT
chainloader --force /w8pe/pxeboot.bc8 && boot

????

这样 我返回的的是 tftp failed
这说明 chainloader --force /w8pe/pxeboot.bc8 && boot
这句代码无法正确执行。会是什么问题???

给我的感觉是bootmgr是接管了。然后启动pxe下载,结果没下载到
东西


会不会还是路径问题?还是需要重新生成个新的bsd???
配置bcd中哪个路径的大小写混淆了? 在windows下是无关紧要
在linux下就找不到文件了

[ 本帖最后由 buypro 于 2012-10-27 15:00 编辑 ]
回复

使用道具 举报

18#
发表于 2012-10-27 15:44:17 | 只看该作者
这说明 chainloader --force /w8pe/pxeboot.bc8 && boot
这句代码无法正确执行。
-----------------------------
说明你不是千兆环境,即交换机与网卡都要千兆。
试试百兆环境的:
pxe keep
chainloader --force /w8pe/pxeboot.bcd

首先让它能够运行,再排除你的问题

[ 本帖最后由 zhaohj 于 2012-10-27 15:46 编辑 ]
回复

使用道具 举报

19#
 楼主| 发表于 2012-10-27 15:59:32 | 只看该作者
menu.lst
添加了
pxe keep
chainloader --force /w8pe/pxeboot.bcd

测试后还是tftp download failed.
回复

使用道具 举报

20#
 楼主| 发表于 2012-10-27 16:02:26 | 只看该作者
是不是在请求下载w8bcd时 出错了???
回复

使用道具 举报

21#
发表于 2012-10-27 16:05:42 | 只看该作者
原帖由 buypro 于 2012-10-27 16:02 发表
是不是在请求下载w8bcd时 出错了???


你可以在tftp上查看一下记录

pxeboot.bcd对应的是w8bcd、bcd
回复

使用道具 举报

22#
 楼主| 发表于 2012-10-27 21:55:24 | 只看该作者
zhaohj 谢谢你了

至于查询tftp的erro log.这要我命了。
这是我一年前装的。现在早忘记了。刚才翻看了manual.
里面有好几个参数是配置log的。 都用的比较专业的名词。
无法理解。

看来我缺的知识不少。我还是先慢慢摸索做个usb启动的wim
ramos等熟悉了,再换成pxe的。

不过miscrosoft的启动工具以前就很困扰我。最后是绕过ms的ntldr
换了G4D才成功的。
回复

使用道具 举报

23#
 楼主| 发表于 2012-10-28 12:36:44 | 只看该作者
zhaohj 我在想

Error 13:  invalid or unsupported executable format
这是grub4dos的错误提示(我测试后 blocksize配置错了也会出现这样的错误提示)


那么tftp download failed.
这是bootmgr的错误提示?????
回复

使用道具 举报

24#
 楼主| 发表于 2012-10-28 12:47:47 | 只看该作者
既然我3个选项的菜单都没看到
应该是下载bcd文件时候出错了

windows和linux的路径斜杠是不同的

linix-root=/tmp/mnt/sda_part1/atftpboot

C:\...\winpath


会不会是这个原因导致无法下载路径错误。有没有办法纠正?
回复

使用道具 举报

25#
 楼主| 发表于 2012-10-28 12:49:29 | 只看该作者
可能这需要修改bootmgr了吧????

[ 本帖最后由 buypro 于 2012-10-28 12:50 编辑 ]
回复

使用道具 举报

26#
发表于 2012-10-28 12:52:17 | 只看该作者
把你的配置文件上传我看看。
简要说明一下你的pxe环境,如dhcp及tftp

[ 本帖最后由 zhaohj 于 2012-10-28 12:55 编辑 ]
回复

使用道具 举报

27#
 楼主| 发表于 2012-10-28 13:10:24 | 只看该作者
w8pe/pxeboot.bcd也就是原来的bootmgr.exe修改而来。



你说的修改是简单改名还是修改了bcd路径等???因为普通bootmgr都是在boot目录下找bcd的。
不知道我的理解是否有错

能够透露一下怎么修改????我想将bootmgr里指向bcd的路径的斜杠改掉再测试

[ 本帖最后由 buypro 于 2012-10-28 13:32 编辑 ]
回复

使用道具 举报

28#
 楼主| 发表于 2012-10-28 13:19:19 | 只看该作者
OK

我的服务器端是linux. 实际就是dd-wrt的路由
采用dnsmasq作为dhcp及tftp
dnsmasq.cnf配置表如下
#######################
interface=br0
resolv-file=/tmp/resolv.dnsmasq
all-servers
domain=DD-WRT
dhcp-leasefile=/tmp/dnsmasq.leases
dhcp-lease-max=50
dhcp-option=lan,3,192.168.11.33
dhcp-range=lan,192.168.11.3,192.168.11.222,255.255.255.0,1440m
dhcp-boot=grldr,dd-wrt,192.168.11.33
enable-tftp
tftp-root=/tmp/mnt/sda_part1/atftpboot
##############################################


我也查过了只有dhcp的log,不提供tftp 的log参数。也就是tftp活动没有log.


我这样的配置grub4dos pxe  img, iso, gz等格式的ramos都没问题,只是加载镜像的速度慢。千兆网卡的速度和百兆网卡的tftp下载速度一样
也不知道grub4dos的作者是否有可能提高blocksize的参数的值以加快下载pxe下载镜像的速度

由于pxe wim需要bootmgr参与,可能会出现路径问题。
以前我用ntldr引导img ramos同样无法成功
最后改用g4d firedisk 绕过ntldr才成功。

所以我猜测这次还是碰到了路径问题。因为ntldr 和 bootmgr都是ms的产品。如果要想在linux上
执行 路径总会出错的。

如果能修改bootmgr.只需要将bootmgr里指向bcd的路径的斜杠改成linux的格式就行了。

[ 本帖最后由 buypro 于 2012-10-28 13:51 编辑 ]
回复

使用道具 举报

29#
 楼主| 发表于 2012-10-28 13:30:57 | 只看该作者
客户端采用不同网卡自动配置不同的menu.lst

title 100M wim
pxe keep
chainloader --force (pd)/w8pe/pxeboot.bcd



title  bootw8pe.bat
pxe keep
command /w8pe/bootw8pe.bat

1.jpg (20.69 KB, 下载次数: 130)

1.jpg
回复

使用道具 举报

30#
发表于 2012-10-28 14:19:52 | 只看该作者
你可以用winhex打开pxeboot.bcd、w8bcd文件
linux可能有大小写之分,你修改一下看看。

Snap1.jpg (89.42 KB, 下载次数: 136)

Snap1.jpg

Snap3.jpg (54.83 KB, 下载次数: 162)

Snap3.jpg
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-12-1 20:02

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表