LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: 北南南北

双硬盘操作WindowsXP和Redhat7.2实例[原创]

[复制链接]
 楼主| 发表于 2002-4-27 08:13:46 | 显示全部楼层

*#!&*双硬盘操作WindowsXP和Redhat7.2实例[原创]

有什么问题弟兄们就发帖,我尽所能为弟兄们解决。另我在研究关于LILO的启动问题。我也会听取allen的意见,写一篇关天系统启动的专门性的帖子。主要谈一谈LILO和GRUB的问题。弟兄们先不要急,因为咱们网站现在做数据转换,如果成功,我们就有一个新的家[企鹅+MYSQL+PHP]。这样我们就能容纳更多的回来的弟兄。光大企鹅精神从我们开始!
发表于 2002-5-8 21:32:05 | 显示全部楼层

介绍一下我使用grub的情况

仔细介绍一下我的电脑osloader方法:
我的电脑有两个硬盘(30G与40G)。
在一个盘上装了win98与win2000,另下盘上装了winme与winxp及redhat 和mandrake.
引导程序我用grub。在两个硬盘上都装上,这样不管cmos中设定从哪个盘启动,我都可以访问任何一个操作系统。
其中在装win98与win2000的硬盘的C:的/boot/grub 中从linux分区的/usr/lib/grub 拷入stage1,stage2及fat_stage1_5,及设置grub.conf如下:

default=1
timeout=10
splashimage=(hd1,2)/boot/grub/splash.xpm.gz
password --md5 $1$86xrdpPB$.T4NC4YdiIP5xZmd5tn5U.
title Red Hat Linux (2.4.18-0.13)
root (hd1,2)
kernel /boot/vmlinuz-2.4.18-0.13 ro root=/dev/hdc3
initrd /boot/initrd-2.4.18-0.13.img
title Windows Me and Windows Xp
rootnoverify (hd0,0)
chainloader +1
title Windows 98 and Windows 2000
rootnoverify (hd1,0)
map (hd0) (hd1)
map (hd1) (hd0)
chainloader +1
title Mandrake Linux (2.4.18) in home(hdc9)
root (hd1,8)
kernel /boot/vmlinuz ro root=/dev/hdc9
initrd /boot/initrd.img
然后用grub启动软盘启动,进入command状态,输入:
root (hd0,0)
setup (hd0)
就OK了。
另一个盘上,我把/boot/grub建在redhat的根分区,只要stage1,stage2及设置grub.conf。grub.conf与上相近,当然分区号得改。然后,用grub启动软盘启动,进入command状态,输入:
root (hd1,2)
setup (hd1)
就OK了。

这样,不管你从哪块硬盘中启动,你可以自由地选择一个操作系统,感到非常自由。
 楼主| 发表于 2002-5-8 21:57:33 | 显示全部楼层

yjmsir老弟的帖子经典!

yjmsir老弟的大作《多重操作系统的GRUB系统引导》,真是经典啊,这么多的操作系统一下就全都OK了。真是令我佩服。只有来自实践的,发布出来的作品才有份量,yjmsir老弟的大作就是这样的作品。如果总是怕麻烦,那永远学不到真的东西。

多谢yjmsir老弟给弟兄们不仅带来的经典的作品,最重要的是给弟兄们带来了“互助与实践”的精神。

再次感谢!
发表于 2002-5-9 11:18:15 | 显示全部楼层

补充

上文没有给出linux分区下的grub.conf, 现在补上:
default=1
timeout=10
splashimage=(hd0,2)/boot/grub/splash.xpm.gz
password --md5 $1$HR6VnjGM$jKFCMHMLGwGoXUrTr/ql6/
title Red Hat Linux (2.4.18-0.13)
        root (hd0,2)
        kernel /boot/vmlinuz-2.4.18-0.13 ro root=/dev/hda3
        initrd /boot/initrd-2.4.18-0.13.img
title Windows Me & Windows Xp
        root (hd1,0)
        map (hd1) (hd0)
        map (hd0) (hd1)
        chainloader (hd1,0)+1
title Windows 98 & Windows 2000
        rootnoverify (hd0,0)
        chainloader +1

title Mandrake linux
kernel (hd0,8)/boot/vmlinuz root=/dev/hda9 devfs=mount quiet vga=788
initrd (hd0,8)/boot/initrd.img

title Mandrake linux-nonfb
kernel (hd0,8)/boot/vmlinuz root=/dev/hda9 devfs=mount
initrd (hd0,8)/boot/initrd.img

