为了系统的安全性提高,我们一般会考虑将"编辑模式/启动系统"利用grub-md5-cryp加上密文密码,使得普通用户没有权限随便进入内核编辑;

我们一般在工作环境下,如果在root用户下操作时一个不小心将grub目录、grub.conf配置文件损坏,怎么办呢?

下面我们就来看看是如何通过光盘的救援模式下 恢复密码、grub、grub.con的吧!



>>>实验配置步骤:

1.设置grub密码:

1).设置密码:

Linux的内核管理--之光盘恢复grub的方法_救援模式恢复grub

2).将密码写入/boot/grub/grub.conf配置文件中.

[root@station96 ~]# vim /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/vg0-root
#          initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=5
splashp_w_picpath=(hd0,0)/grub/splash.xpm.gz
hiddenmenu ---> 注意:一般都是将'编辑模式'的密码写入这个一行的下面吆!!
password --md5 $1$vGREc1$Gg/MCIvWkwdgzP/Nl0MAO1 ---> 注意:这个是'编辑'时候的密码.
title CentOS (2.6.32-431.el6.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=/dev/mapper/vg0-root rd_NO_LUKS rd_NO_DM LANG=en_US.UTF-8 rd_LVM_LV=vg0/swap rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=vg0/root  KEYBOARDTYPE=pc KEYTABLE=us rhgb crashkernel=auto quiet rhgb quiet
        initrd /initramfs-2.6.32-431.el6.x86_64.img ---> 注意: 一般都是将'启动'的密码写入这行的下面吆!
        password --md5 $1$NJREc1$GeZl/sheOZ3rVZBLtDDQd0 ---> 注意:这个是'启动'时候的密码.
最后提醒:不要写反了哈...



3).重新启动系统测试下:

I.启动的密码:

Linux的内核管理--之光盘恢复grub的方法_恢复grub_02


II.编辑模式的密码:

Linux的内核管理--之光盘恢复grub的方法_恢复grub_03


III.如果不想使用密码了,就把加的那两行加密的密码删除就可以了.





2.恢复配置文件grub.conf .


一般我们都会有误操作的时候,假如一不小心将grub.com配置文件删除、损坏了怎么办呢?


下面模拟误删了配置文件:

1).将配置文件改名.

[root@station96 ~]# cd /boot/grub/
[root@station96 grub]# mv grub.conf grub.conf.bak
[root@station96 grub]# ---> 这时候你重新启动系统就进不去系统了.

2).重启动系统后直接进入命令行模式:

Linux的内核管理--之光盘恢复grub的方法_救援模式恢复grub_04


3).查看帮助信息:

Linux的内核管理--之光盘恢复grub的方法_恢复grub_05


4).指定必须的文件(注意这里会报错的吆,请看: V.):

Linux的内核管理--之光盘恢复grub的方法_恢复grub_06


5).报错信息,找不到根:

Linux的内核管理--之光盘恢复grub的方法_救援模式恢复grub_07


6).指定下 根 就可以:

Linux的内核管理--之光盘恢复grub的方法_grub密码_08


7).显示欢迎信息:

Linux的内核管理--之光盘恢复grub的方法_grub密码_09


8).进入系统后修改配置文件就好了:

Linux的内核管理--之光盘恢复grub的方法_恢复grub_10







3.光盘恢复grub.


第一种方法:模拟损坏

1).使用 dd 命令模拟损坏.

Linux的内核管理--之光盘恢复grub的方法_恢复grub_11


2).重启之后就会进不去系统了:

Linux的内核管理--之光盘恢复grub的方法_grub密码_12


3).启动光盘上的紧急救援模式.

Linux的内核管理--之光盘恢复grub的方法_grub密码_13


4).选择修复模式:

Linux的内核管理--之光盘恢复grub的方法_救援模式恢复grub_14


5).选择语言:

Linux的内核管理--之光盘恢复grub的方法_救援模式恢复grub_15


6).选择键盘:

Linux的内核管理--之光盘恢复grub的方法_grub密码_16


7).选择光盘来进微型系统:

Linux的内核管理--之光盘恢复grub的方法_救援模式恢复grub_17


8).选择是否启用网络功能:

Linux的内核管理--之光盘恢复grub的方法_恢复grub_18


9).选择哪块网卡:

Linux的内核管理--之光盘恢复grub的方法_恢复grub_19


10).选择ipv4的参数:

Linux的内核管理--之光盘恢复grub的方法_恢复grub_20


11).检查存储设备:

Linux的内核管理--之光盘恢复grub的方法_救援模式恢复grub_21


12).该信息是否找到 / ,找到了就使用下面的命令:

Linux的内核管理--之光盘恢复grub的方法_救援模式恢复grub_22


13).已经挂载好:

Linux的内核管理--之光盘恢复grub的方法_grub密码_23


14).选择shell:

Linux的内核管理--之光盘恢复grub的方法_救援模式恢复grub_24


15).成功全换至sh-4.1#:

Linux的内核管理--之光盘恢复grub的方法_恢复grub_25


16).查看grub的帮助信息:

Linux的内核管理--之光盘恢复grub的方法_恢复grub_26


17).开始执行命令修复grub:

Linux的内核管理--之光盘恢复grub的方法_恢复grub_27





第二种方法:模拟grub损坏.

1).模拟删除grub.

Linux的内核管理--之光盘恢复grub的方法_恢复grub_28


2).使用grub-install安装grub:

Linux的内核管理--之光盘恢复grub的方法_grub密码_29


3).查看/boot下是否有grub:

Linux的内核管理--之光盘恢复grub的方法_grub密码_30


4).这时候修改下grub.conf配置文件就可以:

Linux的内核管理--之光盘恢复grub的方法_grub密码_31


5).接上步 小 4) ,这是我将initrd、kernel文件追加到grub.con配置文件中:

Linux的内核管理--之光盘恢复grub的方法_恢复grub_32


6).退出sh-4.1# 到 bash-4.1#之后重新启动就可以:bash-4.1# reboot.







A smile is the most beautiful language!!!


Linux的内核管理--之光盘恢复grub的方法_救援模式恢复grub_33Linux的内核管理--之光盘恢复grub的方法_救援模式恢复grub_33Linux的内核管理--之光盘恢复grub的方法_救援模式恢复grub_33以本人的理解而写出博客,如若有错误,欢迎指出.Linux的内核管理--之光盘恢复grub的方法_救援模式恢复grub_33Linux的内核管理--之光盘恢复grub的方法_救援模式恢复grub_33Linux的内核管理--之光盘恢复grub的方法_救援模式恢复grub_33

                                                                       ---->小马子