无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 6687|回复: 17
打印 上一主题 下一主题

【已解决】GRUB引导DM或PQ分区时出现两个相同硬盘

[复制链接]
跳转到指定楼层
1#
发表于 2009-2-5 12:35:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
自己作的一个USB维护优盘,加入了PQ,DM分区等工具,能够运行,但遇到了几个不大不小的问题,特来请教
以前用的这种方式,PM能用,但有两个磁盘,磁盘1为优盘,而且有时会提示磁盘需要修复,分区时需要切换到磁盘2,DM根本就不能用,启动到一半时就卡住了
  1. title <06>  运行 PM8.05分区大师
  2. map --mem /minipe/boot/pm805.img (fd0)
  3. map --hook
  4. chainloader (fd0)+1
  5. rootnoverify (fd0)

  6. title <07>  运行 DM9.57万用版
  7. map --mem /minipe/boot/dm.img (fd0)
  8. map --hook
  9. chainloader (fd0)+1
  10. rootnoverify (fd0)
复制代码
试了一下XQRP给出的方式,DM和PQ都能正常使用(表示感谢),PQ的默认磁盘1也是硬盘了,但两个软件都会识别出两个相同的硬盘,想问一下能不能去掉一个磁盘?HD0和HD1其中卸载一个

原帖由 xqrp 于 2008-12-17 03:09 发表
u盘usb-hdd 启动,使用dm,终于OK啦,大家参考下,在网上学习的

title  1: 运行 DM9.57万用版 (usb-hdd)
find --set-root /boot/dm.img
map --mem /boot/dm.img (fd0)
map (hd0) (fd1)
map (hd1) (hd0)
map --floppies=2
map --hook
chainloader (fd0)+1
rootnoverify (fd0)


title  2: 运行 PartitionMagic 8.05c (usb-hdd)
find --set-root /boot/pm805.img
map --mem /boot/pm805.img (fd0)
map (hd0) (fd1)
map (hd1) (hd0)
map --floppies=2
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

[ 本帖最后由 zch11230 于 2009-2-5 16:31 编辑 ]
2#
 楼主| 发表于 2009-2-5 16:32:08 | 只看该作者
已经算是解决了吧
XQRP给出的map (hd0) (fd1)我给看成了map (hd0) (hd1),走了弯路,
开始我认为hd0需要卸载掉,又不懂这些命令的用法,网上找了很久,找到map (hd0) (hd0)是取消仿真的意思,试了后发现还是不行,联想到干脆把hd0 映射为 fd, 这样分区软件就不会识别优盘了,也就没有那些个卡死、磁盘2的问题了,测试map (fd1) (hd1)后发现可行,再回头来看的时候才发现XQRP也应该是这个思路,只是可能一时大意给写反了。
所以最终改为这样,DM能够运行且不会出现两个相同的硬盘
  1. title  1: 运行 DM9.57万用版 (usb-hdd)
  2. find --set-root /boot/dm.img
  3. map --mem /boot/dm.img (fd0)
  4. map (fd1) (hd1)
  5. map (hd1) (hd0)
  6. map --floppies=2
  7. map --hook
  8. chainloader (fd0)+1
  9. rootnoverify (fd0)
复制代码
回复

使用道具 举报

3#
发表于 2009-2-6 23:32:46 | 只看该作者
也遇到同樣的問題,學習了。

以後分區的時候就方便了
回复

使用道具 举报

4#
发表于 2009-2-7 17:01:35 | 只看该作者
学习下,谢谢分享!以后再遇到就不怕了
回复

使用道具 举报

5#
发表于 2009-2-7 19:17:36 | 只看该作者
不行不行

按楼主的方法试了试也是发现了两个硬盘,都是硬盘,两个一模一样。

然后又安装三楼的方法试试,可是选择后按下回车电脑屏幕上只有一个点在闪,一直的闪,就是不会动。纳闷。

请高手指教
回复

使用道具 举报

6#
 楼主| 发表于 2009-2-9 19:03:16 | 只看该作者

回复 #5 szl1990 的帖子

1楼就是有问题的代码,下面2楼才是更改后的,你再检查一下是不是什么地方弄错了,我试了好几个优盘都是可以的,但是在虚拟机上会有点问题,下面是我整个优盘的MENU.LST
  1. timeout 5
  2. default 9
  3. fontfile /minipe/boot/fonts.gz
  4. splashimage /minipe/boot/back.xpm
  5. title .......................☆Mr.Zhang☆.........................
  6. configfile /menu.lst
  7. title <01>  运行 Windows  PE
  8. chainloader /minipe/ldrxpe
  9. title <02>  运行 PM8.05分区大师
  10. map --mem /minipe/boot/pm805.img (fd0)
  11. map (fd1) (hd1)
  12. map (hd1) (hd0)
  13. map --floppies=2
  14. map --hook
  15. chainloader (fd0)+1
  16. rootnoverify (fd0)
  17. title  <03>  运行 DM9.57万用版
  18. map --mem /minipe/boot/dm.img (fd0)
  19. map (fd1) (hd1)
  20. map (hd1) (hd0)
  21. map --floppies=2
  22. map --hook
  23. chainloader (fd0)+1
  24. rootnoverify (fd0)
  25. title <04>  运行 深山红叶DOS工具箱
  26. map --mem /minipe/boot/hongye.img (fd0) 
  27. map --hook
  28. chainloader (fd0)+1
  29. rootnoverify (fd0)
  30. title <05>  运行 矮人DOS工具箱 v5.3
  31. kernel /minipe/boot/memdisk.gz c=80 h=4 s=36 floppy
  32. initrd /minipe/boot/ardos53.img
  33. title <06>  运行 GHOST 11.0.1 in DOS
  34. map --mem /minipe/boot/ghost.img (fd0)
  35. map --hook
  36. chainloader (fd0)+1
  37. rootnoverify (fd0)
  38. title <07>  运行 Memtest86 内存检测
  39. kernel /minipe/boot/memdisk.gz floppy
  40. initrd /minipe/boot/mem.IMG
  41. title <08>  运行 微软内存检测工具
  42. kernel /minipe/boot/memdisk.gz floppy
  43. initrd /minipe/boot/WINDIAG.IMG
  44. title <09>  从硬盘启动 Windows 2000/XP/2003
  45. map (hd0) (hd1)
  46. map (hd1) (hd0)
  47. rootnoverify (hd1,0)
  48. makeactive
  49. chainloader +1
  50. title <10>  重启计算机
  51. reboot
  52. title <11>  关闭计算机
  53. halt
  54. title <12>  进入不常用工具箱
  55. configfile /minipe/boot/1.lst
