系统安装完后,如果不能成功的引导Linux和Win系统,必须要改一下/boot/grub/grub.conf才能让三系统正常运行,用
root用户进入系统,先用fdisk -ld
终端中查看你的分区情况,知道分区情况就好办了,用任何文件编辑器来打开/boot/grub/grub.conf,一般来说,Win系统会
自动加载
到grub里面的,下面是笔者的grub.conf文件,我们来分析一下
default=0
timeout=10
splashimage=(hd1,2)/boot/grub/splash.xpm.gz
title Windows2K
rootnoverify (hd0,0)
chainloader +1
title RedHat9
root (hd1,2)
kernel /boot/vmlinuz-2.4.20-8 ro root=LABEL=/
initrd /boot/initrd-2.4.20-8.img
title Mandrake9.1
kernel (hd1,4)/boot/vmlinuz root=/dev/hdb5 quiet devfs=mount acpi=off vga=788
initrd (hd1,4)/boot/initrd.img
default=X为默认启动的系统,0为排在第一个的系统,以此类推。
timeout=X为Grub菜单停留的时间,单位为秒
title XXX,XXX为标题,也就是你要引导的操作系统的名字,可以自己修改
root
(hdX,Y)X和Y都代表一个数值,X是linux的根分区在哪个硬盘上。如你只有一个硬盘。那就是hd0。如果你的linux的一个发行版是安装在第
二个硬盘,这个X,就是1。Y是代表您所安装的linux是在哪个区。这个数值有点不同,不太好说清楚。举个例子来说。比如我把Mandrake安装到第
二块硬盘的第二个分区,也就是hdb5了。那他的root (hdX,Y),就应该写为root
(hd1,4),也就是说Y=hdaZ或hdbZ中的Z减去1。
kernel (hdX,Y)/boot/vmlinuz root=/dev/hdaZ和initrd (hdX,Y)/boot/initrd.img就是要引导哪个硬盘分区的映像和initrd文件,一定要写正确XY的数值,不然
无法引导系统
。
quiet devfs=mount acpi=off vga=788为启动的参数。
rootnoverify (hdX,Y)如果不能启动Win的话,可以改为root (hdX,Y)来试试
chainloader +1意思是指定此分区上的第一个磁道来启动
想加入别的操作系统到Redhat的GRUB中,方法也是如此,用其它发行版中的GRUB来引导别的发行版,原理也是一样的。这和Win2K和XP中的BOOT.
INI
差不多,grub很简单吧,多试几次就会了。
最后存盘重启电脑,就能享让多系统和平相处了
本文转自 烂泥行天下 51CTO博客,原文链接:http://blog.51cto.com/ilanni/696637