无忧启动论坛

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

grub4dos加载img问题....『已解决』

[复制链接]
跳转到指定楼层
1#
发表于 2010-4-22 11:29:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
U:C4 M:512 主板:Intel Grantsdale-G i915GV

分区情况:


碰到这台电脑grub4dos引导以后加载不了我的img dos工具箱。尝试memdisk也是如此。
测试版本grub4dos 044(6月20日) 045a (4月17日和4月20日版本)

症状:grub4dos加载完img,出现一个光标闪烁,再也没下去了
         grub4dos--memdisk加载以后就一直在跳菜单

我的菜单:
  1. default=1
  2. timeout=10
  3. fallback 2
  4. find --set-root --ignore-floppies --ignore-cd /boot/grub/yjd.gz
  5. fontfile /boot/grub/fonts.gz
  6. splashimage /boot/grub/long.gz
  7. foreground 00FF7F
  8. title
  9. clear
  10. title  1, Start Windows NT/2K/XP [HD0,0]
  11. chainloader /ntldr
  12. title  2, Tools [Map]
  13. find --set-root --ignore-floppies --ignore-cd /boot/grub/yjd.gz
  14. map --mem /boot/grub/yjd.gz (fd0)
  15. map --hook
  16. chainloader (fd0)+1
  17. rootnoverify (fd0)
  18. title  3, Tools [MemDisk]
  19. fallback 3
  20. find --set-root --ignore-floppies --ignore-cd /boot/grub/memdisk.gz
  21. kernel /boot/grub/memdisk  c=284 h=2 s=36 floppy
  22. initrd /boot/grub/yjd.gz
复制代码
同时各下了最新版,grub4dos英文版测试都是如此,不知到啥问题了。
还没见过这种可以启动grub4dos但是引导img错误,syslinux引导也是一样杯具囧
我这个img放U盘用2年了。所有我接触的机器都会装这个dos工具箱。img应该没问题。
尝试过移动位置怕坏扇区,还是如此

[ 本帖最后由 yjd 于 2010-4-24 13:29 编辑 ]
2#
发表于 2010-4-22 11:41:57 | 只看该作者
尽量不要用GZ格式,Grub4DOS_0.4.5A_2010.03.14版试过没问题,后面的版本已经没试过了,因为我自己用的全部改用IMG格式了,楼主可以改用IMG格式试试。。。。。
回复

使用道具 举报

3#
发表于 2010-4-22 12:48:26 | 只看该作者
试试直接使用
chainloader (fd0)/io.sys而不是chainloader (fd0)+1
回复

使用道具 举报

4#
发表于 2010-4-22 13:07:44 | 只看该作者
从描述的情况来看,问题出在img上,应该首先怀疑 img 有毛病。从其他地方找原因,都太渺茫了。

grub4dos 曾经遇到过很多问题,那些问题都不是 grub4dos 的 bug,而最终证明是 bios 的 bug。是 bios 有意或者无意地不遵守已有的规范和工业标准而造成的 bug。既然 grub4dos 会撞上,其他实模式的软件一样也会撞上。现在 grub4dos 躲过了灾难,但其他不幸的 DOS 软件却没有躲过。我猜,情况大致就是这样的。
回复

使用道具 举报

5#
 楼主| 发表于 2010-4-22 14:16:14 | 只看该作者
按照上面几个方法测试还是一样


下了几个dos区的img症状一样。

估计硬件问题了。还有什么可测试的?等下下个bios刷下
Orz 原来是杂牌主板
http://www.szpcpc.com/chinese/productshow.asp?pid=573&Str=INTEL%CF%B5%C1%D0%D6%F7%B0%E5&cid=523
连bios都没得下囧

[ 本帖最后由 yjd 于 2010-4-22 15:20 编辑 ]
回复

使用道具 举报

6#
发表于 2010-4-22 21:20:37 | 只看该作者
那几个fallback语句是什么用意?非要不可吗?可否删掉?
回复

使用道具 举报

7#
发表于 2010-4-22 21:27:47 | 只看该作者
失败不重要,探究失败的原因才重要。现在还不知道究竟是哪个软件引起的失败。应该去掉 config.sys 和 autoexec.bat 中的所有程序,看看还死机不?如果还是死机,就换个 DOS,比如从 MS-DOS 换成 FreeDOS,或者反之。总之,更换一个 DOS,不加载任何驱动程序和 TSR 程序,看看还死机不?估计这样就不会死机了,因为主板厂家都要运行 DOS,而且 BIOS 程序员也都是 DOS 高手。所以,不能运行 DOS 的情况是不可想象的。

