红联Linux门户
Linux帮助

修改Grub让多系统和平共处!

发布时间:2006-08-07 12:57:49来源:红联作者:jpl2000
  装完红旗Linux 后,我只能进入Linux,经过近半个小时的奋斗,我终于把它给整好了,方法如下:

修改grub.conf

  系统安装完后,如果不能成功的引导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很简单吧,多试几次就会了。

  最后存盘重启电脑,就能享让多系统和平相处了
文章评论

共有 1 条评论

  1. pickpocket 于 2006-11-01 09:53:23发表:

    谢谢指点