无忧启动论坛

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

grldr启动后修改菜单再启动提示找不到文件

[复制链接]
跳转到指定楼层
1#
发表于 2017-11-15 17:01:30 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
win7系统bootmgr加载的grldr,C盘有boot文件夹,我在F盘建立了boot文件夹,把grldr放在F盘根目录
我把ghost.img文件放在F盘的boot文件夹中

启动grldr后,修改菜单中的:
map --mem /boot/Win98.img (fd0)

map --mem /boot/ghost.img (fd0)

确认后启动提示找不到文件

root命令返回结果为(hd0,0),奇怪,根目录应该在F盘是(hd0,3),怎么变为(hd0,0)了呢

注:如果不修改菜单启动Win98.img又正常
----------------------------------------------------------------------------------------------
grldr菜单修改前如下

pxe detect
configfile
default 0
timeout 10
terminal console
find --set-root /grldr
font /boot/unifont.hex(3500汉字).GZ
graphicsmode -1 640:480
splashimage /boot/bj2008.xpm.gz
color normal=0x0187ec highlight=0xE0 helptext=0x0187ec heading=0x0187ec standard=0x0068b7 border=0x0068b7

title 启动WIN8PE和WIN7PE
chainloader /boot/bootmgr

title 使用map启动本地硬盘上的 Win98 软盘镜像文件
map --mem /boot/Win98.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

title Grub 命令行
commandline
44#
 楼主| 发表于 2017-11-18 18:00:45 | 只看该作者
2011yaya2007777 发表于 2017-11-18 17:54
由 bootmgr 通过 BCD 加载 F 盘的 grldr,根目录在 C 盘。执行 find --set-root /grldr 后,根目录才改变为 ...


谢谢回复

辛苦了,yaya

感谢以上诸位朋友的帮助!
回复

使用道具 举报

43#
发表于 2017-11-18 17:54:45 | 只看该作者
由 bootmgr 通过 BCD 加载 F 盘的 grldr,根目录在 C 盘。执行 find --set-root /grldr 后,根目录才改变为 F 盘。
进入 grldr 内置菜单,按 2 次 E 编辑键,再按 Esc 键返回,按 C 键进入命令行,执行 root 命令,根目录改变,成为 C 盘。重现错误!

如果不改变 grldr 内置菜单,使用 menu.lst 外置菜单,菜单内容相同,按照上述操作,则根目录不会改变。

grldr 内置菜单相比 menu.lst 外置菜单,比较脆弱,改变内容也不方便,建议高手使用。必须调试好再用,且中途不能编辑。

steve6375 在 issues#155 报告,内置菜单批处理调用,失败后不终止程序,也没有错误信息显示。在 menu.lst 外置菜单则没有此现象。

点评

谢谢回复 辛苦了,yaya 感谢以上诸位朋友的帮助!  详情 回复 发表于 2017-11-18 18:00
回复

使用道具 举报

42#
 楼主| 发表于 2017-11-18 12:29:02 | 只看该作者

菜单启动项如果有密码,你删除就是了
回复

使用道具 举报

41#
 楼主| 发表于 2017-11-18 12:28:35 | 只看该作者
yjqd 发表于 2017-11-18 12:23
把grldr放在C盘之外的分区
启动后按C键,输入root看下结果
然后选中 使用map启动本地硬盘上的 Win98 软 ...

菜单启动项如果有密码,你删除就是了
回复

使用道具 举报

40#
 楼主| 发表于 2017-11-18 12:23:50 | 只看该作者

把grldr放在C盘之外的分区
启动后按C键,输入root看下结果
然后选中 使用map启动本地硬盘上的 Win98 软盘镜像文件
按E键
再选中 map --mem /boot/Win98.img (fd0)
按E键
你可对它编辑,或不编辑就按回车键
此时就在这个界面按C键,输入root看下结果


其它的title启动项你也可试一试

点评

菜单启动项如果有密码,你删除就是了  详情 回复 发表于 2017-11-18 12:28
回复

使用道具 举报

39#
 楼主| 发表于 2017-11-18 12:12:00 | 只看该作者
本帖最后由 yjqd 于 2017-11-18 18:03 编辑


新版本导入的grldr  已上传

请看一下
回复

使用道具 举报

