无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 8532|回复: 43

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

[复制链接]
发表于 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
发表于 2017-11-15 20:17:02 来自手机 | 显示全部楼层
c盘根目录有grldr.

点评

谢谢回复 我查看了,所有分区根目录只有F盘有grldr,bcd也是指向的F盘的grldr,即使某分区根目录有改名的grldr也应该不会影响吧  详情 回复 发表于 2017-11-15 21:08
回复

使用道具 举报

 楼主| 发表于 2017-11-15 21:08:36 | 显示全部楼层

谢谢回复

我查看了,所有分区根目录只有F盘有grldr,bcd也是指向的F盘的grldr,即使某分区根目录有改名的grldr也应该不会影响吧
回复

使用道具 举报

发表于 2017-11-16 06:10:41 来自手机 | 显示全部楼层
这问题自己肯定能找到原因,用不着费劲来问吧?难道会修改却不会调试?

点评

谢谢回复 调试 是指启动grldr时马上按insert键吗  详情 回复 发表于 2017-11-16 08:28
回复

使用道具 举报

发表于 2017-11-16 06:47:27 来自手机 | 显示全部楼层
把c盘的boot文件夹删除

点评

谢谢回复 C盘的boot中的bcd指向的F盘的grldr,把c盘的boot文件夹删除了,grldr又怎么能启动呢  详情 回复 发表于 2017-11-16 08:33
回复

使用道具 举报

 楼主| 发表于 2017-11-16 08:28:44 | 显示全部楼层
不点 发表于 2017-11-16 06:10
这问题自己肯定能找到原因,用不着费劲来问吧?难道会修改却不会调试?

谢谢回复

调试 是指启动grldr时马上按insert键吗

点评

根据你的描述,你修改前,是正常的。你修改后不正常了。 你只要确定究竟是那一处修改造成的问题即可。 比方说,你修改了 10 个地方。你先恢复 9 个地方(保持修改前的状态),只留下一个修改,试试看行不行。  详情 回复 发表于 2017-11-16 20:52
回复

使用道具 举报

 楼主| 发表于 2017-11-16 08:33:26 | 显示全部楼层
2011yaya2007777 发表于 2017-11-16 06:47
把c盘的boot文件夹删除

谢谢回复

C盘的boot中的bcd指向的F盘的grldr,把c盘的boot文件夹删除了,grldr又怎么能启动呢

回复

使用道具 举报

发表于 2017-11-16 09:11:28 来自手机 | 显示全部楼层
menu.lst应当在f盘。
回复

使用道具 举报

发表于 2017-11-16 09:12:11 来自手机 | 显示全部楼层
你的根目录在c盘

点评

win7是从c盘启动的,C盘的boot中的bcd指向F盘的grldr 我没有使用menu.ls,使用的是grldr内置菜单  详情 回复 发表于 2017-11-16 09:39
回复

使用道具 举报

 楼主| 发表于 2017-11-16 09:39:46 | 显示全部楼层

win7是从c盘启动的,C盘的boot中的bcd指向F盘的grldr

我没有使用menu.ls,使用的是grldr内置菜单
回复

使用道具 举报

发表于 2017-11-16 20:52:02 | 显示全部楼层
yjqd 发表于 2017-11-16 08:28
谢谢回复

调试 是指启动grldr时马上按insert键吗

根据你的描述,你修改前,是正常的。你修改后不正常了。

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

比方说,你修改了 10 个地方。你先恢复 9 个地方(保持修改前的状态),只留下一个修改,试试看行不行。如果这个修改就不正常了,那说明就是此处的修改造成的错误,这样就找到了根源。如果这个修改能正常运行,那就说明是其他 9 处的修改有问题。像这样,你逐一试验,总可以确定有毛病的修改,这样就找到了根源。

点评

明白一些了: 第一种情况: 用win7的bootmgr加载grldr 如果这个grldr内置菜单没有用find --set-root /xxx,启动后,root命令结果是(hd0,0) 也就是根目录是win7的bootmgr所在的目录C 如果这个grldr内置菜单  详情 回复 发表于 2017-11-17 13:44
简单的说: 我的grldr原菜单,启动后只要不修改它,任何一个启动项都能正常启动,如果对菜单进行修改,不管修改多少,gfldr所在的目录都会返回到(hd0,0)  详情 回复 发表于 2017-11-16 21:40
谢谢回复 grldr这个文件本身的内置菜单我没修改,只是在启动grldr后在菜单选项界面修改了一项,就是把启动的dos镜像名改成了新增加的dos镜像的名称,即原来是启动的Win98.img,改成启动ghost.img 修改 map --me  详情 回复 发表于 2017-11-16 21:32
回复

