grub引导工具的配置与使用

引导程序是驻留在硬盘第一个扇区(MBR、主引导记录)的程序,grub是一个功能强大的多系统引导程序,专门处理Linux与其它操作系统共存的问题。下面就介绍一下grub.conf文件里的具体内容及其含义。
grub配置文件路径:/boot/grub/grub.conf ,/etc/grub.conf为/boot/grub/grub.conf的链接文件

文章目录

  • 使用命令可以查看grub.conf文件内容
  • grub.conf文件参数解释
  • grub命令行接口
  • 安装grub
  • 操作案例

使用命令可以查看grub.conf文件内容

[root@centos6 ~]# 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/sda3
#          initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS 6 (2.6.32-696.el6.x86_64)
	root (hd0,0)
	kernel /vmlinuz-2.6.32-696.el6.x86_64 ro root=UUID=4642135f-20db-48c8-af2f-971df2956961 rd_NO_LUKS  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet
	initrd /initramfs-2.6.32-696.el6.x86_64.img

grub.conf文件参数解释

default=0
设定默认启动的菜单项;菜单项(title)编号从0开始
timeout=5
timeout表示默认的等待时间,指定菜单项等待用户选择的时长,此处设置为5表示开机后系统将自动载入默认的操作系统
splashimage=(hd0,0)/grub/splash.xpm.gz
指定grub引导时使用的背景图片文件路径
hiddenmenu
隐藏菜单选项
password [--md5] STRING:菜单编辑认证
title TITLE
定义菜单项“标题”,可出现多次来引导多个不同的内核
	root (hd0,0)
	设置grub的根分区,是/boot对应的分区或boot文件夹所在的分区(grub查找stage2阶段及kernel文件所在的设备分区)
	kernel /vmlinuz-2.6.32-696.el6.x86_64 ro root=UUID=4642135f-20db-48c8-af2f-971df2956961 rd_NO_LUKS  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet
	指定内核文件与要挂载的真正的根设备;ro 表示 readonly的意思
	initrd /initramfs-2.6.32-696.el6.x86_64.img
	指定初始化内存映像盘(内核匹配的ramfs文件)
	password [--md5] STRING
	启动选定的内核或操作系统时进行认证

grub-md5-crypt命令:实现对密码进行MD5加密

grub命令行接口

功用:
(1)提供菜单、并提供交互式接口
	e:编辑模式,用于编辑菜单
	c:命令模式,交互式接口
(2)加载用户选择的内核或操作系统
	允许传递参数给内核
	可隐藏此菜单
(3)为菜单提供了保护机制
	为编辑菜单进行认证
	为启用内核或操作系统进行认证

如何识别设备:
	(hd #,#)
		hd#:磁盘编号,用数字标识,从0开始编号
		#:分区编号,用数字标识,从0开始编号

C:命令行接口
 help:获取帮助列表
 help KEYWORD:详细帮助信息
 cat (hd#,#)/path/to/somefile    #查看某文件内容
 find (hd#,#) /PATH/TO/SOMEFILE  #查找文件
 root (hd#,#)
 kernel /PATH/TO/KERNEL_FILE  设定本次启动时用到的内核文件;额外还可以添加许多内核支持使用cmdine参数
 	例如:init=/path/to/init,selinux=0
 initrd /PATH/TO/INITRAMFS_FILE:设定为选定的内核提供额外文件的ramdisk
 boot:引导启动选定的内核


手动在grub命令行接口启动系统:
	grub> root (hd#,#)
	grub> kernel /vmlinux-VERSION-RELEASE ro root=/dev/DEVICE
	grub> initrd /initramfs-VERSION-RELEASE.img
	grub> boot
 

进入单用户模式:
(1)编辑grub菜单(选定要编辑的title,而后使用e命令)
(2)在选定的kernel后附加
	1,s,S或single都可以
(3)在kernel所在行键入“b”命令

安装grub

(1)grub--install命令
	grub--install --root-directory=ROOT /dev/DISK
	此处ROOT为boot的父目录

(2)grub命令
	grub> root (hd#,#)
	grub> setup (hd#)

操作案例

1.root密码忘记
操作步骤:
①按照上面操作进入单用户模式
②在所登陆单用户模式下用“passwd root”即可修改root密码
2./etc/grub.conf文件损坏
如果/etc/grub.conf文件损坏,会导致系统无法启动,这时需要进入grub的命令行模式,手工重新引导grub即可。
操作步骤:
①进入grub命令行模式
②依次手动键入以下命令并回车(cat /etc/grub.conf命令查看配置文件)
root (hd#,#) #指定启动分区
kernel /vmlinux-version-release #指定内核文件所在位置
initrd /initramfs-version-release #指定镜像文件

3./etc/inittab文件丢失
如果/etc/inittab文件丢失,系统将无法启动,这种故障只能通过Linux安装光盘进行修复。
①在BIOS程序内设置以光盘启动
②启动时按F5键进入Linux的Rescure(修复、挽救)模式
③键入linux rescure回车进行系统修复
④根据提示执行相应操作步骤,然后进入命令提示符,根据提示改变根分区目录chroot /mnt/sysimage
⑤恢复/etc/inittab文件(通过备份恢复)
⑥exit命令退出,系统自动重新引导,完成修复

你可能感兴趣的:(Linux)