title Mandrake failsafe
kernel (hd0,8)/boot/vmlinuz root=/dev/hda9 devfs=nomount failsafe
initrd (hd0,8)/boot/initrd.img

大家与前文window C:/boot/grub/grub.conf 相比较。会发现,在cmos设定从哪块硬盘启动,该硬盘就成了hda。

之所以配置此引导方法,一是出于兴趣,二也是因为有用。
原先我只把grub安装在40G盘(即同时有linux分区与vfat分区的硬盘),后来发现一个问题:第二块硬盘的winme会多出很多盘符,而winxp没有。本硬盘的win98与win2000没有此问题。估计是winme与grub之间的问题,或者map命令的问题。我一时不知如何解决。
但既然本硬盘的win98没有此问题,我就想把grub安装在 winme所在的硬盘上。
经过试验(不好意思,从无到有),中间也出错,即
在本应使用setup (hd0) 的时候,我试着用setup (hd0,0),结果winme所在的硬盘的C:东西全没了。还好有用数据我都没有放在C:,真吓出一身汗。
但终于可以掌握grub,总觉得没有白忙一场。
发表于 2002-5-9 13:53:55 | 显示全部楼层

一点疑惑

前文提到winme所在硬盘的c:/boot/grub/grub.conf 中的最后一项启动mandrake的配置如下:

title Mandrake Linux (2.4.18) in home(hdc9)
root (hd1,8)
kernel /boot/vmlinuz ro root=/dev/hdc9
initrd /boot/initrd.img

但在实际启动中,发现启动到init后panic,死机
我后来改来改去,改为:
title Mandrake Linux (2.4.18) in home(hdc9)
root (hd1,8)
kernel /boot/vmlinuz ro root=/dev/hda9
initrd /boot/initrd.img
就可以正常启动了。非常不可理喻,请高手指点一下。(是不是mandrake与redhat对grub的理解不同。):confused:
因为redhat7.2.93与mandrake同处于一块硬盘,分别是3分区,9分区
而redhat7.2.93的启动配置如下:
title Red Hat Linux (2.4.18-0.13)
root (hd1,2)
kernel /boot/vmlinuz-2.4.18-0.13 ro root=/dev/hdc3
initrd /boot/initrd-2.4.18-0.13.img
就完全可以。
:confused:

至此我修正前文这个错误,但我还是对这个这个错误想不通。
不管如何,先用再说。希望高手指点迷津。
 楼主| 发表于 2002-5-9 14:10:59 | 显示全部楼层

改了哪个地方呢????

兄弟,你说改了这一处,可是我发现没有改过啊。。。请看你最近发的帖子。。。

title Mandrake Linux (2.4.18) in home(hdc9)
root (hd1,8)
kernel /boot/vmlinuz ro root=/dev/hdc9
initrd /boot/initrd.img

但在实际启动中,发现启动到init后panic,死机
我后来改来改去,改为:
title Mandrake Linux (2.4.18) in home(hdc9)
root (hd1,8)
kernel /boot/vmlinuz ro root=/dev/hda9
initrd /boot/initrd.img
发表于 2002-5-11 23:05:20 | 显示全部楼层
北南南北大哥,
原来是kernel /boot/vmlinuz ro root=/dev/hdc9
后来是kernel /boot/vmlinuz ro root=/dev/hda9
c改为a

这几天,我安装了redhat7.3,发现它的性格与mandrake8.2一样,后来我又把redhat7.2.93也改为hda3(原来为hdc3),发现也可以。即redhat7.2.93用两种方式都可以启动,而redhat7.3与mandrake8.2都只支持一种方式。
不理会redhat7.2.93,既然已经有了redhat7.3。这个问题可以这样总结:
grub受bios中启动盘的设置的影响,而redhat7.3与mandrake8.2则不受bios中启动盘的设置的影响,只与主权ide接口顺序有关。(不知大哥能否肯定我的想法。)

此外我还有个想法,也是由于学习linux不断重装系统总结出来的:
grub软盘,人称万能启动盘,功能强大。用它安装grub,非常方便。但需要/boot/grub及其下几个文件。我想把该目录及文件放在一个合适的地方,不因系统损坏而破坏。这具合适的地方是每块硬盘的第二dos分区(非第一dos分区即可),(单硬盘的D:,双硬盘可能是E:)
原因如下:win一般占据C:,linux则无所谓。如果把/boot/grub及其下几个文件放在C:,可能因误操作随win 而去,(对初学者难免的吧。)
如果/boot/grub及其下几个文件放在linux根目录下,大家知道linux不断更新,而且又得不断试验不同的distribution,所以不方便。
而如果放在每块硬盘的第二dos分区,重装不同的distribution(它们有不同的性格,初学者也许难料),能够以如下不变方式恢复原来的grub:
root(hd0,4)
setup(hd0)

