无忧启动论坛

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

[求助]grub4dos启动精简安装版失败 [已解决]

[复制链接]
跳转到指定楼层
1#
发表于 2008-6-29 21:08:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
基本情况:
XP精简安装版:
       精简工具:Nlite1.4.1
       精简后I386目录下无WINNT.exe
虚拟机:VMware 6.0.0 build-45731
       虚拟机硬盘 (IDE 0:0) 3G  分二区,主系统分区1.5G 逻辑分区1.5G
        主系统分区NTFS格式装 XP   
        逻辑分区 NTFS格式 根目录下 有精简版安装光盘释放的 \I386 安装目录且有所有文件。
  虚拟机光驱  (IDE 0:1) 有精简安装版光盘
        精简版安装光盘制作:EasyBoot 5.0.9.553制作启动画面,其中以grub.img作启动XP精简安装版
  虚拟机软驱 grub.img镜像
  grub.img  中  grub.exe版本为 GRUB4DOS 0.4.3 2008-03-14
      menu.lst 内容如下:
splashimage (fd0)/BOOT/MY.XPM.GZ
fontfile (fd0)/BOOT/FONTS
timeout 20
default 1
title 【0】  老九 WinPE 老毛桃修改之撒手不管版(Build 070911)
chainloader (cd)/MTPE/SETUPLDR.BIN
title 【1】  XP_光盘安装版  
find --set-root (cd)/I386/SETUPLDR.BIN
chainloader (cd)/I386/SETUPLDR.BIN
boot
title 【2】  XP_硬盘安装版  
find --set-root /I386/SETUPLDR.BIN
chainloader /I386/SETUPLDR.BIN
boot
title 【2】  启动本机 WINDOWS 2000/XP 系统
find --set-root /ntldr
chainloader /ntldr
title 【3】  启动本机 VISTA 系统
find --set-root /bootmgr
chainloader /bootmgr
title 【4】  重启计算机
reboot
title 【5】  关闭计算机
halt

软驱启动: 

title 【1】  XP_光盘安装版  
find --set-root (cd)/I386/SETUPLDR.BIN
chainloader (cd)/I386/SETUPLDR.BIN
boot
出现如下图错误:

title 【2】  XP_硬盘安装版  
find --set-root /I386/SETUPLDR.BIN
chainloader /I386/SETUPLDR.BIN
boot
出现下图错误

用光盘启动也是一样的错误提示

百思不得其解,故求助于达者。

BTW:Nlite精简完制作完的XP安装光盘,直接制作成ISO能正常运行。



20080702 20:04 小结以方便TX

至目前为止,本贴已经验证了,在VM环境下[VMware 6.0.0 build-45731 and VMware Workstation版本V5.5.3 Build 34685],无法用该版

本的G4D [GRUB4DOS 0.4.3 2008-03-14]列出文件目录。故大胆质疑该版本G4D的兼容性。

为什么会选这个版本的G4D,那是为因本人翻阅本论坛关于G4D的研究,认为该版本的G4D为正式版,稳定、实用性好一点。

鉴于本人尚未混入时空论坛,所以借无忧宝地求助于诸位达人。请不吝赐教。

20080702 23:28

目前已对一楼,虚拟机测试不成功的盘,刻录到光盘,用grub启动光盘,命令行初始化光盘,

即 cdrom --init 结果如我VM二个版本测试后的结果一样。

同时我用winiso制作了一个grub启动的光盘,内容一样。

接下来
map --hook

cat (cd0)/<tab>

可列目录



chainloader (cd)/I386/SETUPLDR.BIN

boot

成功加载~

简直不敢相信。~~

能够执行非标准的Windows XP安装程序。

在此感谢 Climbing 不点 netwinxp xypcmac 等坛友给予的无私帮助,特别是Climbing版主,点拨我在“真机”测试,而我恰恰一直信任VM而忽略;指点我用命令行测试G4D,让我更深入了解G4D的细节。。

题外话:各位用什么虚拟机测试G4D。。

20080703 0:13

下载Virtual PC 6.0.156.0 安装之,grub命令行测试ISO,PASSED

[ 本帖最后由 caney 于 2008-7-3 12:15 AM 编辑 ]
2#
 楼主| 发表于 2008-6-30 00:59:32 | 只看该作者
