anarki2001 发表于 2014-12-7 20:12:45

grub4dos启动vhd总是报error15:file not found,是不是因为vhd不支持嵌套?

本帖最后由 anarki2001 于 2014-12-7 23:00 编辑

如题:同样的配置在真机上就没问题,在虚拟机里就报错,折腾了一天快疯了,详情如下:
使用bfgxp大大win8 vhd套装里包含的g4d工具包(包括drldr,bootice和放在c盘根目录下的几个文件夹),
我已经玩了很久了,虽然深层次的原理不太懂,但操作上还是比较熟练的,属于高级小白。
硬件环境为Oracle virtualbox
硬盘为vhd格式的80g虚拟磁盘
分了2个区,在c盘部署了g4d环境
在c:\vhdos\win7\拷入封装版的win7.vhd并用bootice设置好
结果……
能显示出启动vhd win7的菜单,但是选择启动后却提示“error15:file not found”

由于bfgxp大大的drldr模版里采用了诸如:

iftitle 启动Win7\n 启动Win7系统
NTBOO nt6=/vhdos/win7/win7.vhd
boot

这种方式,如果在/vhdos/win7/下找不到win7.vhd,那么这个菜单项根本就不会显示出来,既然显示出来了,就说明找到了这个文件
但是选中这菜单项后,却提示“error15:file not found”
实在是想不明白啊。。。。。。

同样的这个win7.vhd在真机上测试就没问题。

各位大大,请问是咋回事呢?
===================22:50更新问题原因============================
感谢各的帮助,我自己解决了:原来是部署文件的时候,漏拷了bootmgr,晕死。。。。
这个蛋疼的问题是这么产生的:
为了以后自己用得方便,我把bfgxp大大win8 vhd安装包里需要解压到C盘根目录的那些文件单独打包成rar随身带着。但是打包的时候,漏了bootmgr,原因是虽然我在资源管理器里打开了“显示隐藏的文件”但是未打开“显示受保护的系统文件”。此后的一段时间,我用我这个残缺的包部署了几次竟然成功了,原因是那几次基本都是在已经安装了nt6的机器上部署,c盘根目录已经有了bootmgr,此次用虚拟机在裸机上部署,问题暴露了。真是要吸取教训了。
此次也帮助我搞明白这几天琢磨的另一个问题:grub4dos在引导vhd的时候,还是要用到原机的bootmgr(有可能还有BCD),而不是可以直接加载vhd。

2011niumao 发表于 2014-12-7 20:57:59

“error15:file not found”是不是指找不到NTBOOT?我的一个菜单例子title WIN7X64
find --set-root /win7x64.vhd
command (bd)/NTBOOT/NTBOOT NT6=/newwin7x64.vhd瞎猜的.请继续...

anarki2001 发表于 2014-12-7 21:08:18

本帖最后由 anarki2001 于 2014-12-7 21:10 编辑

2011niumao 发表于 2014-12-7 20:57
“error15:file not found”是不是指找不到NTBOOT?我的一个菜单例子瞎猜的.请继续...

谢谢啊,估计不是,因为我用了很久这个模版,一模一样的配置拷贝到真机就OK
你在虚拟机测试过vhd吗?我的意思是在虚拟机的虚拟磁盘上安装grub4dos,然后引导vhd

2012hongrui 发表于 2014-12-7 21:20:26

有这样的提示,肯定是有文件没找到。
NTBOO nt6=/vhdos/win7/win7.vhd中是不是少了个字符T?

anarki2001 发表于 2014-12-7 21:42:40

本帖最后由 anarki2001 于 2014-12-7 21:45 编辑

2012hongrui 发表于 2014-12-7 21:20
有这样的提示,肯定是有文件没找到。
NTBOO nt6=/vhdos/win7/win7.vhd中是不是少了个字符T?

没少,这是工具包的readme:

C盘根目录文件解析
│BOOTICE.EXE                        引导扇区维护工具
│bootmbr.cmd                        配合bootice.exe改写硬盘mbr为drldr,多硬盘用户慎用
│bootmgr                        win7引导安装文件
│drldr                        本引导包引导文件,内置了智能条件菜单

