1、确定问题的故障特征
2、重现故障
3、使用工具收集进一步信息,确定故障的真正根源
4、排除不可能的原因
5、定位故障:
从最简单的问题入手
一次尝试一种方式
原则:
1、备份原文件
2、尽可能借助于工具
可能出现的故障:
故障一:管理员密码忘记
解答一:进入单用户模式将密码修改
开机按e;
进入kernel选项输入single;
输入b重启系统;
passwd root 重置密码;
init 6 重启
故障二:系统无法正常启动
1、grub损坏(MBR损坏、grub配置文件丢失、stage2....)
2、系统初始化(某文件系统无法正常挂载;驱动不兼容)
3、服务故障导致系统无法正常驱动
4、用户无法登录(bash程序故障)
解答二: MBR损坏
实验前备份MBR dd if=/dev/sda of=/root/mbr.backup count=1 bs=512
模拟破坏MBR dd if=/dev/zero of=/dev/sda count=1 bs=200 sync
解决方法一:使用紧急救援模式
1、挂载光盘,使用完整的系统安装光盘
2、重启的时候会提示boot> 你在后面输入linux rescue
3、选择english 选择us
4、选择yes启动网络接口
5、选择yes配置eth0网卡
6、选择静态地址Manual address 空格选择
7、设置常用的IP地址
8、设置网关、DNS
9、选择continue 就会启动一个小linux
10、输入grub 进入grub命令行模式
11、find (hd#,0) 查找内核在哪个磁盘上
12、root (hd#,0)
13、setup (hd#)
14、quit
15、sync
16、reboot 成功
解答二: grub配置文件丢失
1、启动系统显示 grub>
2、find (hd#,0)
3、root (hd#,0)
4、kernel /vmlinuz ro root /TAB
5、initrd /initrd /initrd- /TAB
6、boot 重启
7、启动后如果能找到就放回原位,如果找不到
8、手动创建grub.conf文件
default=0
timeout=5
title WangSong Team
root (hd#,0)
kernel /vmlinuz-2.6.18.el5 ro root=/dev/Vo.../root
照着原grub.conf写
解答二:grub目录下其他文件丢失怎么办; 例如stage2丢了
1、可以去/usr/share/grub/i386 32位在这里 64位自己找吧
解答二:系统初始化故障;文件系统无法正常挂载,驱动不兼容 (kernel panic 内核恐慌)
解答二:默认级别设置成0或者6了
进入单用户模式 开机按e;
进入kernel选项输入single;
输入b重启系统;
修改/etc/inittab
解答二:用户无法正常登录系统: (一不小心把bin下的bash删了)
1、关机都关不掉了
2、这时候同样不能进入1级别
3、咱们需要进入紧急救援模式
4、将光盘设置为第一启动盘,挂载光盘
5、boot> linux rescue 同上
7、挂载/dev/hdc这个设备 (cdrom指向到了这个目录)
8、手动在根下创建一个目录media
9、mount /dev/hdc /media
10、cd /media
11、cd Server
12、ls | grep bash
13、重装:rpm -ivh --replacepkgs --root /mnt/sysp_w_picpath bash-3.2。。。。。
故障七:命令无法运行,例如export PATH=/data/bin 导致ls不能执行
退出当前系统,另启终端,重新登录
如果是改了配置文件可以手动指定:export PATH=/bin:/sbin:/usr/bin:/usr/sbin
echo $PATH 可以查看所有的
故障五:不小心把etc/rc.d/下的某个文件删了.
进入单用户模式修复目录
故障六:调整时钟导致sendmail配置文件的时间戳检查无法通过
方法一:进入单用户模式,将sendmail服务关闭
方法二:启动机器的时候敲I进入交互式模式,每一条服务都询问你
故障三:命令无法运行
故障四:编译过程无法继续(开发环境缺少基本组件)
作为管理员我们应该阶段性的备份一下/etc/下的配置文件
安装一个版本控制工具svn;或者git 可以将配置文件恢复到过去的某一个时刻