38#
发表于 2017-11-18 12:03:14 来自手机 | 只看该作者
新版本导入的

点评

菜单启动项如果有密码,你删除就是了  详情 回复 发表于 2017-11-18 12:29
把grldr放在C盘之外的分区 启动后按C键,输入root看下结果 然后选中 使用map启动本地硬盘上的 Win98 软盘镜像文件 按E键 再选中 map --mem /boot/Win98.img (fd0) 按E键 你可对它编辑,或不编辑就按回车键 此  详情 回复 发表于 2017-11-18 12:23
新版本导入的grldr 已上传 请看一下  详情 回复 发表于 2017-11-18 12:12
回复

使用道具 举报

37#
 楼主| 发表于 2017-11-18 11:34:35 | 只看该作者
2011yaya2007777 发表于 2017-11-18 11:25
把你的grldr发上来。你确认win98.img与ghost.img在同一文件夹?

确认win98.img与ghost.img在同一文件夹

grldr你是要grub4dos-0.4.6a-2017-10-23.7z中的
还是要我导入了菜单那个grldr
回复

使用道具 举报

36#
发表于 2017-11-18 11:25:52 来自手机 | 只看该作者
把你的grldr发上来。你确认win98.img与ghost.img在同一文件夹?

点评

确认win98.img与ghost.img在同一文件夹 grldr你是要grub4dos-0.4.6a-2017-10-23.7z中的 还是要我导入了菜单那个grldr  详情 回复 发表于 2017-11-18 11:34
回复

使用道具 举报

35#
 楼主| 发表于 2017-11-18 11:14:26 | 只看该作者
不点 发表于 2017-11-18 10:37
提醒一下楼主,你的 grldr 菜单开头这句

configfile

谢谢回复

我检查了下所有根目录没有menu.lst
刚才从grub4dos-0.4.6a-2017-10-23.7z里提取grldr出来
新建文本文档,内容如下:

default 0
timeout 10
find --set-root /grldr

title 使用map启动本地硬盘上的 Win98 软盘镜像文件
map --mem /boot/Win98.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

title Grub 命令行
commandline

用grubmenu.exe将文本文档导入grldr
测试结果仍如前所述
观察到的现象是:
当启动grldr后,编辑title启动项中的内容后,发现root的结果从(hd0,3)变成(hd0,0)
回复

使用道具 举报

34#
发表于 2017-11-18 10:37:20 | 只看该作者
提醒一下楼主,你的 grldr 菜单开头这句

configfile

有可能抢先去执行 /menu.lst 文件了。如果此时当前 root 是 (hd0,0),而且存在 (hd0,0)/menu.lst 这个文件,那么控制权就会被这个文件接管,而 grldr 内置菜单中的后续语句都不会再执行了。

如果不存在 /menu.lst 文件,则 grldr 的内置菜单会继续起作用,后续的 find --set-root /grldr 就能够得到执行。

这个地方锤炼了很多年,不容易有 bug。鉴于 yaya 也没能重现 bug,我建议你还是重点检查你自己的菜单吧。估计是你修改的问题,也或者是因为你在使用某个有毛病的旧版 grub4dos 所造成的问题。

你在一楼说,未修改时,一切正常。修改后,不正常了。这本身就说明是你修改带来的问题。比如有可能是你所用的内置菜单修改工具与 grub4dos 版本不匹配造成的。

点评

谢谢回复 我检查了下所有根目录没有menu.lst 刚才从grub4dos-0.4.6a-2017-10-23.7z里提取grldr出来 新建文本文档,内容如下: default 0 timeout 10 find --set-root /grldr title 使用map启动本地硬  详情 回复 发表于 2017-11-18 11:14
回复

使用道具 举报

33#
 楼主| 发表于 2017-11-18 09:39:20 | 只看该作者
2011yaya2007777 发表于 2017-11-18 09:17
明白了。
修改完菜单,不执行boot指令,菜单中的指令都没有执行,此时按c键进入命令行,执行root,根目录 ...

不知能否改变这一情况,在你有时间和精力的情况下,也不知改变了会不会带来其它的问题
回复

使用道具 举报

32#
 楼主| 发表于 2017-11-18 09:34:24 | 只看该作者
2011yaya2007777 发表于 2017-11-18 09:17
明白了。
修改完菜单,不执行boot指令,菜单中的指令都没有执行,此时按c键进入命令行,执行root,根目录 ...

