天天看點

Linux常見系統故障排除

前言

   運維人員經常會遇到各式各樣的系統故障,如何根據故障特征鎖定問題根源,需要的不僅僅是技巧,還有遇到故障時的思路,和對系統内部的了解,本文列出了一些常見的系統故障和處理方法,在那之前首先需要對系統啟動流程有一個比較完整意義上的了解,以便問題出現後判斷其屬于哪個環節。

Linux系統啟動流程的基本知識

1、加電自檢(PowerOnSelfTest)

   開機自動映射rom中程式到cpu可以尋址的空間中,cpu執行指令檢查基本硬體是否正常

2、BIOS(Boot Sequence)

   如果正常則按照CMOS中儲存的BootSequnece依次尋找對應裝置上的MBR

3、MBR(BootLoader)

   讀取第一個MBR存在的裝置中的BootLoader,并交與其控制權。

   Linux下的常見BootLoader有兩種:

           LILO: LInux LOader(不能引導1024柱面以後的分區核心(嵌入式))

           GRUB: GRand Unified Bootloader

   MBR空間有限,無法展示其特性,是以将GRUB分為2階段程式,如下:

       Stage1(被裝載MBR當中)                主要目的是為了引導第二階段

       Stage1.5(/boot/grub/Stage1_5)   識别常見不同類型的檔案系統

       Stage2(/boot/grub/Stage2)         引導作業系統(突破了446位元組的限制)         并借助配置件/boot/grub/grub.conf

4、Kernel

   裝置探測

   驅動初始化(可能會從initrd(RHEL6 initramfs)檔案中裝載驅動子產品)

   為核心提供通路根檔案系統的基本驅動能力

   以隻讀挂載根檔案系統

   裝載第一個程序init

5、init(etc/inittab)

   /sbin/init         其配置檔案(etc/inittab)

   /etc/inittab     主要任務如下:

          1、設定偶人運作級别

          2、運作系統初始化腳本

          3、運作制定運作級别目錄下的腳本

          4、設定Ctrl+Alt+Del組合鍵的操作

          5、定義UPS電源在電源故障/恢複時執行的操作

          6、啟動6個虛拟終端(2345級别)

          7、啟動圖形終端(5級别)

常見系統錯誤

1、忘記密碼

   啟動進入單使用者模式

<a target="_blank" href="http://blog.51cto.com/attachment/201308/182122823.png"></a>

   使用passwd修改root密碼

<a target="_blank" href="http://blog.51cto.com/attachment/201308/182229769.png"></a>

2、bootloader損壞

<a target="_blank" href="http://blog.51cto.com/attachment/201308/182556697.png"></a>

   載入安裝CD光牒進入緊急救援模式

<a target="_blank" href="http://blog.51cto.com/attachment/201308/182751382.png"></a>

<a target="_blank" href="http://blog.51cto.com/attachment/201308/182754290.png"></a>

<a target="_blank" href="http://blog.51cto.com/attachment/201308/182757751.png"></a>

   進入grub模式

<a target="_blank" href="http://blog.51cto.com/attachment/201308/182855622.png"></a>

<a target="_blank" href="http://blog.51cto.com/attachment/201308/183716951.png"></a>

<a target="_blank" href="http://blog.51cto.com/attachment/201308/183745153.png"></a>

   重複成功

<a target="_blank" href="http://blog.51cto.com/attachment/201308/183816463.png"></a>

3、bash丢失系統無法啟動

<a target="_blank" href="http://blog.51cto.com/attachment/201308/183943319.png"></a>

   進入救援模式後

<a target="_blank" href="http://blog.51cto.com/attachment/201308/183957607.png"></a>

4、加密grub和核心

<a target="_blank" href="http://blog.51cto.com/attachment/201308/184151674.png"></a>

5、因某服務異常導緻系統無法啟動

<a target="_blank" href="http://blog.51cto.com/attachment/201308/184503327.png"></a>

總結七個點:

1、确定問題的故障特征

2、重制故障

3、使用工具收集進一步資訊,确定問題根源

4、排除不可能的原因

5、定位故障

6、備份源檔案

7、盡可能借助于工具

本文轉自 ftmoonfans  51CTO部落格,原文連結:http://blog.51cto.com/soulboy/1277190

繼續閱讀