fallback 确实是胡乱使用。不过,新版的 grub4dos 会检测由 fallback 的乱用所导致的无限循环,因此,这类的死机是不会发生的。

[ 本帖最后由 不点 于 2010-4-22 21:33 编辑 ]
回复

使用道具 举报

8#
 楼主| 发表于 2010-4-23 00:53:55 | 只看该作者
原帖由 不点 于 2010-4-22 21:27 发表
失败不重要,探究失败的原因才重要。现在还不知道究竟是哪个软件引起的失败。应该去掉 config.sys 和 autoexec.bat 中的所有程序,看看还死机不?如果还是死机,就换个 DOS,比如从 MS-DOS 换成 FreeDOS,或者 ...


好的有空我再测试看看。第三行fallback 2确实多余囧
回复

使用道具 举报

9#
发表于 2010-4-23 15:15:33 | 只看该作者
原帖由 pseudo 于 2010-4-22 21:20 发表
那几个fallback语句是什么用意?非要不可吗?可否删掉?

这个貌似是 加载中文 用这个好点。 还有加载失败了可以跳到的那个菜单的一个命令吧。。
回复

使用道具 举报

10#
发表于 2010-4-23 16:16:48 | 只看该作者
直接去掉 --ignore-floppies --ignore-cd即可
回复

使用道具 举报

11#
 楼主| 发表于 2010-4-24 13:28:11 | 只看该作者
早上抽空测试了下

下了3个img dos622 dos7.10 freedos 用winxp自带的实施后ms-dos制作的img

结果是msdos7.10 进不去。不管是哪个大小版本的io.sys 汗啊。(已清空autoexec.bat,config.sys)

dos622和freedos都可以。
回复

使用道具 举报

12#
发表于 2010-4-27 16:35:39 | 只看该作者
学习了,我现在的问题也是光标删进不去系统!研究,研究。
回复

使用道具 举报

13#
发表于 2010-4-27 17:36:08 | 只看该作者
祝贺 yjd 成功了!

现实世界是纷繁复杂千变万化的,各种稀奇古怪的事情都可能出现。

我觉得这个问题仍然可以继续研究下去,仍然有很多疑问没有弄清楚。

你的 msdos 7是从哪里来的?你可否用 win95,win98,winXP 制作三个不同的 DOS 启动盘,制作完之后,把 config.sys 和 autoexec.bat 删除掉,然后测试启动。看看结果如何?

我不太相信一个主板厂商不支持微软的 win95 以后的 DOS,却支持以前的老的 DOS,以及 FreeDOS。

这个事情一旦确认,那么,我认为可能性之一就是,主板厂商故意这么做。grub4dos 对于 win95 以后的 DOS 支持良好(可以直接chainloader io.sys),而对于 dos622 的 IO.SYS 不支持。虽然 grub4dos 也支持 FreeDOS,但 FreeDOS 整体上还有很多缺陷,无法完全取代 MSDOS。如果主板厂商确实是故意这么做,它也可能是有意让 grub4dos 不能用 chainloader 启动微软的 IO.SYS,让 grub4dos 不再“万能”。
回复

使用道具 举报

14#
发表于 2010-4-27 23:36:08 | 只看该作者
这个问题从未见过
我也不太相信主板不支持DOS 7.10 ,而DOS 6.22可以?
要知道,DOS 6.22只是没有长文件名支持,没有FAT32支持,DOS 7.10其实只是在6的基础上修修补补的。
回复

使用道具 举报

15#
 楼主| 发表于 2010-4-28 13:06:56 | 只看该作者
原帖由 不点 于 2010-4-27 17:36 发表
祝贺 yjd 成功了!

现实世界是纷繁复杂千变万化的,各种稀奇古怪的事情都可能出现。

我觉得这个问题仍然可以继续研究下去,仍然有很多疑问没有弄清楚。

你的 msdos 7是从哪里来的?你可否用 win95,wi ...



有空我再试试,win95我没地方找。98,xp还能搞定。



上次测试我看过不同img里的io.sys文件大小都不同如图只有622可以。
回复

