GRUB的英文全称是Grand Unified Bootloader,是一个写入到主引导记录和硬盘上的启动分区(/boot)中,并且用于加载操作系统的程序。GRUB引导后会给用户显示出一个图形启动菜单。
Linux的启动过程如下
在BIOS自检完成之后,就会读取启动设备(一般是硬盘)上的主引导记录,这时GRUB/LILO就会接管计算机。
GRUB的引导阶段分为stage_1 stage_1.5 stage_2 三个步骤。Stage_1阶段是读取MBR的前446个字节,stage_2 阶段提供了GRUB的启动菜单,在启动时通过/boot/grub/grub.conf文件所定义的内容生成。启动菜单如图1所示:
图1
可以通过上、下箭头来选择要引导的操作系统,也可以“E”键进入菜单编辑界面。如图2所示
图2
界面中包含了3行语句:root行指出引导的位置;kernel行指出操作系统内核的位置,initrd行指出映像文件的位置。这些语句存在/boot/grub/grub.conf文件中。
在Red Hat enterprise linux5中典型的/boot/grub/grub.conf文件内容如下:
1.default选项用于指定GRUB启动菜单中默认的启动操作系统,defatult=0说明第1个菜单项是默认的操作系统
2. timeout 选项用于指定用户等待的时间,这里设为5s,如果超过5s没有选择就会启动默认的操作系统。
3.spalashimage用户指定开机画面的位置
4.hiddenmenu 代表下面的菜单在开机时是隐藏的
5.title 该行是菜单项,在GRUB启动菜单时会显示
接下来的3行是图2中的内容
grub的安装有两种方式
grub-install
grub>setup
下面来看一下安装步骤:
1 给虚拟机添加一块硬盘,大小2G ,保存在桌面
2 对新盘分区 sdb1 100M sdb2 512M
3 格式化两个分区 ,把sdb1 挂载到/mnt/boot目录下sdb2挂载到/mnt/sysroot目录下
[root@station11 ~]# partprobe /dev/sdb
[root@station11 ~]# mkdir /mnt/boot
[root@station11 ~]# mkdir /mnt/sysroot
[root@station11 ~]# mke2fs -j /dev/sdb1
[root@station11 ~]# mke2fs -j /dev/sdb2
[root@station11 ~]# mount /dev/sdb1 /mnt/boot
[root@station11 ~]# mount /dev/sdb2 /mnt/sysroot
4 安装grub
[root@station11 ~]# grub-install –root-directory=/mnt /dev/sdb
5 提供grub的配置文件grub.conf
[root@station11 ~]# vim /mnt/boot/grub/grub.conf
OK 新建一台虚拟机,添加刚制作的这个小硬盘,启动后如下:
grub的安装成功了,显示了grub的引导界面 。花费了心思写的,里面存在很多不足之处,路过的点评 ^^