系统引导器GRUB

系统引导器GRUB

理解/boot/grub/grub.conf

     1	# grub.conf generated by anaconda
     2	#
     3	# Note that you do not have to rerun grub after making changes to this file
     4	# NOTICE:  You have a /boot partition.  This means that
     5	#          all kernel and initrd paths are relative to /boot/, eg.
     6	#          root (hd0,0)
     7	#          kernel /vmlinuz-version ro root=/dev/mapper/VolGroup-lv_root
     8	#          initrd /initrd-[generic-]version.img
     9	#boot=/dev/vda
    10	default=0	#设置默认启动大一个启动项
    11	timeout=5	#设置GRUB菜单的启动延时为5秒
    12	splashimage=(hd0,0)/grub/splash.xpm.gz		#指定启动菜单的背景图像位于/boot/grub/splash.xpm.gz
    13	hiddenmenu		#设置GRUB菜单为隐藏
    14	title Red Hat Enterprise Linux (2.6.32-431.el6.x86_64)		#title命令开始一个菜单项的配置
    15		root (hd0,0)	#设置GRUB的根分区(即/boot分区)
    16		kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGroup/lv_root  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet		#设置Linux的内核及参数
    17		initrd /initramfs-2.6.32-431.el6.x86_64.img		#设置初始RAM磁盘镜像文件
文中的内容大概可以分为三个部分:
  • 注释行:以#开头,起说明作用,放在文件首部
  • 全局配置行:作用于整个GRUB运行环境(包括所有菜单项),为于文件注释行之后title命令区域前
  • 菜单项配置行:配置文件中可以有多个菜单项目配置,用于多系统启动的配置

grub.conf的选项如下所示:


default= : 告诉GRUB在超时后默认使用那个映像进行引导。这个选项和给文件中的某个映像关联。0表示第一个,1就表示第二个,以此类推。如果没有指定该选项,那GRUB将引导文件中指定的第一个title。
timeout= : 在自动引导os之前引导提示会等待多少秒。
splashimage= : 指定GRUB GUI背景图的图片所在位置。
password : 指定了使用MD5加密的密码,用于访问GRUB的交互式引导选项。但是要注意的时是,该密码不会阻止用户选择已经定义了的OS,如果想要提高安全性,还是要为每个title去设置它。

password的设置方法 : 运行GRUB附带的grub-md5-crypt工具(root身份)。根据提示输入一个希望加密的密码,然后会输出一个使用MD5加密的密码。将密码复制到grub.conf文件中的password-md5之后,一定要在同一行上。通常这个密码可以设置为root密码,毕竟此文件无论如何也是只有root才能读取。

title : 定义系统引导项,同时title后面的名称即为GRUB菜单项的名称。

password : 同上个password,只是此密码是用于该OS引导的。如果计划与其他用户共享此机器,那么不要在此使用root密码。
root : 告诉GRUB OS文件系统的实际位置。
kernel : root目录中默认引导映像的名称。
initrd : root目录中默认initrd映像的名称。
rootnoverify : 告诉GRUB不要尝试去改变OS的root。这样即使文件系统不被GRUB所支持,也不会出现引导错误。
chainloader +1 : 告诉GRUB使用一个链式加载程序来加载这个OS,加载Windows时需要这个选项。


GRUB初始引导过程

  GRUB在初始加载的时候,从MBR加载第一阶段程序。加载后,进入第一阶段和第二阶段的中间阶段,这个中间阶段时为了能够对/boot/grup中的GRUB配置文件进行常规的文件系统访问,而不是去访问磁盘块(如果直接访问磁盘的话,就读不到配置文件)。然后进入引导加载程序的第二阶段,GRUB加载grub.conf文件。此时应该就能看到GRUB图形界面了。
  GRUB的图形界面停止超时的计时后,按下 P 键,输入GRUB密码,并获得对GRUB交互式引导选项的完全访问权限。

  • 按下 E 键,在引导之前编辑命令
  使用户为当前选中的OS编辑具体的选项。(在编辑模式下所做的任何修改都不会保存到grub.conf文件中)
  • 按下 A 键,修改内核参数
  • 按下 C 键,获得类似于BASH的命令行界面
posted @ 2017-06-15 13:09  季凉末一  阅读(448)  评论(0编辑  收藏  举报