1.环境

系统版本:CentOS-6.4-i386-bin-DVD1.iso

          CentOS-6.4-i386-LiveDVD.iso

网易开源镜像站http://mirrors.163.com/

PS:我这是在虚拟机下利用CentOS的live光盘测试的,多多少少是不方便的,如果是物理机,这种方法就需要使用到光驱了,再如那些刀片服务器,根本就没有物理光驱,所以使用U盘是比较实用的,建议大家把live盘装到U盘中,使用U盘启动来测试及排除这些故障。

2.步骤


A)模拟stage1失效


先查看下自己系统磁盘名称。

145010872.jpg

在系统磁盘的最开始创建一个和boot loader一样大小的文件(446字节),具体原因查阅MBR,覆盖掉boot loader 。然后重启,已经进不去系统了。

145012544.jpg

把安装时的系统盘CentOS-6.4-i386-bin-DVD1.iso添加到虚拟机的光驱中。开机时按Esc键选择光驱启动。

145012674.jpg

进入后按任意键,然后选择第三项,救援模式进入。

145014680.jpg

语言选择英语。

145014918.jpg

选择本地光驱。

145015880.jpg

不连接网络。

145016533.jpg

选择“继续”。

145019660.jpg

可以看到系统已经挂载到了/mnt/sysp_w_picpath下,点击OK。

145044295.jpg

接着OK。

145044406.jpg

选择第一项,打开一个新的shell,点击OK。

145045492.jpg

下面出现了打开的shell窗口,通过chroot切换root身份下。

145045514.jpg

重建MBR中的boot loader。

145045598.jpg

连续两次退出。

145046231.jpg

重启系统。

145046309.jpg

重启正常,可以看到,正在重新标注策略,需要一段时间。已经OK了。

145047261.jpg


B)模拟stage2失效


直接删除stage2文件。然后重启系统。

145048401.jpg

系统出现错误,由于丢失stage2文件,系统已经打不开了。出现"Error 15"错误。

145048546.jpg

把光盘CentOS-6.4-i386-LiveDVD.iso添加到虚拟机的光驱中。开机时按Esc键选择光驱启动。

145049466.jpg

系统启动后按任意键出现此画面,选择第二项boot启动。

145050829.jpg

系统起开后,打开终端,切换到管理员身份下。

145111600.jpg

把第一分区挂载到/boot下。

145114968.jpg

145114720.jpg

新建一个stage2文件。

145115325.jpg

切换到/boot/grub下。

145115118.jpg

stage2已经存在了,重启就OK了。

145116146.jpg


C)模拟grub.conf丢失、损坏或误删除


先看一下系统的根分区挂载到了哪个磁盘分区下,这点特别重要,即root=/LABEL,我的是32位系统,和64位的不太一样。

如果你记得这个位置,就不用进入live光盘折腾了。

我的32位系统根挂载点是root=/dev/sda2

154604694.jpg

下面这是64位下的根挂载点。root=/dev/mapper/vg_centos-lv-root 这个位置非常重要。

154607576.jpg

模拟grub.conf失效,切换到/boot/grub/下,删除它。然后重启。

145117381.jpg

重启后系统就变成了这样。

145118567.jpg

敲入下面4步命令。(可以利用tab键补全vmlinuz-2.6.32和initramfs-2.6.32)

最重要的就是第二步root=/LABEL

(LABEL:根挂载点的位置;ro:只读;quiet:静默启动。)

如果不知道自己的根挂载点位置,可以利用live盘进入系统,使用df -h查看。

145120169.jpg

系统成功启动后,切换到/boot/grub下是没有grub.conf配置文件的,如果不想每次启动系统都敲上面的4个命令,必须为系统建立一个grub.conf配置文件。

145121942.jpg

将下面内容(2-7行)写入grub.conf文件即可。

145122832.jpg


D)/boot/grub 误删除


模拟/boot/grub失效,删除/boot/grub。重启系统。利用CentOS-6.4-i386-LiveDVD.iso修复系统。

145122194.jpg

开机恩ESC键进入光盘启动。

155850898.jpg

选择第二项,boot启动。

155854459.jpg

打开终端,切换到管理员。

155855206.jpg

将/dev/sda1挂载到/boot下。

145122533.jpg

重新建立grub

145123836.jpg

145123483.jpg

可以看到只有stage1和stage2,而没有grub.conf

145123364.jpg

需要手动添加grub.conf,并写入以下内容。

145124703.jpg


E)root口令丢失


开机选择任意键,出现下面画面,摁“e”键进入。

wKiom1Mq1biSGJZZAABs7goud_I968.jpg

利用上下键选择第二项,“e”键进入。

145125264.jpg

只敲“1”就OK了,敲single也一样,进入单用户模式。enter后按b键。

145125976.jpg

成功进入单用户模式,清除管理员密码。也可以修改重置密码。重启就OK了。

145126448.jpg


F)/etc/fstab误写入


模拟fstab误写入.编辑fstab,将第九行开头加一"/"

145126452.jpg

145126798.jpg

重启系统。可以看到提示的错误。UUID前多加了一个"/",正式我们不小心多加的。

145127717.jpg

提示输入密码后进入维护模式。

145128172.jpg

进入后,修改/etc/fstab文件,将第九行的“/”去掉,保存退出,重启系统即可恢复正常。

161407581.jpg



今天就到这里吧,很累!!!