本人安装有多个操作系统,有XP,多个版本和核心的LINUX,使用GRUB的过程中有过多种情况发生,下面和大家讨论解决的方法。
在多个操作系统的安装中,有时候会使GRUB 丢失,如我在重装XP的时候,XP 就把GRUB 从MBR 中清除了。
在升级LINUX 的过程中GRUB 安装失败或者进入控制台状态了。
GRUB 的功能很多,对于一般的使用者来说主要要知道ROOT,SETUP,INSTALL,ROOTNOVERIFY,CHAINLOADER,GRUB.CONF,针对不同文件系统的STAGE1,STAGE2文件,就可以了。
GRUB下载什么的就不说了,一般也不需要下载,安装盘都带有。
ROOT的使用格式是:ROOT(HDX,Y)
其中X从0---N,Y也是。第一个硬盘,第一个分区就是(HD0,0),第一个硬盘,第二个分区就是(HD0,1);
第二个硬盘,第一个分区就是(HD1,0),第一个硬盘,第二个分区就是(HD1,1);如此类推,可以知道ROOT的用法了。
ROOT是GRUB识别硬盘和文件格式的命令,告诉GRUB下一步可以到那里找GRUB的配置文件,启动核心,或启动IMG文件等。
SETUP 和 INSTALL 是安装GRUB 到指定位置如:MBR等,具体可以看HELP文件,没有什么特殊之处。
STAGE1,STAGE2针对不同的的文件系统,都可以到GRUB的包里或/USR/SHARE/GRUB目录里找到,拷到GRUB目录下就可以了。
GRUB.CONF的格式如下:
default=0
timeout=10
splashimage=(hd1,2)/boot/grub/splash.xpm.gz
title WindowsXP
rootnoverify (hd0,0)
chainloader +1
title RedHat9
root (hd0,1)
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为标题,也就是你要引导的操作系统的名字,可以自己修改
rootnoverify (hd0,0) 告诉 GNU GRUB 您用的 Widnows C 盘在哪里,但同时不要试图将其挂载(‘noverify’,可选项)。 chainloader +1 告诉 GNU GRUB 不要试着自己载入 Windows (自身无法完成),而应该将启动进程交给 C 盘的首扇区,那里含有原始的 DOS/Windows 启动程序。
好了相信大家都能够基本的玩转GRUB了。