无忧启动论坛

标题: 请教:如何在移动硬盘上的GRUB环境中引导本地电脑中的系统? [打印本页]

作者: yaoaijia    时间: 2006-12-18 08:36
标题: 请教:如何在移动硬盘上的GRUB环境中引导本地电脑中的系统?
小弟是菜鸟,有个疑问,如何在移动硬盘上的GRUB环境中跳转到本地电脑中的NT Loader环境或者是直接引导本地硬盘的系统?

我的移动硬盘上有GRUB+PE,引导PE一切正常,但是用来引导本地硬盘上的XP,却失败了。

本地硬盘具体情况:希捷120G—SATA硬盘,主分区一个(600MB,FAT32),其余都是(扩展)逻辑分区。
                                    主分区是用NTLDR的,boot.ini内容为
                                                                          [boot loader]
                                                                          timeout=15
                                                                          default=multi(0)disk(0)rdisk(0)partition(4)\WINDOWS
                                                                          [operating systems]
                                                                          multi(0)disk(0)rdisk(0)partition(4)\WINDOWS="Microsoft Windows XP
                                                                          Professional" /noexecute=optin /fastdetect
                                                                          c:\fedora.sec=Red Hat Fedora Core
                                                                          C:\grldr=MaxDOS 5.5
                                                                          C:\=MSDOS
                                    
                                    第二分区为FAT32、100MB,空白;
                                    第三分区为LINUX EXT3、4GB;
                                    第四分区为NTFS、XP操作系统、5GB。。。。

我在GRUB中用如下命令:
root (hd1,0)       //or rootnoverify (hd1,0)
chainloader +1  //or chainloader (hd1,0)+1
boot

提示 Missing NTLDR,启动失败,拔掉移动硬盘是正常的,明显NTLDR是有的。怎么回事?请各位大侠帮忙分析一下。

[ 本帖最后由 yaoaijia 于 2006-12-18 08:48 AM 编辑 ]
作者: xieliuyun    时间: 2006-12-18 09:14
因为移动硬盘引导变C:了!所以原有硬盘盘符变化,是无法引导到winxp桌面的,一般到半途就出错!
作者: yaoaijia    时间: 2006-12-18 09:58
恍然大悟啊,谢谢xieliuyun大侠的帮助!谢谢。
我再仔细看看。
作者: Climbing    时间: 2006-12-18 09:58
先做类似这样的操作:
map (hd0) (hd1)
map --hook

grub可不认什么C盘不C盘的,建议仔细学习一下grub4dos的说明文档。
作者: yaoaijia    时间: 2006-12-18 10:03
有什么办法能够使移动硬盘的盘符变成非C:的呢?
作者: yaoaijia    时间: 2006-12-18 10:08
原帖由 Climbing 于 2006-12-18 09:58 AM 发表
先做类似这样的操作:
map (hd0) (hd1)
map --hook

grub可不认什么C盘不C盘的,建议仔细学习一下grub4dos的说明文档。


谢谢老大!
Grub4Dos有类似说明map (A) (B)   //把A仿真成B
我试了下
map(hd1)(hd0)
map --hook
提示:ERROR!The int13 handler alreay on hook!

改用map (hd0) (hd1) 也一样出错。

[ 本帖最后由 yaoaijia 于 2006-12-18 11:22 AM 编辑 ]
作者: xieliuyun    时间: 2006-12-18 10:54
原帖由 Climbing 于 2006-12-18 09:58 AM 发表
先做类似这样的操作:
map (hd0) (hd1)
map --hook

grub可不认什么C盘不C盘的,建议仔细学习一下grub4dos的说明文档。

grub不认,但xp认!
作者: lxl1638    时间: 2006-12-18 10:57
Grub认的是设备号,但它很不好用。
作者: yaoaijia    时间: 2006-12-18 11:19
Grub4Dos有类似说明map (A) (B)   //把A仿真成B
我试了下
map(hd1)(hd0)
map --hook
提示:ERROR!The int13 handler alreay on hook!

改用map (hd0) (hd1) 也一样出错。

我开始是这样想的:
在本地硬盘文件boot.ini的眼中,本地硬盘是作为第一硬盘的,当GRUB把控制权交给NTLDR的时候,本地硬盘是第二硬盘hd1),因此会出错。

但是当我把boot.ini文件删除后,用移动盘grub引导照样还是NTLDR丢失错误。这是不解!
注:boot.ini文件可以缺失,系统会自动搜索整个硬盘来尝试启动。

[ 本帖最后由 yaoaijia 于 2006-12-18 11:25 AM 编辑 ]
作者: zero99    时间: 2006-12-18 14:13
要从移动硬盘上的GRUB环境中引导本地电脑中的系统,
已经验证过,MENU.LST里面的正确写法是:

title Boot from HardDisk
map (hd0) (hd1)
map (hd1) (hd0)
root (hd1,0)
chainloader (hd1,0)+1
boot

这样能正确启动原有硬盘上的系统,并且盘符不会混乱。

[ 本帖最后由 zero99 于 2006-12-18 05:27 PM 编辑 ]
作者: zhaohj    时间: 2006-12-18 16:58
上面的正解,U盘是C 盘也一样。
作者: wanghh    时间: 2006-12-18 17:08
title Boot from HardDisk
map (hd0) (hd1)
map (hd1) (hd0)
root (hd1,0)
chainloader (hd1,0)+1
boot

作者: chenall    时间: 2006-12-18 17:35
不映射直接使用
chainloader (hd1,0)/ntldr
试试
作者: xieliuyun    时间: 2006-12-18 19:59
学习了!谢谢!
作者: yaoaijia    时间: 2006-12-18 20:03
谢谢各位了,我 试试。
作者: 和平饭店    时间: 2007-3-8 21:52
好,我也尝试一下下,谢谢




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3