把我虚惊一跳,我以为我在乱反映问题

刚才在惠普电脑上测试也是如此
此贴中的grldr是经过编译了的,我以为问题出在编译上,今天之前于是用过grub4dos-0.4.6a-2017-10-23.7z测试,情况也是如此
======================================
看来修改时只能多增加一条命令了
否则,根目录要回到C盘,就不能启动修改的文件了
回复

使用道具 举报

31#
发表于 2017-11-18 09:17:20 | 只看该作者
明白了。
修改完菜单,不执行boot指令,菜单中的指令都没有执行,此时按c键进入命令行,执行root,根目录应当不会改变。

你这样修改
find --set-root /boot/ghost.img
map --mem /boot/ghost.img (fd0)
就没有问题了

点评

不知能否改变这一情况,在你有时间和精力的情况下,也不知改变了会不会带来其它的问题  详情 回复 发表于 2017-11-18 09:39
把我虚惊一跳,我以为我在乱反映问题 刚才在惠普电脑上测试也是如此 此贴中的grldr是经过编译了的,我以为问题出在编译上,今天之前于是用过grub4dos-0.4.6a-2017-10-23.7z测试,情况也是如此 ================  详情 回复 发表于 2017-11-18 09:34
回复

使用道具 举报

30#
 楼主| 发表于 2017-11-18 09:00:18 | 只看该作者
2011yaya2007777 发表于 2017-11-18 08:27
修改菜单,或者修改grldr内置菜单
map --mem /boot/Win98.img (fd0)

刚才测试了,用的 grub4dos-0.4.6a-2017-10-23.7z

情况还是如此
=======================================
BCD增加grldr启动项最早是用的微软的BCDEDIT命令,后来用的BOOTICE(有时记不住BCDEDIT命令了)

BOOTICE编辑时:

设备类型选的:partition
启动分区选的F盘

启动文件:
\grldr
回复

使用道具 举报

29#
 楼主| 发表于 2017-11-18 08:36:45 | 只看该作者
2011yaya2007777 发表于 2017-11-18 08:27
修改菜单,或者修改grldr内置菜单
map --mem /boot/Win98.img (fd0)

谢谢回复

我用grub4dos-0.4.6a-2017-10-23.7也测试过
难道是我的电脑阴差阳错出了问题
我再去试一下
回复

使用道具 举报

28#
发表于 2017-11-18 08:27:20 | 只看该作者
修改菜单,或者修改grldr内置菜单
map --mem /boot/Win98.img (fd0)

map --mem /boot/Win981.img (fd0)
然后按c键进入命令行,root 命令返回 (hd0,6),没有改变。
你反映的问题没有证实。

上面帖子显示你没有使用grldr最新版本。请使用0.4.6a最新版本测试。

你是使用BOOTICE编辑的BCD文件? ”启动文件“设置为 f:\grldr?

点评

刚才测试了,用的 grub4dos-0.4.6a-2017-10-23.7z 情况还是如此 ======================================= BCD增加grldr启动项最早是用的微软的BCDEDIT命令,后来用的BOOTICE(有时记不住BCDEDIT命令了) BO  详情 回复 发表于 2017-11-18 09:00
谢谢回复 我用grub4dos-0.4.6a-2017-10-23.7也测试过 难道是我的电脑阴差阳错出了问题 我再去试一下  详情 回复 发表于 2017-11-18 08:36
回复

使用道具 举报

27#
 楼主| 发表于 2017-11-17 21:49:23 | 只看该作者
2011yaya2007777 发表于 2017-11-17 21:28
这个现象没注意,挺奇怪。抽时间研究一下。

可能是大家基本上都是把grldr放在C盘的,启动grldr后,不管修不修改启动菜单,它的目录都会在C盘

所以修改菜单后仍可能启动
回复

使用道具 举报

26#
发表于 2017-11-17 21:28:31 来自手机 | 只看该作者
这个现象没注意,挺奇怪。抽时间研究一下。

点评

可能是大家基本上都是把grldr放在C盘的,启动grldr后,不管修不修改启动菜单,它的目录都会在C盘 所以修改菜单后仍可能启动  详情 回复 发表于 2017-11-17 21:49
回复

