Linux学习笔记_5_Linux引导流程解析_3_GRUB配置及Linux系统修复


一、GRUB配置

配置文件保存在/boot/grub/grub.conf

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

1、grub.conf文件分析

default 定义缺省启动系统

【在真实服务器应用里面不可能会装多系统】

timeout 定义缺省等待时间

splashimage 定义GRUB启动背景图片

hiddenmenu 隐藏菜单,如果将其删掉,则不会用自动倒数的设置

(hd0,0) -- /boot所在的分区 -- /

hda sda // 表示硬盘

hd0 sd0 // 在GRUB中硬盘的表示方法

,0 // 表示硬盘中的第一个分区

,1

,2

title CentOS( 。。。) //定义菜单项的名称,。。。内容可以更改

root (hd0,0) //root定义了GRUB的根设备即内核所在分区

kernel定义内核文件所在位置 //注意:此处的/并不代表是根分区,而是表

initrd命令加载镜像文件 //示/boot目录

2、实例分析

示例一、进入单用户模式

(1) 重启之后按Esc键进入GRUB操作界面

功能键:

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

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

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

d: 删除当前行 //delete

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

(2) 点选kernel一行,按e编辑启动级别

(3)在行末加上相应的启动运行级别,如:1

(4)回车,b键进入单用户模式

(5)passwd root 连续确认,即可更改root密码

(6)还可以作其他的一些设置,如异常断电之后,文件系统修复等。

示例二、给GRUB设置密码

(1)生成密文:【需要安装grub】

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

# grub-md5-crypt

Password:

$1$EszU60$Mc2BwxeWUH/8q3iqbRknz0

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

# grub

grub> md5crypt

Password:

$1$EszU60$Mc2BwxeWUH/8q3iqbRknz0

【同样的明文口令每次加密获得的MD5密文口令也 是不同的!】

(2)修改配置文件

加入: password --md5 $1$EszU60$Mc2BwxeWUH/8q3iqbRknz0

--md5 表示是用md5加密的。

【需要加在全局变量里面!如hiddenmenu下面。】

3、GRUB修复

当开机后进入grub界面但没有菜单,只剩下一个grub>提示符,解决方法:

grub>cat /grub/grub.conf (为查看参数)

grub>root (hd0,6)

grub>kernel (hd0,6)/vmlinuz-2.6.18-14 ro root=LABEL=/

grub>initrd (hd0,6)/initrd-2.6.18-14.img

grub>boot

【可以使用Tab键进行命令补全】

4、Linux系统修复模式

情景在线:/etc/inittab文件损坏或者删除,但是首先一点:/etc/inittab文件是备 份过了的。

修复过程

1.把安装盘放到光驱,然后重新启动机器,在BIOS中把系统设置为光驱引导。

【如果是在虚拟机中的话,首先确认光盘加载的是Linux安装镜像】

【F2进入BIOS】

【2.等安装界面出来后,按[F5]键进入linuxrescue模式说明】

2.boot提示符下输入:

linux rescue

3.回车,进入修复模式。

【这时,无论Linux有多么严重的损坏,都可以进入光盘Linux的修复环境进行修复,像重要 文件被删除,root跟GRUB密码全忘了。。。】

【此时,运行的是光盘上的Linux,但是可以对现有的系统上的数据进行修改】

4.键入chroot /mnt/sysimage // 改变根分区

5、然后根据前面的提示信息,进行修复即可

【此时改变的是本地系统上的数据!】

6、修复完成,exit重新引导,完成!

相关内容