沙发自己坐,等待高人来!~
回复

使用道具 举报

3#
发表于 2008-6-30 08:45:31 | 只看该作者
这好像是路径、盘符问题,还有grub的版本太旧,换新的版本,再仔细核对一下试试。

[ 本帖最后由 hhhhhh 于 2008-6-30 08:51 AM 编辑 ]
回复

使用道具 举报

4#
发表于 2008-6-30 12:57:39 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

5#
发表于 2008-6-30 13:12:29 | 只看该作者
楼主用grub.exe进入grub4dos,这个时候,grub4dos并没有初始化光驱,因此,根本不可能有(cd)这个设备,所以,当然是文件找不到。

应该这样:

title 【1】  XP_光盘安装版  
cdrom --init
map --hook
chainloader (cd)/I386/SETUPLDR.BIN

至于从硬盘上直接chainloader setupldr.bin,我印象中这样是无法启动xp的安装程序的,这种方式只适合在光盘上使用。
回复

使用道具 举报

6#
 楼主| 发表于 2008-6-30 15:56:32 | 只看该作者
谢谢各位的回答,特别是Climbing班猪的点拨,咱晚上测试完毕再汇报结果!~
回复

使用道具 举报

7#
 楼主| 发表于 2008-6-30 23:04:54 | 只看该作者
title 【1】  XP_光盘安装版  
cdrom --init
map --hook
chainloader (cd)/I386/SETUPLDR.BIN
改为后,出现以下错误:

分别用软盘及自行压制的ISO启动过。均为以上错误
ISO压制方法mkisofs
命令:
mkisofs -R -J -b grldr -no-emul-boot  -boot-load-size 4 -o USBCD.iso MyCD
我用软驱还试了
一、Win XP Pro SP2 VOL MSDN 简体中文
二、Windows XP SP2上海 g-o-v-e-r-n-m-e-n-t版
均为以上错误。

继续研究中。望达人明示我的错误。
回复

使用道具 举报

8#
发表于 2008-7-1 08:34:03 | 只看该作者
菜单项中明明没有find --set-root这条命令,为什么你的截图中却会出现这条命令的错误提示呢?

你可以进入grub4dos的命令行(从菜单界面按c),然后手工执行:
cdrom --init
map --hook

然后用:cat (cd0)/<tab>

注意<tab>表示键盘上的Tab键,grub4dos有自动完成功能,这时候它会列出光盘上的文件内容,如果可以访问的话。最好把这个过程,用截图的方式贴上来。
回复

使用道具 举报

9#
 楼主| 发表于 2008-7-1 21:16:32 | 只看该作者