使用道具 举报

25#
 楼主| 发表于 2017-11-17 20:54:47 | 只看该作者
2011yaya2007777 发表于 2017-11-17 18:16
执行了 find --set-root /xxx,root命令结果才会是xxx所在的根目录。

菜单项包含这一指令,执行菜单就 ...

谢谢回复

我再想一想:

win7的C盘的bootmgr加载grldr这种情况,grldr不管放在哪个分区,它的原始命令目录就是bootmgr所在的C盘
此贴中grldr放在(hd0,3),也就是F盘根目录,grldr内置菜单中,find --set-root /grldr只有一处,在加载字体和图片之前,所有 title 启动项之内都没有find --set-root /grldr
当启动grld后,图片、字体被加载了,说明find --set-root /grldr被执行了,而且此时root命令返回的结果是在(hd0,3),也就是F盘根目录
此时当我又编辑title 某启动项的内容时,确认后,再执行root命令,返回的结果是在(hd0,0),也就是C盘根目录

小结:
当启动grld后,如果对某title 启动项进行编辑,虽然没执行root (hd0,0),但仍然会从(hd0,3)返回到原始命令目录,就是bootmgr所在的C盘
================================================================
刚才我测试了一下,提前用grubmenu.exe对grldr的title 使用map启动本地硬盘上的 Win98 软盘镜像文件下面增加了find --set-root /grldr,其它没作任何更改
find --set-root /grldr
map --mem /boot/Win98.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

启动后,用root命令返回的结果是在(hd0,3),编辑map --mem /boot/Win98.img (fd0)为map --mem /boot/ghost.img (fd0),回车确认,再root命令返回的结果是在(hd0,0),再按B键启动,成功启动了ghost.img

小结:编辑时虽然目录从(hd0,3)变为(hd0,0),但执行时,find --set-root /grldr得到了执行,目录从(hd0,0)变为(hd0,3),所以成功启动了ghost.img

============================================
要是编辑时不返回原始命令目录就好了,写菜单可以少写点内容
回复

使用道具 举报

24#
发表于 2017-11-17 18:16:40 | 只看该作者
第一种情况:
用win7的bootmgr加载grldr

执行了 find --set-root /xxx,root命令结果才会是xxx所在的根目录。

菜单项包含这一指令,执行菜单就会执行这一指令。
如果编辑这一菜单项,菜单项内的所有指令都没有执行,此时进入命令行执行 root 指令,仍然是原来的根目录。

第二种情况:
用win7的bootmgr加载grldr.mbr

运行了 grldr.mbr,就相当于执行了 find --set-root /grldr,所以 root 指令返回新的根目录。

点评

谢谢回复 我再想一想: win7的C盘的bootmgr加载grldr这种情况,grldr不管放在哪个分区,它的原始命令目录就是bootmgr所在的C盘, 此贴中grldr放在(hd0,3),也就是F盘根目录,grldr内置菜单中,find --set-ro  详情 回复 发表于 2017-11-17 20:54
回复

使用道具 举报

23#
 楼主| 发表于 2017-11-17 13:51:05 | 只看该作者
窄口牛 发表于 2017-11-17 12:51
改哪,哪就不行,意思是utf8编码问题?

不是utf8编码问题的问题

我的内置菜单用了find --set-root /grldr,但所有的启动项中都没用绝对路径,一旦对grldr启动后的菜单进行编辑,根目录会变成(hd0,0),当然会提示找不到文件,就启动不了
回复

使用道具 举报

22#
 楼主| 发表于 2017-11-17 13:44:25 | 只看该作者
不点 发表于 2017-11-16 20:52
根据你的描述,你修改前,是正常的。你修改后不正常了。

你只要确定究竟是那一处修改造成的问题即可。 ...

明白一些了:

第一种情况:
用win7的bootmgr加载grldr


如果这个grldr内置菜单没有用find --set-root /xxx,启动后,root命令结果是(hd0,0)  也就是根目录是win7的bootmgr所在的目录C
如果这个grldr内置菜单用了find --set-root /xxx,启动后,root命令结果会是xxx所在的根目录,比如此帖中是在F盘,一旦对grldr启动后的菜单进行编辑,哪怕你选中菜单的某一项,按了E键,即使没编辑,回车后,按C键,输入root,root命令结果是(hd0,0),不知为什么会返回(hd0,0)