复制代码

[ 本帖最后由 zch11230 于 2009-2-9 19:04 编辑 ]
回复

使用道具 举报

7#
发表于 2009-2-11 00:03:34 | 只看该作者
还是不行

修改成下面的内容后再进入会卡那,屏幕上会一直有个点在闪就是进不去
map (fd1) (hd1)
map (hd1) (hd0)
map --floppies=2
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

[ 本帖最后由 szl1990 于 2009-2-11 00:06 编辑 ]
回复

使用道具 举报

8#
发表于 2009-2-11 08:51:07 | 只看该作者
嘿嘿,楼上的这位不用试了,看来在某些主板上的确不行。在我这里的一台戴尔optiplex320上也不行,在其他电脑上没有问题滴。
回复

使用道具 举报

9#
发表于 2009-2-12 00:55:35 | 只看该作者
原帖由 不才 于 2009-2-11 08:51 发表
嘿嘿,楼上的这位不用试了,看来在某些主板上的确不行。在我这里的一台戴尔optiplex320上也不行,在其他电脑上没有问题滴。




明白了
回复

使用道具 举报

10#
发表于 2009-2-13 10:27:41 | 只看该作者
看明白了很多了
回复

使用道具 举报

11#
发表于 2009-2-14 11:05:32 | 只看该作者
学习了...看了很多..还是存在兼容问题.
回复

使用道具 举报

12#
发表于 2009-5-10 14:06:35 | 只看该作者
刚才测试成功!感谢楼主分享!感谢!
回复

使用道具 举报

13#
发表于 2009-5-11 00:54:05 | 只看该作者
我怎么感觉2楼的代码还是有问题。那个(fd1)代表什么?

按道理,你从USB-HDD启动时,默认情况下U盘应该是(hd0),你的硬盘是(hd1),而象DM或者效率源这些软件,只会对(hd0)上的真正硬盘起作用,这时候对U盘显然是有问题的,所以,我们要想办法把U盘仿真走,一个是仿真成软盘,也可以仿真成非(hd0)的硬盘。例如你可以这样:
  1. title DM
  2. ls (hd0,0)/usbdisk.flg && map (hd0) (hd1)
  3. ls (hd0,0)/usbdisk.flg && map (hd1) (hd0)
  4. map --mem /dm.img  (fd0)
  5. map --hook
  6. chainloader (fd0)+1
  7. rootnoverify (fd0)
复制代码


其中,(hd0,0)/usbdisk.flg表示U盘根目录(你也可以放到子目录中)下的一个唯一标志文件,代表这个U盘。

ls (hd0,0)/usbdisk.flg && map (hd0) (hd1)
这条命令表示,如果在(hd0,0)上找到了U盘上的标志文件,就意味着U盘被当作(hd0)了,这时候,就需要进行后面的仿真操作。

我觉得这种方式可能比较科学一些。

[ 本帖最后由 Climbing 于 2009-5-11 00:56 编辑 ]
回复

使用道具 举报

14#
发表于 2009-5-11 11:23:56 | 只看该作者
嘿嘿,dm可不是仅对(hd0)感兴趣,它对(hd1)也挺感兴趣的哦。
回复

使用道具 举报

15#
发表于 2009-5-12 09:55:39 | 只看该作者
dm以前就试过,他可以你在bios禁止所有ide接口。
然后dos进入dm也可以正常识别出来。也就他的访问不同于其他简单的分区工具基于bios吧。
回复

使用道具 举报

16#
发表于 2009-5-12 13:12:45 | 只看该作者
原帖由 Climbing 于 2009-5-11 00:54 发表
我怎么感觉2楼的代码还是有问题。那个(fd1)代表什么?

按道理,你从USB-HDD启动时,默认情况下U盘应该是(hd0),你的硬盘是(hd1),而象DM或者效率源这些软件,只会对(hd0)上的真正硬盘起作用,这时候对U盘显然 ...


大家都知道从U盘启动后,U盘总是被认为(hd0)的,所以不用判断也行。
回复

使用道具 举报

17#
发表于 2009-5-12 14:50:27 | 只看该作者
嘿嘿,楼上的,Climbing 老大的判断是必要的!
因为从U盘启动后,U盘并非总是被认为(hd0)的,也有被认为是(fd0)的时候。
回复

使用道具 举报

18#
发表于 2009-9-18 17:50:53 | 只看该作者
我用楼主修改后的代码进不去呀,是兼容性问题么?现在有解决方法么?谢谢啦!
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-23 20:07

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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