原帖由 Climbing 于 2008-7-1 08:34 AM 发表
菜单项中明明没有find --set-root这条命令,为什么你的截图中却会出现这条命令的错误提示呢?
你可以进入grub4dos的命令行(从菜单界面按c),然后手工执行:
cdrom --init
map --hook
然后用:cat (cd ...


首先对Climbing表示歉意,我确实忘了把find --set-root删除。

接下来按Climbing的要求执行命令行操作并截图。
按C进入命令行


初始化CDROM



map



按TAB前



按TAB后



我怀疑用mkisofs命令行集成光盘时就出错,特附上相关命令
mkisofs -R -J -b grldr -no-emul-boot  -boot-load-size 4 -o USBCD.iso MyCD

衷心谢谢Climbing斑主耐心指导。
回复

使用道具 举报

10#
发表于 2008-7-1 22:03:54 | 只看该作者
我对mkisofs不熟悉,但从提示上看,很可能是你的VMware有问题,拿到真机上试验一下。
回复

使用道具 举报

11#
发表于 2008-7-1 22:27:11 | 只看该作者
从LZ的cdrom --init返回的提示来看,很可能使用的是VM虚拟的SCSI光驱,并且该虚拟的光驱很可能不支持完整ATAPI标准。建议LZ虚拟一个IDE光驱再44,或者干脆跑到VPC看看。

[ 本帖最后由 netwinxp 于 2008-7-1 10:28 PM 编辑 ]
回复

使用道具 举报

12#
 楼主| 发表于 2008-7-1 22:58:00 | 只看该作者
正在下老版的VMware ,netwinxp一言惊醒梦中人啊~


下载完成前先试试netwinxp的方法!~

回头一看自己的虚拟光驱。。IDE(0:1)

心儿又凉了。~

经测试,结果还是失败。

还是要谢谢netwinxp指点。

[ 本帖最后由 caney 于 2008-7-1 11:01 PM 编辑 ]
回复

使用道具 举报

13#
 楼主| 发表于 2008-7-1 23:24:27 | 只看该作者
换VMware Workstation版本V5.5.3 Build 34685 后结果还是一样。

因手头没刻录机,又不喜欢用vpc,所以走进死胡同。

郁闷ing~
回复

使用道具 举报

14#
发表于 2008-7-2 09:26:58 | 只看该作者
找一张标准的微软的xp安装光盘先试试。
回复

使用道具 举报

15#
发表于 2008-7-2 11:24:16 | 只看该作者
其实,我觉得不是VM的问题,也可能不是ISO的问题。是菜单的问题,试试单独用这个

title 【1】  XP_光盘安装版  
cdrom --init
map --hook
chainloader (cd0)/I386/SETUPLDR.BIN

你对比一下就知道哪里不一样了。同时,GRUB 对大小写也敏感。
回复

使用道具 举报

16#
发表于 2008-7-2 11:44:49 | 只看该作者
现在很显然不是VM就是ISO的问题。看前面的截图就知道了。
回复

使用道具 举报

17#
发表于 2008-7-2 11:55:48 | 只看该作者
本身我也怀疑是ISO的问题,但他前面的测试菜单有问题,你觉得是否有关系呢?

chainloader (cd0)/I386/SETUPLDR.BIN

这一行少了一个数字“0”
回复

使用道具 举报

18#
发表于 2008-7-2 14:27:55 | 只看该作者
用(cd)跟用(cd0)在一个光驱时,效果应该是一样的。
回复

使用道具 举报

19#
发表于 2008-7-2 14:36:40 | 只看该作者
据我所知,是不一样,少了东西是启动不了的。
回复

使用道具 举报

20#
发表于 2008-7-2 14:37:31 | 只看该作者
应该0表示第一个,1表示第二个。
回复

使用道具 举报

21#
发表于 2008-7-2 15:06:21 | 只看该作者
(cd) 代表 BIOS 赋予的 no-emulation mode CDROM 盘号。

(cd0), (cd1), ..., 则代表由 cdrom --init 所探测到的 CDROM 设备。

如果机器从 no-enulation 模式的光盘启动,那么就有 (cd) 这个设备。否则,(cd) 就可能是不存在的(但也有例外,在 qemu 中,无论是否从光盘启动,它都能够赋予 (cd) 给光盘)。即便在使用 cdrom --init 之后,(cd) 也不一定存在(只有 (cd0), (cd1) ... 是存在的,由识别到的光驱数目而定)。
回复

使用道具 举报

22#
 楼主| 发表于 2008-7-2 19:10:39 | 只看该作者
即使有不点大师对CDROM的阐释,我仍对G4D启动安装版XP无能为力。

BTW:已试过二个标准版的Windows XP 安装盘。

如果要我试msdn 的windows xp sp3 标准安装版都有条件。

但即使试SP3标准安装版,仍无意义,不是吗?

至目前为止,本贴已经验证了,在VM环境下[VMware 6.0.0 build-45731 and VMware Workstation版本V5.5.3 Build 34685],无法用该版

本的G4D [GRUB4DOS 0.4.3 2008-03-14]列出文件目录。故大胆质疑该版本G4D的兼容性。

为什么会选这个版本的G4D,那是为因本人翻阅本论坛关于G4D的研究,认为该版本的G4D为正式版,稳定、实用性好一点。

鉴于本人尚未混入时空论坛,所以借无忧宝地求助于诸位达人。请不吝赐教。

[ 本帖最后由 caney 于 2008-7-2 08:04 PM 编辑 ]
回复

使用道具 举报

23#
发表于 2008-7-2 20:58:15 | 只看该作者
抱歉,本人没有XP的安装光盘,不能确定到底怎么回事。看你前面列出目录文件时的死机显示,我觉得可能是 VMware 有什么缺陷。当然也不排除 grub4dos 的 iso9660 驱动模块出现 bug 的可能。这需要进一步验证才可确定。你不妨多试验几个虚拟机,看看其他虚拟机是否也出现同样的问题。你可以免费得到的虚拟机还有 Virtual PC,VirtualBox,QEMU,不妨都试试。我猜,虚拟机出现 bug 的可能性要大一些,所以建议你换换虚拟机。

[ 本帖最后由 不点 于 2008-7-2 09:01 PM 编辑 ]
回复

使用道具 举报

24#
发表于 2008-7-2 21:05:59 | 只看该作者
我测试过,完全没有问题
回复

使用道具 举报

25#
发表于 2008-7-2 21:10:22 | 只看该作者
其实虚拟机的设备和真实机子还是有很大的差别的,比如:
1、虚拟机的设备占用的内存并不完全包含在你分配的内存中,也就是说虚拟机64M可启动的PE在真实机子里面很有可能启动不了。
2、虚拟机的BIOS通讯区数据不一定能得到及时更新(我和蛙兄在改进一键还原的延时算法时就发现这个问题)。
3、虚拟机中一些CPU指令不能执行。
4、有的虚拟机(比如VM)含有几个VEN_0000或DEV_0000的虚拟设备,很可能是用来和宿主机通讯的。
回复

使用道具 举报

26#
 楼主| 发表于 2008-7-2 21:41:48 | 只看该作者
原帖由 netwinxp 于 2008-7-2 09:10 PM 发表
其实虚拟机的设备和真实机子还是有很大的差别的,比如:

虚拟的设备确实与真实硬件有所区别,不然我们都不用添加硬件了;但我相信VM专业虚拟软件公司至少80%能模拟真实硬件的运作。
所以本人仍以VM作为一个可信的研究工具。

1、虚拟机的设备占用的内存并不完全包含在你分配的内存中,也就是说虚拟机64M可启动的PE在真实机子里面很有可能启动不了。

这一点我很难把握您的意思。我理解的虚拟机内存是这样的:已分配的内存+不足时是否使用PC的虚拟内存。
回复

使用道具 举报

27#
 楼主| 发表于 2008-7-2 21:44:25 | 只看该作者
原帖由 xypcmac 于 2008-7-2 09:05 PM 发表
我测试过,完全没有问题


请把您测试的过程,使用的软件版本,及g4D的菜单代码展示一下,以便启发后进肓流。
回复

使用道具 举报

28#
 楼主| 发表于 2008-7-2 21:45:11 | 只看该作者
原帖由 不点 于 2008-7-2 08:58 PM 发表
抱歉,本人没有XP的安装光盘,不能确定到底怎么回事。看你前面列出目录文件时的死机显示,我觉得可能是 VMware 有什么缺陷。当然也不排除 grub4dos 的 iso9660 驱动模块出现 bug 的可能。这需要进一步验证才可确 ...


回去以后马上测试。谢谢提醒~
回复

使用道具 举报

29#
发表于 2008-7-2 22:06:05 | 只看该作者
我曾经试过用GRUB直接启动ISO,然后再启动XP安装盘成功,不过忘了具体怎么弄的了,应该就是直接chainloader /I386/SETUPLDR.BIN的,因为我对GRUB不熟悉,肯定搞不出什么有技术含量的东西来,嘿嘿。应该是虚拟机的问题吧,LZ要是有结果了还说一下哦
回复

使用道具 举报

30#
发表于 2008-7-2 22:33:20 | 只看该作者
原帖由 caney 于 2008-7-2 21:41 发表

虚拟的设备确实与真实硬件有所区别,不然我们都不用添加硬件了;但我相信VM专业虚拟软件公司至少80%能模拟真实硬件的运作。
所以本人仍以VM作为一个可信的研究工具。


这一点我很难把握您的意思。我理解 ...

我们真实的机子并不是所有的物理内存空间都可以被使用,与BIOS、ACPI、PCICFG、显存映射的页面地址重合的部分是没办法被使用的,然而虚拟机里面我们所设定的内存并没有把这些完全包括在内。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-11-6 23:14

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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