liuzhaoyzz 发表于 2010-5-25 09:52:11

楼上的,2010.5.23日,需要在tftp下面放置menu.lst的哦?不是main.lst,你放在哪里?怎么想到要改名字?g4d和grub一直秉承menu.lst菜单名,何必改名?

chenall 发表于 2010-5-25 09:59:44

原帖由 33445566 于 2010-5-24 21:04 发表 http://bbs.wuyou.net/images/common/back.gif


网启时:grldr中的menu目录和/menu.lst可以改名吗?若可以,怎么改?

1.修改修改源码,重新编译,可以修改为任意你想要的。
2.用HEX编辑器打开GRLDR文件,查找No bootfile!,附近应该就有/MENU.LST /MENU/之类的字符串,直接修改就行了。但不能超过原来的长度。
#180
说了好像等于没说一样。

#179 ,目前的顺序是合理的。反之就不合理了。具体原因自己深究。

liuzhaoyzz 发表于 2010-5-26 10:33:40

chenall好像挺忙,菜单搜索顺序我查找了很多帖子,还是没能领会到这里面的奥秘。网上搜索也不知道具体何处下手,能给个简单的提示吗?
这个是最初测试g4d的PXE了。
2008-7-24http://bbs.znpc.net/viewthread.php?tid=5471&extra=page%3D10
2008-11-6http://bbs.znpc.net/viewthread.php?tid=5309&extra=page%3D5
Climbing在12#和76#提到了菜单顺序的问题:
http://bbs.znpc.net/viewthread.p ... muid=12697#pid32421
http://bbs.znpc.net/viewthread.p ... muid=12697#pid32570
还有bean的pxegrub:2007-4-18http://bbs.znpc.net/viewthread.php?tid=2931&highlight=pxe

[ 本帖最后由 liuzhaoyzz 于 2010-5-26 10:37 编辑 ]

zhaohj 发表于 2010-5-26 12:26:06

PXE启动可以按照客户机网卡的MAC和IP及C类地址段配置不同的菜单文件,这样可以做到灵活步骤。不过目前这样步骤的人很少罢了。
无盘工作站这样比较方便,分类步骤。

现在应该是合理的。

liuzhaoyzz 发表于 2010-5-26 12:36:17

这个我知道,我说的意思是menu.lst→menu\default→MAC&IP好像更合理,chenall说不合理。
说到无盘或其他,如果想要MAC&IP菜单优先,删除menu.lst和default就能实现了吧,跳过这两个文件很快的,因为只要探测他是否在tftp上存在就行了,MAC&IP是否还要比较网卡的MAC&IP?

chenall 发表于 2010-6-20 11:22:49

2010-6-20
1.重写部份代码,优化效率,不再使用虚拟内存盘存放.而是直接使用内存地址0×40000(最多占用0×8200字节)
2.添加read命令,可以从指定文件中读取一序列命令执行(用于动态执行)
3.内置ECHO命令,使用wenv run ECHO时直接调用内置的echo功能显示.

有条件的朋友麻烦测试一下.

更多资料可以访问去我的搏客查看.

pseudo 发表于 2010-6-20 13:49:20

回复 #186 chenall 的帖子

强!
老菜单可大为简化。

可惜没时间重写了。

chenall 发表于 2010-6-20 15:09:29

原帖由 pseudo 于 2010-6-20 13:49 发表 http://bbs.wuyou.net/images/common/back.gif
强!
老菜单可大为简化。

可惜没时间重写了。

新的版本可以直接替换旧的版本使用.只是取消了init和unload这些相关的命令.

另外从内存读取字符串有一点修改,现在只读一行,以回车符或\0计算.碰到\0或回车符都算一行结束.

这个得再考虑看看以什么方式比较好,也许会加一个参数来控制.

[ 本帖最后由 chenall 于 2010-6-20 15:13 编辑 ]

zhaohj 发表于 2010-6-21 08:35:46

wenv read file感觉有点问题,或者内置的echo命令有问题。

[ 本帖最后由 zhaohj 于 2010-6-21 08:41 编辑 ]

zhaohj 发表于 2010-6-21 08:59:50

哦,echo改成大写就行了。但感觉内置命令用小写、大写都无所谓吧。

zhaohj 发表于 2010-6-22 17:48:04

已在你BLOG上咨询,下面的问题:

新版本的wenv set命令是否有问题,比如0x8288的值是0x3200a8c0
老版本
wenv init
wenv calc tmp=*0x8288 & 0xff
wenv set pxe_ip=${tmp}
得到pxe_ip=192

新版本:
wenv calc tmp=*0x8288 & 0xff
wenv set pxe_ip=${tmp}
得到pxe_ip=tmp=*0x8288 & 0xff
显然是错误的。

[ 本帖最后由 zhaohj 于 2010-6-23 08:29 编辑 ]

chenall 发表于 2010-6-23 08:28:39

我试一下,可能是BUG.

zhaohj 发表于 2010-6-23 08:37:03

