今天给大家打来的是Linux服务器中常见故障的一些解决方案。


首先,我们要知道对Linux进行故障排错的学习方法和步骤:
一、要非常熟悉Linux的启动过程。
二、要学会查看日志的好习惯。
三、要具备常见的Linux故障的场景及解决方法的经验。
四、不断的积累、总结。
 
 
引导流程图:
 
RHEL服务器故障排除精粹_故障排除
 
 
 
(1)修复MBR扇区故障
 
故障原因:
        One:一些病毒、木马等造成的破坏。
        two:不正确的分区操作、磁盘读写的误操作。
故障现象:
        one :无法加载OS,开机后出现黑屏。
        two:找不到引导程序,启动过程中突然中断。
       
解决方案:
         one:应提前作好备份文件
         two:以RHEL5安装光盘引导进入急救模式
         three:从备份文件中恢复
 
Example:
1.备份MBR扇区数据
    dd if=/dev/sda of =/backup/sda.mbr.bak bs=512 count=1
 
2.模拟MBR被破坏额故障
    dd if=/dev/sda of=/dev/sda bs=512 count=1
RHEL服务器故障排除精粹_职场_02

3.RHEL5关盘引导,进入到急救模式
     boot:linux resure

4.从备份文件中恢复MBR扇区
     dd if=/tempdir/sda.mbr.bak of=/dev/sda bs=512 count=1
 
------------------------------------------------------------------
 
  (2)修复GRUB引导故障
故障原因:
        one :MBR中的GRUB引导程序遭到破坏
        two :grub.conf文件丢失、引导配置有误
 
故障现象:


        系统引过程中停止不前,显示“grub>”提示符
RHEL服务器故障排除精粹_RHEL服务器_03
 

 
 
解决方案:
         手动输入引导命令
         进入急救模式,从备份中恢复grub.conf配置文件
         向MBR扇区中重建grub程序
 
Example:

1.在“grub>”提示符后,手动输入引导命令,
成功进入系统后,恢复或重建 grub.conf 配置文件
grub> root  (hd0,0)
grub> kernel  /vmlinuz-2.6.9-5.EL ro root=LABEL=/ rhgb quiet
grub> initrd  /initrd-2.6.9-5.EL.img
grub> boot
==================================================================
[root@localhost ]# cd  /boot/grub/
[root@localhost ]# cp  grub.conf.bak  grub.conf
==================================================================


2.进入急救模式,从备份文件中恢复 grub.conf 文件,
向MBR扇区中重建GRUB程序

sh-3.1# chroot  /mnt/sysp_w_picpath
sh-3.1# cd  /boot/grub/
sh-3.1# cp  grub.conf.bak  grub.conf
sh-3.1# grub-install  /dev/sda
 
(3)etc/inittab文件丢失
故障原因:
inittab文件被误删除,或者存在配置上的问题
故障现象:
         one:启动中提示 “... INIT: No inittab file found”
 
RHEL服务器故障排除精粹_职场_04

         two:系统停滞,无法完成初始化

解决方案:
         One:进入急救模式,从备份文件中恢复
         two: 在急救模式中重新安装 initscripts 软件包
           rpm  -ivh --aid --force --replacepkgs  initscripts-8.45.14.EL.i386.rpm
 
 (4)etc/fstab文件丢失
故障原因:
               fstab文件被误删除,或者存在配置错误
故障现象:
      one:启动中提示 “... /etc/fstab: No such file or directory”
RHEL服务器故障排除精粹_职场_05

      two :系统停滞,无法完成初始化
 
解决方案:
           one  :进入急救模式,手动查找并挂载根分区
                     查找逻辑卷:lvm vgscan
                     激活指定的逻辑卷:lvm vgchange -ay  /dev/VolGroup00
           two :恢复或重建fstab配置文件
 
 
 (5)忘记root用户的密码
故障原因:
              忘记root用户的密码
 
故障现象:
                one :无法进行需要root权限的管理操作
                two :若没有其他可用帐号,将无法登录系统
 
解决方案:
           one :引导进入单用户模式(runlevel=1),然后重设密码
                     grub > kernel  ...  single 或 s 或 1
           two :进入急救模式,然后重设密码
 

(6)软件包类故障 —— rpm数据库损坏

故障原因:
              非正常关机、误删除运行中的程序文件
              RPM数据文件被误写或删除

故障现象:
             不能正常查询rpm包信息 rpm -ql ; rpm -qa .....
              无法安装、升级或卸载软件包等 rpm -U ; rpm -i......
解决方案:
                重建RPM数据库
                重建命令:rpm  --rebuilddb 或 rpm  --initdb
 

(7)磁盘资源耗尽故障

故障原因:
         one :磁盘空间已被大量的数据占满,空间耗尽
         two :虽然还有可用空间,但文件数i节点耗尽

故障现象:
         one :无法写入新的文件,提示“… : 设备上没有空间”
          two : 部分程序无法运行,甚至系统无法启动

解决方案:
             1. 清理磁盘空间,删除无用、冗余的文件
             2 .转移或删除占用大量i节点的琐碎文件
             3. 进 入单用户模式、急救模式进行修复
             4.用户设置磁盘配额---系统管理中必做的