grub.conf是grub的主配置文件,通过这个配置文件,grub才能找到kernel,系统才能正常启动.

[root@hxy ~]# cat /boot/grub/grub.conf |grep -v ^#
default=0
timeout=5
splashp_w_picpath=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
password --md5 $1$NXGPQ/$pie0SRolNlsqbRbqzyw3p.
title CentOS 6 (2.6.32-504.el6.x86_64)
	root (hd0,0)
	kernel /vmlinuz-2.6.32-504.el6.x86_64 ro root=UUID=1a5e86ca-456a-4bf6-a6e4-53253deb6bf6 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=128M  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM quiet
	initrd /initramfs-2.6.32-504.el6.x86_64.img

default:定义默认启动的kernel或是操作系统

timeout:定义等待进入选择kernel或操作系统菜单的时间(这里等于5,就是等待5秒)

splashp_w_picpath:指定我们选择kernel或操作系统菜单后面那张图片

hiddenmenu:表示隐藏选择kernel或操作系统菜单,只有出现等待界面后按下enter键才会出现.如果没有这个字段,则每次系统启动都会出现这个选择菜单.

password:设定密码.放在title外表示进入kernel或操作系统的编辑模式需要密码,而放在title内表示启动对应的kernel或操作系统需要密码,密码可以是明文或是用MD5进行加密过的.可以防止其他人进入编辑(可不用)

[root@hxy ~]# /sbin/grub-md5-crypt
Password:
Retype password:
$1$NXGPQ/$pie0SRolNlsqbRbqzyw3p.

kernel菜单进入单用户模式启动我们的系统

title identify:指定一个kernel或是一个操作系统,linux中可以有多个title;identify是这个kernel或操作系统的识别符,可以随意写.

root:用于指定grub所能识别的根,而不是根文件系统.

kernel:用于指定系统的内核文件的位置

initrd:帮助kernel完成系统的启动,例如加载根文件系统所在分区的驱动等.如果kernel本身有相应强大的功能,则不需要initrd

title CentOS 6 (2.6.32-504.el6.x86_64)
	root (hd0,0)
	kernel /vmlinuz-2.6.32-504.el6.x86_64 ro root=UUID=1a5e86ca-456a-4bf6-a6e4-53253deb6bf6 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=128M  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM quiet
	initrd /initramfs-2.6.32-504.el6.x86_64.img

root (hd0,0) 

    定义grub的根是第一硬盘的第一个分区


    kernel /vmlinuz-2.6.32-504.el6.x86_64 ro root=UUID=1a5e86ca-456a-4bf6-a6e4-53253deb6bf6 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=128M  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM quiet

    内核在grub的根的根目录下,ro表示只读加载kernel,root=....定义根文件系统,即我们操作系统启动之后我们所见到的/,我系统上的/是挂载在这个逻辑卷上的;rhgb是redhat的一个程序,显示一个红色的边框。quiet表示以静默模式启动kernel,如果定义,kernel启动的时候会输出很多信息。

系统的主要字体在/usr/share/font里面,你可以用chkfontpath查看,也可以用它来添加看它的发行注记.

rd_no_lvm:禁用LVM(可不用)

rd_no_dm:禁用RAID(可不用)

rhgb:redhat graphics boot,用图片来代替启动过程中显示的文本信息(可不用,不用了centos就不会出现白天了,就直接全是文本信息了)

LANG=en_US.UTF-8 使用语言格式(可不用)

KEYBOARDTYPE=pc KEYTABLE=us键盘类型和键盘格式(可不用)

crashkernel参数格式是:

crashkernel=nn[KMG]@ss[KMG]

nn表示要为crashkernel预留多少内存

ss表示为crashkernel预留内存的起始位置


一些更详细的可以参照

http://www.361way.com/centos-kdump/3751.html