无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 15510|回复: 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, 下载次数: 148)

1.jpg
51#
发表于 2019-12-12 14:24:30 | 只看该作者
下载不了没权限
回复

使用道具 举报

50#
 楼主| 发表于 2013-8-29 19:24:28 | 只看该作者
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tmp/mnt/sda_part1/atftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-s -vvv -m /tmp/mnt/sda_part1/opt/etc/tftp_remap.conf"
RUN_DAEMON="yes"
OPTIONS="-l -s /tmp/mnt/sda_part1/atftpboot"





#  /usr/sbin/tftpd-hpa -l -s /var/tftpd-hpa



#  working version
# /tmp/mnt/sda_part1/opt/usr/sbin/tftpd-hpa -l -s /tmp/mnt/sda_part1/atftpboot -m /tmp/mnt/sda_part1/opt/etc/tftp_remap.conf -a0.0.0.0:69
回复

使用道具 举报

49#
 楼主| 发表于 2013-8-29 19:20:02 | 只看该作者
rgG [\] /
#convert all file and pathnames to lower case
#not elegant, but working ...
#tftp_remap.conf
rg        B                b                # lower case
rg        C                c                # lower case
rg        D                d                # lower case
回复

使用道具 举报

48#
 楼主| 发表于 2012-11-5 23:21:11 | 只看该作者
是的。
就是那样编写了个remap.remap
不过最后下载镜像win前的时候就卡在那了
没任何错误提示。  

经过测试不使用 remap无法进入菜单。
使用了菜单可以进入菜单说明remap起作用

以前使用修改bootmgr,在同样的步骤的时候会出现错误提示
改用remap和非修改的bootmgr.则在下载现在菜单的某以项后
无法继续下去。就卡在那无任何错误提示。


我现在改用了tftp-hpa。该服务机器支持remap

[ 本帖最后由 buypro 于 2012-11-5 23:26 编辑 ]
回复

使用道具 举报

