GRUB与Linux系统修复(第二版)

GRUB配置解析
配置文件保存在 /boot/grub/grub.conf[/boot分区最好应该单独划分出来]

软链接保存在 /etc/grub.conf

1、grub.conf文件分析

GRUB与Linux系统修复(第二版)

default #缺省启动系统

timeout #缺省等待时间,单位秒s

splashimage #定义GRUB启动背景图片

#(hd0,0) #指定/boot所在的分区 -> 第一块硬盘,第一个分区

hiddenmenu #隐藏菜单

title CentOS (2.6.32-358.el6.i686) #菜单项名称,其内容可修改

root (hd0,0) #定义了GRUB的根设备即内核所在分区,即/boot目录,代表所有启动设备所在的分区

kernel /vmlinuz-2.6.32-358.el6.i686 ro root=UU... #定义内核所在位置,注意:此处的/并不代表是根分区,而是表示/boot目录

initrd /initramfs-2.6.32-358.el6.i686.img #载入镜像文件,详细信息请参照<CentOS 6.X启动流程>这篇博客

单用户模式应用
案例:忘记root密码,系统异常断电

1.系统启动时,按Esc键进入GRUB菜单

GRUB功能键:

e: 编辑当前的启动菜单项 //edit

c: 进入GRUB的命令行方式 //command 

b: 启动当前的菜单项 //boot

d: 删除当前行 //delete

Esc: 返回GRUB启动菜单界面,取消对当前单项所做的的任何修改 

2.点选kernel一行,按e编辑启动级别,在行末加上相应的启动运行级别,如:1或s,回车,b键进入单用户模式

passwd root  #即可更改root密码

#还可作其他的设置,如异常断电之后,文件系统修复等。

设置GRUB密码
第一步:设置密文,并拷贝密文

法1.使用GRUB自带的grub-md5-crypt命令

GRUB与Linux系统修复(第二版)

法2.在GRUB交互命令行界面中使用md5crypt命令

GRUB与Linux系统修复(第二版)

第二步:修改配置文件/boot/grub/grub.conf

加入:password --md5 $1$EszU60$Mc2BwxeWUH/8q3iqbRknz0  #--md5 表示是用md5加密的。[最好将password写在全局模式,如下图]

GRUB与Linux系统修复(第二版)

重启之后

GRUB与Linux系统修复(第二版)

OK,大功告成!

GRUB修复
案例:当开机后进入grub界面但没有菜单,只剩下一个grub>提示符

GRUB与Linux系统修复(第二版)

解决方法:

grub>cat /grub/grub.conf  #发现错误

手工引导Linux系统:

grub>root (hd0,0)

grub>kernel /vmlinuz-2.6.18-14 ro root=LABEL=/ 3 #如果此时敲错,请留意提示信息

grub>initrd /initrd-2.6.18-14.img

grub>boot #此时可以使用Tab命令补全

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/17506.html