使用道具 举报

16#
 楼主| 发表于 2010-5-4 14:14:44 | 只看该作者
回不点大师,map,memdisk方式都一样。看来是厂商故意限制。

2个img都是原始系统上制作出来。

1_001.gif (7.41 KB, 下载次数: 197)

1_001.gif

1_002.gif (12.59 KB, 下载次数: 209)

1_002.gif
回复

使用道具 举报

17#
发表于 2010-5-4 16:24:20 | 只看该作者
我在想,直接从硬盘启动MS-DOS 7.1是否可以呢? EASYBOOT引导IMG正常吗?
回复

使用道具 举报

18#
 楼主| 发表于 2010-5-4 22:14:09 | 只看该作者
原帖由 sgw888 于 2010-5-4 16:24 发表
我在想,直接从硬盘启动MS-DOS 7.1是否可以呢? EASYBOOT引导IMG正常吗?


本来就是装在硬盘的。
mbr为grub4dos,img放在C盘。
回复

使用道具 举报

19#
发表于 2010-5-4 23:50:44 | 只看该作者
你完全没有答复 sgw888 的提问。sgw888 是让你不用 grub4dos 也不用 memdisk 来启动,试试看效果如何。

比如说,直接在你的硬盘上安装 DOS(FAT16/32 都可以),而不是经由 grub4dos 来虚拟一个 DOS 软盘。

如果你会用 easyboot 的话,你也可以试试 easyboot 启动虚拟软盘,看看结果。

XORLDR 也一样,如果你熟悉的话,你都可以试试。

========

尽管你做了很多测试,但是,我仍然不太相信。我仍然怀疑是你的某个操作失误造成的。

========

其实还有一项测试需要做,就是,用不带 --mem 的 grub4dos 的软盘仿真来试验。

========

如果你能确信是主板的问题,你应该报告详细的主板信息。同时,这个问题很重要,你应该停下手中的其他不重要的工作,全力把这个情况弄清楚。

比如,从光盘启动 Windows 98 的安装盘,或者光盘上的 DOS 7+ ,看看如何。
回复

使用道具 举报

20#
发表于 2010-5-5 08:36:18 | 只看该作者
不点说的对,我就是那个意思,把DOS直接装在硬盘,或者直接启动WIN98的安装盘,说实话,我也不太相信不能启动DOS7.1 .

我只遇到过三星的很多型号笔记本不能启动  EASYBOOT做的启动光盘,出现画面之后无法选择.但WIN98安装光盘是可以的.  后来的一些型号,在BIOS中有一项关于USB 什么支持的,记不太清了,关闭之后就可以了,但是USB设备就不能用了.
回复

使用道具 举报

21#
 楼主| 发表于 2010-5-5 09:26:20 | 只看该作者
理解错误。呵呵,有空我试试估计明天有时间。工作还是要做的。

  1. 我只遇到过三星的很多型号笔记本不能启动  EASYBOOT做的启动光盘,出现画面之后无法选择.但WIN98安装光盘是可以的.  后来的一些型号,在BIOS中有一项关于USB 什么支持的,记不太清了,关闭之后就可以了,但是USB设备就不能用了.
复制代码

这个是线索我好好找找,以前也是有碰到usb选项禁用就可以hdd usb引导。

到时候我直接格式化为fat32,然后dos下format /q /s c:
看看怎么样。
回复

使用道具 举报

22#
 楼主| 发表于 2010-5-5 19:20:27 | 只看该作者
下午针对msdos7.1测试结果:

1,无--mem模式不行

2,XORLDR 也不行

3,用98ghost盘拿来装一样引导不了。mbr已用fdisk /mbr 写过。(症状一样一个光标在闪烁,机器无死机小键盘灯可操作)

4,接着我的hdd U盘双引导(syslinux,grub4dos)结果一样不能启动

5,cmos里该禁止的全禁最安全模式一样不行。

6,电脑没光驱,所以就没测试easyboot了

7,grub4dos加载iso(easyboot) 未测试

8,下午又碰到另外一台天机主板到时可以启动我U盘的maxdos,不过那主板型号是945GZ,和这台不同。
回复

使用道具 举报

