GRUB应用
GRUB是Grand Unified Bootloader的简写,,它是一个多重操作系统启动管理器,用来引导不同系统。本文以Centos为例来介绍GRUB相关知识。
GRUB是一个系统引导程序,它分为两个阶段stage1和stage2。Stage1是MBR中的引导程序部分,主要完成基本的硬件设备初始化,为加载stage2做准备。接着进入stage2,此阶段需要到/BOOT分区读内核和配置文件。Grub的配置文件为/boot/grub/grub.conf,此文件内容如下图红色框框所示:

图片中配置文件的意义:
default=0 代表使用哪个title选项来启动,0代表是第一个
time=5 代表5秒内没有按下任何按键,则默认使用default指定的启动项来启动
splashp_w_picpath= 指定启动时显示的图片名及路径
hiddenmenu 启动时不显示菜单,去掉此行则显示菜单
title 第一个菜单的内容,启动菜单会显示此行所指定的内容
root (hd0,0) 指明启动时的根在哪个分区
kernel /vmlinuz-2.6.32-504.el6.x86_64 ro root 设定启动时内核文件及路径,以及相关参数
initrd /initramfs-2.6.32-504.el6.x86_64.img 指定为选定的内核提供额外文件的ramdisk文件名
grub.conf文件丢失,造成开机无法启动,开机会出现grub提示符,如下图所示:
此时应该自己手动指定根文件等启动系统所需要的文件,此种情况操作步骤如下:
首先,在grub提示符下指定grub根所在的分区,在grub命令行中,硬盘以hd表示,若不知根所在分区时,可输入hd0,后按tab键,看看哪个分区为root所在分区
指定根所在分区
显示出了所指定分区的文件系统类型
指定kernel压缩文件vmlinuz相关参数及grub根所在分区路径:
指定启动系统所需要的ramdisk文件,即initrd文件
输入boot命令启动系统:
输入boot命令按回车键后,如指定的参数正确,则系统会正常启动:如下
系统成功启动后,手动配置grub.conf ,配置参数如下:
在grub的配置文件中,可以为其创建启动密码:
首先创建加密的md5密码,使用grub-md5-crypt命令:
其次,将生成的密码串加至grub配置文件中,如下图所示
启动菜单已经加好密码,无密码将无法进入启动菜单
下面说一下grub损坏后如何修复,开机出现如下提示,此时要使用安装光盘进入紧急救援模式,重新安装grub
下面使用安装光盘
进入救援模式的bash环境
光盘程序将根文件系统已挂载至/mnt/sysp_w_picpath,下面使用chroot命令切换根至此目录
Grub的安装有如下两种方法
(1)grub提示符下:
grub> root (hd#1,#2) 在grub提示符下,指定根所在分区,#1代表第几个磁盘,#2代表#1指定磁盘的第几个分区
grub> setup (hd#) 将grub安装至指定的磁盘 ,
如下图:
退出此界面,重启系统即可
(2) grub-install --root-directory=ROOT /dev/DISK ROOT指boot的根所在分区,DISK指安装到哪个磁盘