使用道具 举报

 楼主| 发表于 2017-11-16 21:32:09 | 显示全部楼层
本帖最后由 yjqd 于 2017-11-16 21:33 编辑
不点 发表于 2017-11-16 20:52
根据你的描述,你修改前,是正常的。你修改后不正常了。

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


谢谢回复

grldr这个文件本身的内置菜单我没修改,只是在启动grldr后在菜单选项界面修改了一项,就是把启动的dos镜像名改成了新增加的dos镜像的名称,即原来是启动的Win98.img,改成启动ghost.img
修改
map --mem /boot/Win98.img (fd0)

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

发现修改后确认,grldr所在的根目录就会改变,变成(hd0,0)

我确实还没找到根目录改变的原因
回复

使用道具 举报

 楼主| 发表于 2017-11-16 21:40:45 | 显示全部楼层
本帖最后由 yjqd 于 2017-11-16 21:46 编辑
不点 发表于 2017-11-16 20:52
根据你的描述,你修改前,是正常的。你修改后不正常了。

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


简单的说:

我的grldr原菜单,启动后只要不修改它,任何一个启动项都能正常启动,如果对菜单进行修改,不管修改多少,gfldr所在的目录都会返回到(hd0,0)

没表述准确,应该要把grldr目录固定在所在的分区这种修改除外
回复

使用道具 举报

发表于 2017-11-16 22:13:52 来自手机 | 显示全部楼层
‘’只是在启动grldr后在菜单选项界面修改了一项,‘’  前面说没有menu.lst菜单,那么引号里的菜单是什么?菜单选项界面是什么?这些怎么显示的?通过什么文件选择?

点评

yaya,我上传了照片  详情 回复 发表于 2017-11-16 23:09
不好意思,我没拍摄图片 ===================== 我使用的是grldr内置菜单 引号中的选项是:使用map启动本地硬盘上的 Win98 软盘镜像文件 选中它,按E键就可看到具体内容: map --mem /boot/Win98.img (fd  详情 回复 发表于 2017-11-16 22:26
回复

使用道具 举报

 楼主| 发表于 2017-11-16 22:26:00 | 显示全部楼层
2011yaya2007777 发表于 2017-11-16 22:13
‘’只是在启动grldr后在菜单选项界面修改了一项,‘’  前面说没有menu.lst菜单,那么引号里的菜单是什么 ...

不好意思,我没拍摄图片
=====================
我使用的是grldr内置菜单

引号中的选项是:使用map启动本地硬盘上的 Win98 软盘镜像文件

选中它,按E键就可看到具体内容:

map --mem /boot/Win98.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

我把Win98.img改成ghost.img,回车确认,再按B键启动,提示错误15,文件没发现
回复

使用道具 举报

发表于 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
回复

使用道具 举报

 楼主| 发表于 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后,在菜单选项界面进行的修改

回复

使用道具 举报

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

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

修改前

修改前

修改前

修改前

修改前

修改前

修改后

修改后

修改后

修改后

修改后启动报错

修改后启动报错
回复

使用道具 举报

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

yaya,我上传了照片
回复

使用道具 举报

发表于 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),这一点必须确认。
回复

使用道具 举报

发表于 2017-11-17 12:51:01 来自手机 | 显示全部楼层
改哪,哪就不行,意思是utf8编码问题?

点评

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

使用道具 举报

 楼主| 发表于 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,如果启动后不编辑菜单,那么就可以不写绝对路径
如果启动后要编辑菜单,那么就老老实实的写上绝对路径

回复

使用道具 举报

 楼主| 发表于 2017-11-17 13:51:05 | 显示全部楼层
窄口牛 发表于 2017-11-17 12:51
改哪,哪就不行,意思是utf8编码问题?

不是utf8编码问题的问题

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

使用道具 举报

发表于 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
回复

使用道具 举报

 楼主| 发表于 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

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

使用道具 举报

发表于 2017-11-17 21:28:31 来自手机 | 显示全部楼层
这个现象没注意,挺奇怪。抽时间研究一下。

点评

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

使用道具 举报

 楼主| 发表于 2017-11-17 21:49:23 | 显示全部楼层
2011yaya2007777 发表于 2017-11-17 21:28
这个现象没注意,挺奇怪。抽时间研究一下。

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

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

使用道具 举报

发表于 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
回复

使用道具 举报

 楼主| 发表于 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也测试过
难道是我的电脑阴差阳错出了问题
我再去试一下
回复

使用道具 举报

 楼主| 发表于 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
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-3-28 20:35

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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