23#
发表于 2010-5-5 21:48:34 | 只看该作者
没有光驱,真是一大遗憾啊。  如果要测DOS能不能从硬盘直接引导,最好的方法是: 从光驱启动WIN98安装盘,进入DOS命令行,然后 SYS C:  ,把系统传输到C盘,这样来做测试。    SYS命令有一个重要的功能,就是它会刷新操作系统的引导扇区,可能会改写某些BPB参数块,比如磁头数,柱面数等等,这可是至关重要的。
回复

使用道具 举报

24#
 楼主| 发表于 2010-5-6 00:15:17 | 只看该作者
原帖由 sgw888 于 2010-5-5 21:48 发表
没有光驱,真是一大遗憾啊。  如果要测DOS能不能从硬盘直接引导,最好的方法是: 从光驱启动WIN98安装盘,进入DOS命令行,然后 SYS C:  ,把系统传输到C盘,这样来做测试。    SYS命令有一个重要的功能,就是它会 ...


现在基本可以确定是主板故意那个,用光盘启动98会无视这个不能引导的问题?我觉得还是一样吧?
我U盘启动同样进入不了。(U盘引导和光盘引导应该差不多)

由于现在这个主板没办法启动dos7 。
然后我就尝试把dos7里的format和sys还有sfdisk都拷贝到了dos622里和freedos里然后启动他们来操作
dos622悲剧认不到大硬盘所以就到了freedos里用fdisk /mbr写mbr把之前的grub4dos清干净。而dos7里的sys和format都工作不了唉。
所以我建立的环境应该是纯净98了。那个ghost98盘克隆过去的bpb原来作者肯定也是在98系统上封装的『ghost是会一起备份bpb的』
如果需要我可以保存下来对比下。


另外还有什么可测试的方法?

[ 本帖最后由 yjd 于 2010-5-6 00:18 编辑 ]
回复

使用道具 举报

25#
发表于 2010-5-6 09:16:20 | 只看该作者
好像没有可以再测试的方法了吧.主要的问题是,您一直测试的使用GRUB加载IMG来启动,从U盘进入不了,这又牵扯到其它的问题了吧,或者主板对USB支持不好呢?? 对不对.
所以,还是应该用光盘启动WIN98安装盘,进入WIN98的DOS启动盘来测试一下,可以这样认为,不能启动EZBOOT的光盘,这没什么,不能启动GRUB做的引导,也没什么,但是如果不能引导 WIN98安装盘,这就说不过去,因为WIN98毕竟是N久之前的东西了,如果连他的启动光盘都不能正常启动的话,那我们对这样的主板还能说什么呢???

说到GHOST98,我的意思是说,不同机器硬件可能 BPB会有差别,我还没有碰到过台式机因为BPB的原因不能正常启动,笔记本倒是遇到过,但您说的那主板不是很特珠嘛,所以要特别问题特珠对待了,因此,我提到了用SYS命令刷新一下.
但之前,你一直没有条件用WIN98安装光盘来引导试一下,所以一切无从谈起.但有一点是肯定的,这主板实在是有问题.
回复

使用道具 举报

26#
 楼主| 发表于 2010-5-6 11:48:33 | 只看该作者
好像没有可以再测试的方法了吧.主要的问题是,您一直测试的使用GRUB加载IMG来启动,从U盘进入不了,这又牵扯到其它的问题了吧,或者主板对USB支持不好呢?? 对不对.

主板支持usb启动,pe等其他不是msdos71的都可以。
而又和grub4dos没关系,因为U盘上的syslinux一样不能进入msdos71,而其他都正常。

启动98光盘肯定是没问题,现在是主板限制不能引导msdos71的io.sys

同是98的bpb应该是一样的,就比如ntfs磁盘格式都一样。用winhex可以看。
刚才特意保存2个ntfs分区的bpb(16扇区)然后16进制对比。只有偏移0x48不同这个是磁盘卷标

98 fat32格式只用到前 3扇区 1536字节
回复

使用道具 举报

27#
发表于 2010-5-6 13:21:31 | 只看该作者
不能引导IO.SYS实在是很奇怪. 只有两种解释,一是主板设计有缺陷,二是故障这样设计的,不知道意义何在?
回复

使用道具 举报

28#
发表于 2010-5-6 13:27:23 | 只看该作者
关于BPB的猜想,如果您感兴趣,请阅读一下下面的帖子

笔记本硬盘的外接分区与“NTLDR is Missing”
http://forum.51nb.com/viewthread.php?tid=94827