├─BOOT
││BCD                        引导安装win7用bcd文件
││BOOT.SDI
││unifont.hex.gz                drldr字体文件
││vhdos.bmp.gz                drldr背景,1024×768bmp,gz压缩
││
│├─Fonts                        引导安装win7用字体文件夹
││      chs_boot.ttf        win7启动界面中文字体
││      wgl4_boot.ttf        win7启动界面英文字体
││
│├─grub
││
│├─imgs                        drldr各种工具镜像文件(img、iso)目录,可以自行添加maxdos.img、win9pe.iso、win7pe.iso,当存在这些镜像时,会自动出现在菜单选项中
││      REVHDXP.IMG                O.Y.M.2010大大写的omnifs方式vhd还原用镜像,可以避免dd命令还原不改变文件大小的缺陷,还原XP时使用。
││      REVHD03.IMG                O.Y.M.2010大大写的omnifs方式vhd还原用镜像,可以避免dd命令还原不改变文件大小的缺陷,还原03时使用。
││      copyBCD.IMG                部署win7vhd时,若活动分区不存在\boot\BCD文件,则调用该镜像向活动分区中复制一份BCD文件。
││
│└─NTBOOT                        chenall大 的ntboot模块化工具文件夹
│      │NTBOO                修改自c大的ntboot,目的是配合上面的bootmgr及boot\bcd引导封装版的win7系统进行正常的部署安装
│      │NTBOOT                c大原版ntboot,可引导启动已安装好的nt5、nt6等系统及pe
│      │revhxp                O.Y.M.2010大写的快速还原vhd系统批处理,配合上面的revhdxp.img镜像的
│      │revh03                O.Y.M.2010大写的快速还原vhd系统批处理,配合上面的revhd03.img镜像的
│      │RUN                        sratlf大的run批处理模块
│      │
│      ├─NTBOOT.IMG                ntboot.img、ntboot.lst与ntboot.mod三个文件夹中的内容都是c大ntboot模块化的原版内容,就不做介绍了
│      │      firadisk.img
│      │      vboot.img
│      │      winvblk.img
│      │
│      ├─NTBOOT.LST
│      │      isoinst.lst
│      │      menu.lst
│      │
│      └─NTBOOT.MOD
│            dpms
│            NTBOOT.MOD
│            NTBOOT.NT5
│            NTBOOT.NT6
│            NTBOOT.PE1
│            VBOOT.ISO

└─vhdos                        vhd系统所在目录

呃。。。。。我是不是漏掉什么了。。。。。。。


2011niumao 发表于 2014-12-7 22:14:51

把你的菜单修改一下,不知会不会成功
iftitle [ find --set-root --ignore-floppies --ignore-cd /vhdos/win7/ins.lst && if 2 >= 3 ! find --set-root --ignore-floppies --ignore-cd /vhdos/win7/win7.vhd ] 启动Win7\n 启动Win7系统
command (bd)/boot/NTBOOT/NTBOO   nt6=/vhdos/win7/win7.vhd

anarki2001 发表于 2014-12-7 22:50:15

2011niumao 发表于 2014-12-7 22:14
把你的菜单修改一下,不知会不会成功

感谢您的帮助,我自己解决了:原来是部署文件的时候,漏拷了bootmgr,晕死。。。。

anarki2001 发表于 2014-12-7 22:56:42

感谢各的帮助,我自己解决了:原来是部署文件的时候,漏拷了bootmgr,晕死。。。。这个蛋疼的问题是这么产生的:
为了以后自己用得方便,我把bfgxp大大安装包里C盘根目录的那些文件单独打包成rar,随身带着。但是打包的时候,漏了bootmgr,原因是虽然我在资源管理器里打开了“显示隐藏的文件”但是未打开“显示受保护的系统文件”。此后的一段时间,我用我这个残缺的包部署了几次竟然成功了,原因是那几次基本都是在已经安装了nt6的机器上部署,c盘根目录已经有了bootmgr,此次用虚拟机在裸机上部署,问题暴露了。真是要吸取教训了。
此次也帮助我搞明白这几天琢磨的另一个问题:grub4dos在引导vhd的时候,还是要用到原机的bootmgr(有可能还有BCD),而不是可以直接加载vhd

bfgxp 发表于 2014-12-8 11:01:32

anarki2001 发表于 2014-12-7 22:56
感谢各的帮助,我自己解决了:原来是部署文件的时候,漏拷了bootmgr,晕死。。。。这个蛋疼的问题是这么产 ...

在nt6系统部署过程中是需要活动分区中有bootmgr与boot/BCD的,系统安装好后可以没有这两个

1e3e 发表于 2014-12-12 08:51:22

bfgxp 发表于 2014-12-8 11:01
在nt6系统部署过程中是需要活动分区中有bootmgr与boot/BCD的,系统安装好后可以没有这两个

在实机上用你的vhd系统有一年多了,昨天又蓝屏了,重启后不能开机(连进bios都不行),请电脑公司的人过来把机子重装了,郁闷中

唐天洛 发表于 2015-10-7 11:49:04

grub4dos在引导vhd的时候,还是要用到原机的bootmgr(有可能还有BCD),而不是可以直接加载vhd。
这个是不是意味着没必要用G4D引导VHD呢,因为最终又绕到bootmgr了,不如直接从bootmgr启动。
页: [1]
查看完整版本: grub4dos启动vhd总是报error15:file not found,是不是因为vhd不支持嵌套?