linux引导加载程序--GRUB

飞鸿先森 2017-04-04

linux世界里有两种流行的引导加载程序:LILO和GRUB。LILO是传统的的Linux引导加载程序,非常稳定而且有很好的文档,但却迅速被GRUB的锋芒盖过。

GRUB作为一个全面统一的引导加载程序,对于频繁改变系统配置的用户来说也很有帮助。每次改变LILO的配置之后,必须重新把它安装到引导记录(即MBR,MasterBootRecord,主引导记录)里,而GRUB会在启动时自动读入自己的配置文件,省却了上述容易忘记的管理步骤。

用户可通过运行grub-install把GRUB安装到引导驱动器上。该命令的参数是要引导的设备名。GRUB给物理磁盘命名的方式和Linux的习惯标准不一样,GRUB设备名看上去类似于:

(hd0,0)

其中第一个数值表示物理驱动器号(从0开始),第二个数值表示分区号(也从0开始)。此处的(hd0,0)等同于Linux设备/dev/hda1。因此,如果用户想要在主设备上安装GRUB,那么应该使用命令:

#grub-install'(hd0,0)'

注意此处必须用引号来避免shell用它自己的方式来解释括号。

默认情况下,GRUB从/boot/grub/grub.conf读取它的默认引导配置。下面是一个grub.conf文件的例子:

default=0

timeout=10

splashimage=(hd0,0)/boot/grub/splash.xpm.gz

titleRedHatLinux(2.6.9-5)

root(hd0,0)

kernel/boot/vmlinuz-2.6.9-5roroot=/dev/hda1

这个例子只配置了一个操作系统,如果GRUB在10秒内(timeout=10)没有接收到任何来自键盘的输入,那么就自动引导(default=0)。“RedHatLinux”配置的根文件系统是GRUB设备(hd0,0)。GRUB从/boot/vmliauz-2.6.9-5加载内核,而且在加载时显示文件/boot/grub/splash.xpm.gz作为“闪屏”(即通常所说的启动画面)。

GRUB支持一种功能强大的命令界面,而且能随时编辑配置文件中的配置项。在GRUB的启动画面键入c就可以进入命令行模式。从命令行可以启动grub.conf文件里没有列出的操作系统,可以显示系统信息,还可以执行对文件系统的基础测试。通过grub.conf文件能做到的事情,也能通过GRUB命令行实现。

注:

1、GRUB官方手册:www.gnu.org/software/grub/manual/。

2、参考书籍:《linux系统管理技术手册》第二章:引导和关机。

相关推荐