对于帖子中提到的一些知识,我也只是大体上能明白,不能真正理解其中的含义.所以才会有关于BPB的怀疑.
回复

使用道具 举报

29#
 楼主| 发表于 2010-5-6 14:04:03 | 只看该作者
原帖由 sgw888 于 2010-5-6 13:27 发表
关于BPB的猜想,如果您感兴趣,请阅读一下下面的帖子

笔记本硬盘的外接分区与“NTLDR is Missing”
http://forum.51nb.com/viewthread.php?tid=94827

对于帖子中提到的一些知识,我也只是大体上能明白,不能 ...


以前维护机器在ibm笔记本上确实有这个问题,只能本机分区,要是通过转接头接到台式机再分区,挂回来的时候又恢复原样等于没分区。当时遇到很多比较薄的笔记本都是无光驱每次都要软盘或者接底座。-_-!!
回复

使用道具 举报

30#
发表于 2010-5-7 00:08:49 | 只看该作者
wuyou是个技术气氛浓厚的论坛。讨论问题,就要把问题的根源挖掘出来。以前总是有人跟踪我,不管我说什么,紧跟的就是骂声一大片。跟踪我的人并没有走开,但我希望不再听到他的骂声,因为我好怕呀!跟踪我可以,但不要再骂了,可以吗?尊敬的跟踪者朋友?

既然那人不再骂了,我就放心地、专注地谈论这个问题。

呵呵,这个问题,说来话长了。两年前,我也遇到了一个笔记本。这个笔记本装的是 XP。但有一次需要装 win98,就把原版的 win98 光盘拿来安装,结果你猜怎么着?98 盘启动死机了!这让我很震惊!不管什么 XP 盘,都能启动,但原装的 98 盘就死掉。我研究为什么死机。结果弄明白了,微软原装的 98 光盘,它在将控制传递给 DOS 之前,先有一段短小的程序要运行,这段程序就是提示用户是否跳过光盘而从硬盘启动。正是在这段程序中死机了。这段程序不长,很容易找到导致死机的指令。就是 int13/ax=4B00h 死机了。这个中断调用就是用来终止 CDROM 仿真的。

后来,用 grub4dos 的 cdrom --init 和 map --hook 来启动 (cd0) 设备,成功启动了这张光盘。由于我们的仿真代码不会故意制造死机(万一死机,就是 bug,一定会解决的,因此说,不会死机的),所以,int13/ax=4B00h 不再死机,这样,98 盘也就顺利启动了。

我那时直觉上就觉得这是微软制造的结果。微软不希望 98 还能运行在大多数机器上,所以,它就像关灯一样,逐步把以前的灯关掉。它应该是收买了硬件厂商,或者干脆就给硬件厂商编写了硬件程序,达到死机的目的。

这次 yjd 所遇到的 DOS 死机,依我看,八成还是微软所为。

有人可能有疑问了。为何不让 FreeDOS 死机?为何不让 dos6.22 死机?为何不让 syslinux 和 grub 死机?我的推测是,dos6.22 不是主流,而 dos7 却是具有主流统治地位的,现今的大多数 dos 程序都以 dos7 为基础。所以,斩掉 dos7 就可以有效地惩治那些基于 dos 的软件。而 freedos,syslinux,grub,都是开源自由的软件,微软先前已经尝试过摧毁开源软件,但证明完全无效。开源软件的最厉害的地方就在于,它是开源的,它很容易通过用户报告和跟踪调试,而找到死机的指令。然后,就躲过了微软设计的圈套和陷阱(假定BIOS 厂家只不过就是傀儡而已,假定它们只是微软的附属品或者代言人)。dos 是微软自己家的产品,微软想让它死,那是很容易的,只要买通 BIOS 厂家便可。让 dos 干净利索地马上死掉,也不符合微软的利益。微软需要的是逐步把它杀死。同时,硬件厂商也需要用 dos 和实模式的软件,彻底杀死 dos 对硬件厂商来说并没有好处。与开源软件的情况不同,微软以这种方式杀死 dos,外界却很难通过调试找到其秘密之所在。因为 dos 的源码没有公开,人们无法利用 dos 的源码编译出一个调试版的 dos来,因此,很难破解其隐藏的秘密。

多说一句,以上只是我的一管之见。是对是错,还要靠你自己的头脑来分析。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-17 06:55

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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