为了彻底解决问题,我们需要来了解一些概念。
什么是grub? grub是系统启动装载程序。当我们开机,BIOS开始检测系统参数,如
内存的大小,CPU型号,硬盘类型等。BIOS自检过后,就会把控制权交给硬盘上0柱面
1磁道(MBR)上的程序来引导系统(如果设置成硬盘引导优先)。而这个程序,对
windows NT内核的系统来说,就是ntloader,对linux来说,一般是grub或lilo。如果
这些程序损坏,或找不到配置文件,就会无法引导系统。比如windows 2000的用户有
时会发现开机出现这样的字样:NTLDR is missing…… 这就表示windows的引导程序
被破坏或找不到了,解决方法就是用一张2000的安装盘修复系统。如果linux的引导程
序grub被破坏或找不到配置文件了呢??那就重装grub好咯。事实上出现grub>这样
的情况还算是好事,这只是表明grub找不到配置文件指定的图形文件splash.tar.gz
,所以不出现图形界面的引导方式而已。要想出现图形界面的引导模式,需要进入到
linux系统中修改grub的配置文件,这个文件是/boot/grub/menu.lst。如下:
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,7)
# kernel /vmlinuz-version ro root=/dev/hda10
# initrd /initrd-version.img
#boot=/dev/hda
default=0
timeout=10
splashimage=(hd0,7)/grub/splash.xpm.gz
title Red Hat Linux (2.4.20-8)
root (hd0,7)
kernel /vmlinuz-2.4.20-8 ro root=/dev/hda8 vga=791
initrd /initrd-2.4.20-8.img
title Windows 2000
rootnoverify (hd0,0)
chainloader +1
title Mandrake 9.2
rootnoverify (hd0,12)
chainloader +1
title Slackware 9.1
rootnoverify (hd0,13)
chainloader +1
title FreeBSD 5.1
rootnoverify (hd1,0)
chainloader +1