2
模拟系统故障及排除
2.1 问题
在维护Linux服务器的过程中,准确把握故障发生的原因是最终排除故障、解决问题的关键。通过对常见系统故障的模拟和分析排除,有助于管理员快速了解故障点,熟悉“对症下药”的Trouble
Shooting思路。
1.模拟磁盘/dev/sda的MBR故障,并执行修复。
2.模拟GRUB文件丢失故障,并执行修复。
3.模拟EXT3分区超级块故障,并执行修复。
2.2 方案
2.3 实现
1.模拟磁盘/dev/sda的MBR故障,并执行修复
1)备份磁盘/dev/sda的MBR扇区
选择一个/dev/sda以外的文件系统(比如/dev/sdb1)来存放备份文件:
[root@svr5
~]# df
-hT
/home
//选择/dev/sdb1存放备份
文件系统
类型
容量
已用
可用
已用%
挂载点
/dev/sdb1
ext3
19G
173M
18G
1%
/home
使用dd命令复制/dev/sda设备的第一个扇区(512字节):
[root@svr5
~]#
dd if=/dev/sda of=/home/sda.mbr bs=512
count=1
1+0 records
in
1+0 records
out
512
bytes (512
B)
copied, 0.013492
seconds, 37.9
kB/s
确认已存放到/dev/sdb1下的备份文件:
[root@svr5
~]# ls
-l
/home/sda.mbr
-rw-r--r--
1 root root
512
10-15
15:50
/home/sda.mbr
2)模拟对MBR扇区的破坏
使用dd命令对MBR扇区清零,然后重启系统:
[root@svr5
~]#
dd if=/dev/zero of=/dev/sda bs=512
count=1
//破坏MBR
1+0 records
in
1+0 records
out
512
bytes (512
B)
copied, 2e-05
seconds, 26
MB/s
[root@svr5
~]# reboot
//重启系统
..
..
重启系统后,因磁盘sda的MBR被破坏而无法找到分区表,从而也就无法加载Linux操作系统。如果网络启动或光盘启动也失败,则提示“Operating
System not found”而停滞,如图-2所示。
图-2
3)进入RHEL 5光盘的救援模式
修改RHEL 5虚拟机的光盘设置,将其改为RHEL
5系统的.iso安装镜像文件,比如rhel-server-5.9-x86_64-dvd.iso,如图-3所示。
图-3
然后重启虚拟机电源,默认将从光盘引导。待出现“boot:”提示界面时,输入“linux
rescue”指令,如图-4所示,按回车键。