想把0x8288的值保存为192.168.1.22的形式:
wenv calc tmp=*0x8288 & 0xff
wenv set pxe_ip=${tmp}
wenv calc tmp=*0x8288>>8 & 0xff
wenv set pxe_ip=${pxe_ip}.${tmp}
wenv calc tmp=*0x8288>>16 & 0xff
wenv set pxe_ip=${pxe_ip}.${tmp}
wenv calc tmp=*0x8288>>24 & 0xff
wenv set pxe_ip=${pxe_ip}.${tmp}

能不能只用一个变量达到目的。

chenall 发表于 2010-6-23 09:16:58

已经修复这个BUG.

可以的.

另外新版参数不再区分大小写.

[ 本帖最后由 chenall 于 2010-6-23 09:23 编辑 ]

zhaohj 发表于 2010-6-23 09:36:16

wenv set命令正常。
wenv read 内置的ECHO可能还有大写小写之分,试了新版大写没显示出来。echo小写可以。哈哈,与原来的正好相反。

另:wenv read 读文本的最后一行,如果是换行符最好不执行。不然变帮助--help

[ 本帖最后由 zhaohj 于 2010-6-23 09:59 编辑 ]

chenall 发表于 2010-6-23 10:21:54

原帖由 zhaohj 于 2010-6-23 09:36 发表 http://bbs.wuyou.net/images/common/back.gif
wenv set命令正常。
wenv read 内置的ECHO可能还有大写小写之分,试了新版大写没显示出来。echo小写可以。哈哈,与原来的正好相反。

另:wenv read 读文本的最后一行,如果是换行符最好不执行。不然变帮助--help

又犯了一个错.已更新.

如果是回车符是没有执行的啊...

zhaohj 发表于 2010-6-23 10:36:02

大小写正常了,原先有空行会出来help,现在解决了。而且现在一条命令结束至少要有一个回车符。

C大,帮我把193#改一下。

[ 本帖最后由 zhaohj 于 2010-6-23 11:00 编辑 ]

chenall 发表于 2010-6-23 12:00:40

193执行起来没有问题啊.

chenall 发表于 2010-6-23 12:03:46

如果是放在文件是批执行的,因为calc返回的时计算结果,当值为0时也是返回0
我已经重新上传了一个版本,对于批执行不再判断返回值,也就是不管里面是什么命令执行结果如何,都执行到底.

zxw 发表于 2010-6-23 15:15:47

wenv set是否还是有问题?
我实机测试:
debug on
wenvset xy=123
wenv get xy
无任何显示。

[ 本帖最后由 zxw 于 2010-6-23 15:25 编辑 ]

chenall 发表于 2010-6-23 16:28:00

没有发现,可能是使用方法有误.

zxw 发表于 2010-6-23 17:02:35

回复 #201 chenall 的帖子

怪事,虚拟机下测试没有问题。
另:wenv init 在虚拟机、实机均提示错误,改为wenv run init了?

[ 本帖最后由 zxw 于 2010-6-23 17:03 编辑 ]

zhaohj 发表于 2010-6-24 08:19:30

楼上没仔细看帖。
现在已经不用init、unload

zxw 发表于 2010-6-24 10:48:50

原帖由 zhaohj 于 2010-6-24 08:19 发表
楼上没仔细看帖。
现在已经不用init、unload
汗,还真没注意。

zxw 发表于 2010-6-24 14:48:23

0PE中实机测试:wenv set还是有问题。wenv get变量不显示。
但不进入0PE实机测试正常。可能新版wenv与0PE占用内存地址发生冲突?

[ 本帖最后由 zxw 于 2010-6-24 15:02 编辑 ]

zhaohj 发表于 2010-6-24 15:21:24

0pe没有使用0x40000上地址的啊,目前SRS_F6使用没有问题。

chenall 发表于 2010-6-24 15:27:55

原帖由 zxw 于 2010-6-24 14:48 发表 http://bbs.wuyou.net/images/common/back.gif
0PE中实机测试:wenv set还是有问题。wenv get变量不显示。
但不进入0PE实机测试正常。可能新版wenv与0PE占用内存地址发生冲突?
贴图上来看一下,包括你使用的GRUB4DOS和WENV的版本号...

zxw 发表于 2010-6-24 17:24:22

grldr 2010.6.21
wenv 2010.5.19
wenvnew 2010.6.23


[ 本帖最后由 zxw 于 2010-6-24 17:28 编辑 ]

zhaohj 发表于 2010-6-24 17:55:53

奇怪了,我这里很正常。

chenall 发表于 2010-6-24 18:17:25

原帖由 zxw 于 2010-6-24 17:24 发表 http://bbs.wuyou.net/images/common/back.gif
grldr 2010.6.21
wenv 2010.5.19
wenvnew 2010.6.23
9255992557

你可以试试以下命令
write 0x40000 0x12345678
read 0x40000

看看是不是这个地址被你的主板或其它程序给保护了.

另外
wenv get 或wenv set都可以获取当前设置的变量列表.

cat --hex (md)0x200+1看看变量有没有被设置上去.

[ 本帖最后由 chenall 于 2010-6-24 18:19 编辑 ]
页: 1 2 3 4 5 6 [7] 8 9 10 11 12 13 14 15 16
查看完整版本: grub4dos 外部命令 wenv [2010-10-17 ]