第二种情况:
用win7的bootmgr加载grldr.mbr


不管grldr.mbr放在哪个分区根目录,grldr内置菜单不管有没有用find --set-root /xxx,grldr放在哪个分区,启动后,root命令查看,它所在的根目录就是它所在的分区,比如放在E盘,root看到的就在E盘(当然,应该是(hdx,x)这各形式),如果放在F盘,root看到的就在F盘

并且对对grldr启动后的菜单进行编辑也不会自动返回目录到(hd0,0),修改后也能正常启动了

看来用win7的bootmgr加载grldr,内置菜单写上用find --set-root /xxx,如果启动后不编辑菜单,那么就可以不写绝对路径
如果启动后要编辑菜单,那么就老老实实的写上绝对路径

回复

使用道具 举报

21#
发表于 2017-11-17 12:51:01 来自手机 | 只看该作者
改哪,哪就不行,意思是utf8编码问题?

点评

不是utf8编码问题的问题 我的内置菜单用了find --set-root /grldr,但所有的启动项中都没用绝对路径,一旦对grldr启动后的菜单进行编辑,根目录会变成(hd0,0),当然会提示找不到文件,就启动不了  详情 回复 发表于 2017-11-17 13:51
回复

使用道具 举报

20#
发表于 2017-11-17 12:28:17 | 只看该作者
以 18 楼为基准讨论。
grldr 在 c 盘根目录。
win98.img 在 c:\boot\ 子目录。
ghost.img 在哪里?如果在 c:\boot\ 子目录,则修改正确。如果在 f:\boot\ 子目录,则应当是 map --mem (hd0,3)/boot/ghost.img (fd0)
前提是 f 对应 (hd0,3),这一点必须确认。
回复

使用道具 举报

19#
 楼主| 发表于 2017-11-16 23:09:30 | 只看该作者
2011yaya2007777 发表于 2017-11-16 22:13
‘’只是在启动grldr后在菜单选项界面修改了一项,‘’  前面说没有menu.lst菜单,那么引号里的菜单是什么 ...

yaya,我上传了照片
回复

使用道具 举报

18#
 楼主| 发表于 2017-11-16 23:07:29 | 只看该作者
pseudo 发表于 2017-11-16 22:26
看样子楼主修改了grldr内置菜单。
请留意以下线索:
1、grldr的版本、日期?

照片大于2m,重新捕获了一下

捕获1.PNG (664.1 KB, 下载次数: 166)

修改前

修改前

捕获2.PNG (659.85 KB, 下载次数: 149)

修改前

修改前

捕获3.PNG (822.49 KB, 下载次数: 159)

修改前

修改前

捕获4.PNG (729.67 KB, 下载次数: 165)

修改后

修改后

捕获5.PNG (716.21 KB, 下载次数: 154)

修改后

修改后

捕获6.PNG (757.9 KB, 下载次数: 142)

修改后启动报错

修改后启动报错
回复

使用道具 举报

17#
 楼主| 发表于 2017-11-16 22:35:06 | 只看该作者
pseudo 发表于 2017-11-16 22:26
看样子楼主修改了grldr内置菜单。
请留意以下线索:
1、grldr的版本、日期?

谢谢回复

看来我要拍照片了,果机传图片不太方便

先说一下:
1、2016的grldr和2017的grldr都使用过
2、编辑grldr是用的grubmenu.exe,我还不知道怎样看它的版本,此贴中菜单的修改是指启动grldr后,在菜单选项界面进行的修改

回复

使用道具 举报

16#
发表于 2017-11-16 22:26:50 | 只看该作者
看样子楼主修改了grldr内置菜单。
请留意以下线索:
1、grldr的版本、日期?
2、用什么工具(名称、版本、日期)改的?

点评

照片大于2m,重新捕获了一下  详情 回复 发表于 2017-11-16 23:07
谢谢回复 看来我要拍照片了,果机传图片不太方便 先说一下: 1、2016的grldr和2017的grldr都使用过 2、编辑grldr是用的grubmenu.exe,我还不知道怎样看它的版本,此贴中菜单的修改是指启动grldr后,在菜单选  详情 回复 发表于 2017-11-16 22:35
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-30 11:30

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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