root(hd1,4)
setup(hd1)
然后在window里用notepad或wordpad编辑grub.conf,非常方便。
很好吧。


我再给出我的系统配置,给大家参考:
第二块硬盘:
default=2
timeout=10
splashimage=(hd1,2)/boot/grub/splash.xpm.gz
password --md5 $1$86xrdpPB$.T4NC4YdiIP5xZmd5tn5U.

title Red Hat Linux 7.3 in home(hdc3)
        root (hd1,2)
        kernel /boot/vmlinuz ro root=/dev/hda3
        initrd /boot/initrd-2.4.18-3.img
title Red Hat Linux 7.3 in home(hdc8)
        root (hd1,7)
        kernel /boot/vmlinuz ro root=/dev/hda8
        initrd /boot/initrd-2.4.18-3.img
title Windows Me and Windows Xp in home(hda1)
        rootnoverify (hd0,0)
        chainloader +1
title Windows 98 and Windows 2000 in home (hdc1)
        rootnoverify (hd1,0)
        map (hd0) (hd1)
        map (hd1) (hd0)
        chainloader +1
title Mandrake Linux (2.4.18) in home(hdc9)
        kernel (hd1,8)/boot/vmlinuz root=/dev/hda9 devfs=mount quiet vga=788
        initrd (hd1,8)/boot/initrd.img
title Mandrake linux-nonfb
        kernel (hd1,8)/boot/vmlinuz root=/dev/hda9 devfs=mount
        initrd (hd1,8)/boot/initrd.img

title Mandrake failsafe
        kernel (hd1,8)/boot/vmlinuz root=/dev/hda9 devfs=nomount failsafe
        initrd (hd1,8)/boot/initrd.img



第一块硬盘:
default=1
timeout=10
splashimage=(hd0,2)/boot/grub/splash.xpm.gz
password --md5 $1$HR6VnjGM$jKFCMHMLGwGoXUrTr/ql6/
title Red Hat Linux (2.4.18-0.13)
        root (hd0,2)
        kernel /boot/vmlinuz-2.4.18-0.13 ro root=/dev/hda3
        initrd /boot/initrd-2.4.18-0.13.img

title Red Hat Linux  7.3
        root (hd0,7)
        kernel /boot/vmlinuz ro root=/dev/hda8
        initrd /boot/initrd-2.4.18-3.img

title Windows 98 & Windows 2000
        rootnoverify (hd0,0)
        chainloader +1

title Windows Me & Windows Xp
        root (hd1,0)
        map (hd1) (hd0)
        map (hd0) (hd1)
        chainloader (hd1,0)+1

title Mandrake linux 8.2
kernel (hd0,8)/boot/vmlinuz root=/dev/hda9 devfs=mount quiet vga=788
initrd (hd0,8)/boot/initrd-2.4.18-6mdk.img

title Mandrake linux 8.2 -nonfb
kernel (hd0,8)/boot/vmlinuz root=/dev/hda9 devfs=mount
initrd (hd0,8)/boot/initrd.img

title Mandrake linux 8.2 -failsafe
kernel (hd0,8)/boot/vmlinuz root=/dev/hda9 devfs=nomount failsafe
initrd (hd0,8)/boot/initrd.img

title Windows 98 & Windows 2000(Mandrake)
root (hd0,0)
makeactive
chainloader +1

title Windows Me & Windows Xp(Mandrake)
root (hd1,0)
map (0x81) (0x80)
map (0x80) (0x81)
makeactive
chainloader +1

title floppy
root (fd0)
chainloader +1
发表于 2003-2-22 16:51:42 | 显示全部楼层

问题何在?

我是单硬盘,按http://www.linuxsir.cn/forum.php ... enu.lst中增加了
title Microsoft Windows
root (hd0,0)
chainloader (hd0,0)+1

结果出现了出现了选项菜单,却进不去xp,何故?
请大虾指点.
发表于 2003-2-22 16:53:34 | 显示全部楼层

重发:问题何在?

我是单硬盘,按http://www.linuxsir.cn/forum.php?mod=viewthread&tid=773
在/boot/grub/menu.lst中增加了
title Microsoft Windows
root (hd0,0)
chainloader (hd0,0)+1

结果出现了出现了选项菜单,却进不去xp,何故?
请大虾指点.
发表于 2003-2-22 17:00:29 | 显示全部楼层
在/boot/grub/grub.conf中也添加试试看。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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