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


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

咱们通常在工做环境下,若是在root用户下操做时一个不当心将grub目录、grub.conf配置文件损坏,怎么办呢?vim

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



>>>实验配置步骤:bash

1.设置grub密码:网络

1).设置密码:
app

wKioL1MYoajzE3EFAAEzLUgCeGs900.jpg

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

[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.启动的密码:ui

wKiom1MYojLRZFPUAAA-BQXaMsE058.jpg


II.编辑模式的密码:this

wKioL1MYodOiSSLpAAD7zEnKzaE408.jpg


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).重启动系统后直接进入命令行模式:

wKiom1MYogWDPFm3AAEGaWd5xrI734.jpg


3).查看帮助信息:

wKiom1MYo0nTmSBCAAML-3Eg9kk277.jpg


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

wKioL1MYoyPCcGq3AAErUAo4IHM503.jpg


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

wKiom1MYo0qwaRZpAAMoMaoMx9c787.jpg


6).指定下 根 就能够:

wKioL1MYoySxQa-LAAG5mMvvIP0233.jpg


7).显示欢迎信息:

wKiom1MYo0uQ7uPWAAJpAa7np2s598.jpg


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

wKioL1MYoyWgyyJkAAEmUvypvec091.jpg







3.光盘恢复grub.


第一种方法:模拟损坏

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

wKiom1MYo0zhZjBCAAF0tJlRWjQ673.jpg


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

wKioL1MYoybwj6_UAADbGiEvyvc041.jpg


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

wKiom1MYo02ByFapAAKEAyHruoo397.jpg


4).选择修复模式:

wKioL1MYoy2zRi61AAL3i5y7ark487.jpg


5).选择语言:

wKiom1MYo1TDtfsMAAEiOZZEYlk983.jpg


6).选择键盘:

wKioL1MYoy7ThMIfAAD8g7tzXOw164.jpg


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

wKiom1MYrFziftnHAANuBwPkX2g646.jpg


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

wKiom1MYo1SDsh3KAADnHYEmJ3M004.jpg


9).选择哪块网卡:

wKioL1MYoy6BOH4pAAFQ7Bio1KM661.jpg


10).选择ipv4的参数:

wKioL1MYoy-haclKAAIaZLXz9lQ605.jpg


11).检查存储设备:

wKiom1MYo1Wgi-HBAAJ0oaE5O50760.jpg


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

wKioL1MYoy_ATNrAAAFL_NRW6Ag299.jpg


13).已经挂载好:

wKiom1MYo1ay7_jeAAC49PJEhDs652.jpg


14).选择shell:

wKioL1MYozCC-ovAAAB4uODGU4s044.jpg


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

wKiom1MYo1bDVVN2AADw70X8Yls803.jpg


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

wKioL1MYozCxKEHHAAHPymdxVIA337.jpg


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

wKioL1MYozHiz_xXAAIjv4W0TMc430.jpg





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

1).模拟删除grub.

wKiom1MYo1eQ7h3pAAEOukLbvRY374.jpg


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

wKioL1MYozHBQsDlAAFYlSsJ5KM568.jpg


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

wKioL1MYozHD8U60AADL7jMVcuA344.jpg


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

wKiom1MYo1jSdewzAAEbkohoIR4696.jpg


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

wKioL1MYozKRaqdhAACWUfJaULg829.jpg


6).退出sh-4.1# 到 bash-4.1#以后从新启动就能够:bash-4.1# reboot.







A smile is the most beautiful language!!!


j_0057.gifj_0057.gifj_0057.gif以本人的理解而写出博客,如如有错误,欢迎指出.j_0057.gifj_0057.gifj_0057.gif

                                                                       ---->小马子