感谢支持
我们一直在努力

Linux基本知识点总结——GRUB

GRUB是linux中最主要的多系统引导程序,如果grub.conf文件丢失或被破坏,但内核文件等没有丢失,在开机时,可以通过grub界面引导启动系统。

以下实验平台为CentOS 6.2。操作步骤如下图所示,

RHCE培训笔记——GRUB

P-01

注:root(hd0,0),表示/boot分区,即操作系统内核和引导文件所在的磁盘分区,grub不区分ide硬盘和scsi硬盘,统一使用hdx,这里(hd0,0)表示第一块硬盘的第一个分区,与系统中的分区表示不一样。

kernel加载内核,/vmlinuz通过tab键会自动补全,由于装系统时,使用了lvm,所以root=/dev/mapper/vg_itpro-lv_root;如果不清楚root所在目录,需通过光盘进入救援模式进行查看。

系统启动成功后,在/boot/grub下创建或修复grub.conf文件,

最简洁的文件内容如下,

[root@itpro ~]# cat /boot/grub/grub.conf

default=0

timeout=5

hiddenmenu

title CentOS6

root (hd0,0)

kernel /vmlinuz-2.6.32-220.el6.i686 ro root=/dev/mapper/vg_itpro-lv_root

initrd /initramfs-2.6.32-220.el6.i686.img

(注:vmlinuz-2.6.32-220.el6.i686和initramfs-2.6.32-220.el6.i686.img在/boot目录下,可通过echo命令将它们的名字追加到grub.conf文件中,再进行编辑。)

编辑完成后,重启,可以正常启动系统。

以上两种方法,在重启系统时,登录界面会出现如图P-02所示的信息,不过不影响系统正常使用,

如果将,

kernel /vmlinuz-2.6.32-220.el6.i686 ro root=/dev/mapper/vg_itpro-lv_root

这一行,加个“quiet”写成

kernel /vmlinuz-2.6.32-220.el6.i686 ro root=/dev/mapper/vg_itpro-lv_root quiet

或者更加完整的(这个肯定记不住,要从别处抄了~)

kernel /vmlinuz-2.6.32-220.el6.i686 ro root=/dev/mapper/vg_itpro-lv_root rd_LVM_LV=vg_itpro/lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD quiet SYSFONT=latarcyrheb-sun16 rhgb crashkernel=auto rd_LVM_LV=vg_itpro/lv_swap  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM

则不会出现图示问题。

RHCE培训笔记——GRUB

P-02

附:grub.conf原文件内容及其注释如下
 
[root@itpro ~]# cat /boot/grub/grub.conf
 
# grub.conf generated by anaconda
 
#
 
# Note that you do not have to rerun grub after making changes to this file
 
# NOTICE:  You have a /boot partition.  This means that
 
#          all kernel and initrd paths are relative to /boot/, eg.
 
#          root (hd0,0)
 
#          kernel /vmlinuz-version ro root=/dev/mapper/vg_itpro-lv_root
 
#          initrd /initrd-[generic-]version.img
 
#boot=/dev/sda
 
default=0  #默认引导的菜单条目,0为排在第一个的系统
 
timeout=5  #Grub菜单停留的时间,单位为秒
 
splashimage=(hd0,0)/grub/splash.xpm.gz  #指定GRUB引导菜单的背景图片
 
hiddenmenu  #隐藏Grub引导菜单,如果不想在启动时隐藏,则删掉此条目
 
title CentOS (2.6.32-220.el6.i686) 
 
#引导条目的名称,通常以操作系统的名称作为标识,可以随意修改
 
        root (hd0,0)
 
#root(hdX,Y),操作系统内核和引导文件所在的磁盘分区,X指linux的根分区在哪个硬盘上,Y指所安装的linux是在哪个区里
 
        kernel /vmlinuz-2.6.32-220.el6.i686 ro root=/dev/mapper/vg_itpro-lv_root rd_LVM_LV=vg_itpro/lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD quiet SYSFONT=latarcyrheb-sun16 rhgb crashkernel=auto rd_LVM_LV=vg_itpro/lv_swap  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM
 
#系统内核及boot命令用到的参数
 
        initrd /initramfs-2.6.32-220.el6.i686.img
 
#系统引导程序,指定要引导哪个硬盘分区的映像
 
 
 
#kernel和initrd 中指定的文件都是相对于root中所设置的硬盘分区,
 
#即“/vmlinuz-2.6.32-220.el6.i686”和“/initramfs-2.6.32-220.el6.i686.img”的“/”不是表示根分区,而表示相对路径/boot,vmlinuz-2.6.32-220.el6.i686文件和nitramfs-2.6.32-220.el6.i686.img文件都在/boot目录下。

赞(0) 打赏
转载请注明出处:服务器评测 » Linux基本知识点总结——GRUB
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