47#
发表于 2012-11-2 16:51:45 | 只看该作者
编写tftpd.remap文件,将Windows与Linux的文件路径进行转换
Windows的文件路径格式是\*\ ,而linux是/*/ 那么在进行混搭的时候,是需要考虑这种转换的,具体就需要使用remap文件,remap文件很简单,就一行
gr \\ /

将文件保存在/var/lib/tftpboot下
修改tftp配置文件 vi /etc/xinetd.d/tftp
server_args             = -s /var/lib/tftpboot -m /var/lib/tftpboot/tftpd.remap –vvv
改成如上所示
重启tftp服务
service xinetd restart
这样Linux服务器端就算完成了。

[ 本帖最后由 zhaohj 于 2012-11-2 16:54 编辑 ]
回复

使用道具 举报

46#
 楼主| 发表于 2012-10-30 23:52:48 | 只看该作者
zhaohj  谢谢你


我现在明白了。需要换一个支持remap的tftp服务机器
那样会自动替换掉斜杠
回复

使用道具 举报

45#
发表于 2012-10-30 16:28:21 | 只看该作者
恭喜,基本成功了。
我贴个log你看一下吧:

Snap1.jpg (71.5 KB, 下载次数: 153)

Snap1.jpg
回复

使用道具 举报

44#
 楼主| 发表于 2012-10-30 12:06:51 | 只看该作者
接下来是先下载.sdi 还是 wim文件??? 这个 A required device i 是指wim还是sdi ??



发现这个帖子的情况我一样
好像也是讨论服务器在linux 的情况  
http://reboot.pro/13977/

最后结果是可以pxe的

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

使用道具 举报

43#
 楼主| 发表于 2012-10-30 10:36:09 | 只看该作者
zhaohj  我改用了你的bcd 和w8bcd
bcd改路径斜杠和大小写
w8bcd只改大小写 不改斜杠


现在顺利看到了你的3个菜单了


我用自己的wim测试 下一步是出错的

Status:  0xc000000f
Info: A required device isn't connected or can't be accessed

我现在在查bcd的配置,好像没什么错误呀

[ 本帖最后由 buypro 于 2012-10-30 11:20 编辑 ]
回复

使用道具 举报

42#
 楼主| 发表于 2012-10-30 10:18:18 | 只看该作者
发现个新问题


如果我用pxeboot.n12 和  bootmgr.exe引导  
pxeboot.n12修改路径和横档

bootmgr.exe 只修改大小写 \BOOT\BCD
bootmgr.exe修改后 PEChecksum.exe bootmgr.exe

则出错信息成了


A recent hardware or software change might have installed a file that is signed incorrectly or damaged, or that might be malicious software from an unknown source.
If you have a Windows installation disc, insert the disc and restart your computer. Click "Repair your computer," and then choose a recovery tool.
Otherwise, to start windows so you can investigate further, press the ENTER key to display the boot menu, press F8 for Advanced Boot Options, and select last known good. If you understand why the digital signature cannot be verified and want to start Windows without this file, temporarily disable driver signature enforcement.

status: 0xc0000428

Info: Windows cannot verify the digital signature for this file.



这是什么情况? 有人知道这是什么意思吗??


找到一个描述这个错误的帖子
http://answers.microsoft.com/en-us/windows/forum/windows_7-windows_install/status-0xc0000428-windows-cannot-verify-the/61e0a86d-b444-4d79-a027-46edb6a62aed

[ 本帖最后由 buypro 于 2012-10-30 10:24 编辑 ]
回复

使用道具 举报

41#
发表于 2012-10-30 09:52:29 | 只看该作者
linux上启动文件要改成.0,你把pxeboot.bcd改成pxeboot.0试试
关于/及\,TFTP应该会自动转换的。
回复

使用道具 举报

40#
 楼主| 发表于 2012-10-29 11:51:33 | 只看该作者
zhaohj  你没明白我的意思。
我是想在linux下pxe

我相信windows服务器一定是可以顺利pxe的。
但是我的目标是使用linux去pxe并尽量提高下载速度

不过以前我测试过ntldr引导的img. windows可以顺利通过。
linux就卡住。也研究不出原因只是猜测是路径问题。


windows平台我测试了也没用。
因为现在我就是用dd-wrt里的tft引导的img.
如果要用windows那需要多个设备了。。我是自己家里用的
dd-wrt完全能满足我的需要了。


前几天是看了你们以前的贴子发现bootmgr的方式可以提高
速度。所以想看看是否也能在linux平台下也通过。

看来是没甚么希望了


以后我换个linux下的tftp带log的 再看看log内容.

只是希望以后g4d也能配置高数值的blocksize,让千兆网卡
也能在pxe里发挥作用。

虽然没成功。还是要谢谢你的耐心指导。本来我对整个过程和各个
文件的作用没什么了解。通过这次总算懂了点皮毛。

[ 本帖最后由 buypro 于 2012-10-29 11:55 编辑 ]
回复

使用道具 举报

39#
发表于 2012-10-29 09:26:06 | 只看该作者
现在关键是tftp服务器问题,你可以找一台windows系统的机器,安装TFTP。
如我自己,dhcp与tftp是分开的,你只要修改dhcp作用域选项66、67
下面是hantftp,可以看log实时记录
http://www.hanewin.net/tftp-e.htm
回复

使用道具 举报

38#
 楼主| 发表于 2012-10-29 09:13:16 | 只看该作者
zhaohj 你说的来没错

pxeboot.bcd和w8bcd是已经运行了。
你30楼两个图片的文件我都改过了
卡在下载bcd的过程或者处理bcd的内容上的这一步骤上了。

bcd里面的内容我也看过了,应该没什么问题。也尝试改过没作用


简单win7pe我找了个32M的 尝试过。grub4dos可以加载并顺利进桌面。
用bootmgr引导也是在同样的阶段卡住出现了同样的错误提示。
bcd里的横杠我改过几处。也没效果。我猜想bcd不应该改的。改了bootmgr处理
里面的内容会出错的。

我google了很多次了。如果在linux上部署的话。都只提到采用pxelinux加载wim格式的镜像pe
没有找到过用bootmgr加载的例子. 也没人提到过。
回复

使用道具 举报

37#
发表于 2012-10-29 07:52:56 | 只看该作者
那说明pxeboot.bcd和w8bcd已经运行,30楼的第二幅图修改了吗?
bcd里面的内容可以看mybcd.cmd,根据wim里面的内容更改。你可以先加载一个简单的W8PE.WIM
bcd里面的横杠你看一下。
----------------
难道没有windows系统的服务器?

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

使用道具 举报

36#
 楼主| 发表于 2012-10-28 20:33:00 | 只看该作者
我将bcd改名后故意让bootmgr读取不到
结果也出现了同样的错误界面


还有那些路径牵涉到读取bcd的???
是否bootmgr里面还有别的路径或者横杠需要更改?

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

使用道具 举报

35#
 楼主| 发表于 2012-10-28 20:15:50 | 只看该作者
经过修改pxeboot.bcd 和 w8bcd

用以下引导
title 100M wim
pxe keep
chainloader --force (pd)/w8pe/pxeboot.bcd
总算进入下一个界面 但是还是出错


windows boot  manager   your ip: 192.168.11.33


windows failed to start A recent hardware or software chage might be the cause. to fix the problem


1.insert your windows installation disc and restart your computer

2  choose yourlanguage settings and then click next

3.click repare your compter


File:  /w8pe/bcd
Status: oxc000000d

Info the boot configuation data for your pc is miss or contains error



如果换成  路径如果是\w8pe\bcd
出错代码稍微有点变化

File:  \w8pe\bcd
Status: oxc0000034




总结一下

以前tftp fail的错误看起来是路径斜杠和大小写问题导致的。  

现在bootmgr下载了bcd, 但是发现有错误。这一般指什么样的错误???
无法读取菜单?
究竟是没下载到bcd还是下载bcd后读取bcd内部数据时候出错???

[ 本帖最后由 buypro 于 2012-10-30 09:36 编辑 ]
回复

使用道具 举报

34#
 楼主| 发表于 2012-10-28 17:30:54 | 只看该作者
谢谢
继续研究一下
回复

使用道具 举报

33#
发表于 2012-10-28 16:26:26 | 只看该作者
时间久了,有点记不清了。
windows下不分“大小写”,pxe引导文件修改相对简单。

参考:
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=255872

里面有原始文件及工具,修改时不要超过原来字符串的长度

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

使用道具 举报

32#
 楼主| 发表于 2012-10-28 15:46:13 | 只看该作者
zhaohj 你好

你的pxeboot.bcd是自己改的吗。checksum保护在哪里? 如果改过的应早就去掉了checksum了保护了。
怎么会还提示有checksum保护呢

你的贴图显示路径的字母还大小写混用的。也应该一并改去。
回复

使用道具 举报

31#
 楼主| 发表于 2012-10-28 15:13:05 | 只看该作者
修改了以后出错了。

the file is possible corrupted. the file header checksum do not match the computer checksum


好像这里提到 重命名BCD,修改BOOTMGR的方法,通过不同的BCD文件来实现直接启动不同的系统

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

使用道具 举报

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

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

Snap1.jpg

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

Snap3.jpg
回复

使用道具 举报

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, 下载次数: 123)

1.jpg
回复

使用道具 举报

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 编辑 ]
回复

使用道具 举报

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



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

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

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

使用道具 举报

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

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

使用道具 举报

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

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

使用道具 举报

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

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

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

C:\...\winpath


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

使用道具 举报

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

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


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

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-1 12:26

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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