展開
湖北國聯(lián)計算機科技有限公司
  • 首頁HOME
  • 公司簡介INTRODUCTION
  • 安全防御DEFENSE
  • 軟件開發(fā)SOFTWARE
  • 物聯(lián)網(wǎng)IOT
  • 運行維護SRE
  • 成功案例CASE
  • 聯(lián)系我們CONTACT
  • SRE |運行維護

    6 個運維常見故障及排查方法,是個運維就得會~
    來源:湖北國菱計算機科技有限公司-湖北國聯(lián)計算機科技有限公司-荊州網(wǎng)站建設-荊州軟件開發(fā)-政府網(wǎng)站建設公司 時間:2025-03-04

    “穩(wěn)定是偶然,異常才是常態(tài)”。這句話用來形容IT運維的工作再合適不過了。 因為對于IT運維來說,工作最常遇到的就是不穩(wěn)定性帶來的各種故障,經(jīng)常圍繞發(fā)現(xiàn)故障、響應故障、定位故障、恢復故障這四大步驟打轉(zhuǎn)。

    一、Linux 系統(tǒng)無法啟動

    原因1、          

    文件系統(tǒng)配置不當,比如/etc/fstab文件等配置錯誤或丟失,導致系統(tǒng)錯誤無法啟動。一般是人為修改錯誤或者文件系統(tǒng)故障。

    排查方法:

    系統(tǒng)配置/etc/fstab錯誤或丟失而無法啟動,當啟動的時候,出現(xiàn)starting system logger后停止了。

    解決方法:想辦法恢復/etc/fstab文件,利用Linux rescue修復模式登錄系統(tǒng),從而獲取掛載點和分區(qū)信息,重構(gòu)/etc/fstab文件。

    原因2 、        

     非法關(guān)機,導致root文件系統(tǒng)破壞,也就是Linux根分區(qū)破壞,系統(tǒng)無法正常啟動。

    排查方法:

    Linux下普遍采用的是ext3/ext4文件系統(tǒng),ext3/ext4 是一個具有日志記錄功能的日志文件系統(tǒng),可以進行簡單的容錯和恢復,但是在一個高負荷讀寫的 ext3 文件系統(tǒng)下,如果突然發(fā)生掉電,就很有可能發(fā)生文件系統(tǒng)內(nèi)部結(jié)構(gòu)不一致,導致文件系統(tǒng)破壞。 Linux 在啟動時會自動去分析和檢查系統(tǒng)分區(qū),如果發(fā)現(xiàn)文件系統(tǒng)有簡單的錯誤,會自動修復,如果文件系統(tǒng)破壞比較嚴重,系統(tǒng)無法完成修復時,系統(tǒng)就會自動進入單用戶模式下或者出現(xiàn)一個交互界面,提示用戶介入手動修復,現(xiàn)象類似下面所示:

    從這個錯誤可以看出,系統(tǒng)根分區(qū)文件系統(tǒng)出現(xiàn)了問題,系統(tǒng)在啟動時無法自動修復,然后進入到了一個交互界面,提示用戶進行系統(tǒng)修復。這個問題發(fā)生的機率很高,引起這個問題的主要原因就是系統(tǒng)突然掉電,引起文件系統(tǒng)結(jié)構(gòu)不一致。一般情況下解決此問題的辦法是采用fsck命令,進行強制修復。

    解決方法:

    根據(jù)上面的錯誤提示,當按下“Ctrl-D”組合鍵后系統(tǒng)自動重啟,當輸入root密碼后進入系統(tǒng)修復模式,在修復模式下,可以執(zhí)行fsck命令,具體操作過程如下:

    需要注意的是,在執(zhí)行fsck 的時候,一定要先卸載要修復的分區(qū),然后再執(zhí)行修復操作!

    原因三:

    Linux 內(nèi)核文件丟失或者崩潰,從而無法啟動,也可能是因為內(nèi)核升級錯誤或者內(nèi)核存在 bug。這種情況一般 Linux 系統(tǒng)啟動會報錯找不到內(nèi)核文件,而內(nèi)核文件存儲在 /boot 分區(qū),主要包括內(nèi)核文件和初始化文件:

    1、vmlinuz:內(nèi)核鏡像文件,包含內(nèi)核代碼和數(shù)據(jù)

    顯示 error: file '/vmlinuz'not found 解決方法:

    a. 使用可啟動修復介質(zhì)啟動系統(tǒng),并掛載系統(tǒng)磁盤的/boot分區(qū);

    b. 從安裝介質(zhì)或系統(tǒng)備份中提取vmlinuz內(nèi)核文件,復制到/boot分區(qū);

    c. 更新引導配置(grub.cfg),將menuentry塊中的linux行指向vmlinuz內(nèi)核文件;

    d. 重啟系統(tǒng),在引導菜單選擇更新后的菜單項啟動系統(tǒng)。

    2、initrd/initramfs:初始化 RAM 磁盤,包含啟動時需要的模塊和驅(qū)動 顯示error:file'/initrd.img'notfound解決方法:

    a. 參考內(nèi)核文件丟失的解決步驟a,掛載/boot分區(qū)和獲取initrd.img文件;

    b. 將initrd.img文件復制到/boot分區(qū);

    c. 更新 grub.cfg,找到 initrd 相關(guān)行,將其指向新文件;

    d. 重啟系統(tǒng),啟動更新后的菜單項。

    原因4:      

    硬件故障,比如主板、電源、硬盤等出現(xiàn)問題,導致 Linux 無法啟動。 解決方法:一般來說由硬件造成的故障,只需更換硬件設備即可解決。

    二、Linux系統(tǒng)網(wǎng)絡故障

    排查1:檢查網(wǎng)絡硬件        

    檢查網(wǎng)絡故障,首先要排除網(wǎng)絡硬件設備是否存在問題。比如網(wǎng)卡,網(wǎng)線,路由器,交換機等設備是否正常。這些是網(wǎng)絡正常運行的基本條件,如果發(fā)現(xiàn)某些設備出現(xiàn)故障,只需更換硬件即可解決問題。


    排查2:檢查網(wǎng)卡是否正常工作        

    a. 檢查網(wǎng)卡是否正常加載可以通過 ifconfig 命令判斷網(wǎng)卡是否正常加載。如果通過 ifconfig 可以顯示網(wǎng)絡接口的配置信息,表示系統(tǒng)找到網(wǎng)卡驅(qū)動程序,網(wǎng)卡加載正常;解決方法:如果發(fā)現(xiàn)問題網(wǎng)卡,我們可以使用ethtool工具查看問題網(wǎng)卡的具體狀態(tài)信息(注意:Speed/Link deteced等字段)

    b. 檢查網(wǎng)卡IP設置是否正確接下來就要檢查網(wǎng)卡的軟件設定,比如IP是否配置,配置是否正確,確保IP的配置和局域網(wǎng)其它計算機配置沒有沖突。

    排查3:檢查局域網(wǎng)內(nèi)主機能否互連        

      檢查網(wǎng)絡之間的連通是否存在故障,可以先通過ping命令測試局域網(wǎng)主機之間的連通性,然后ping網(wǎng)關(guān),檢測主機到網(wǎng)關(guān)的通信是否正常。


    排查4:檢查系統(tǒng)路由表信息是否正確          

    檢查系統(tǒng)路由表狀態(tài)是處理網(wǎng)絡故障的一種很重要的方法。很多時候都是ip地址沒有配錯,網(wǎng)卡也正常加載但是路由配置不正確,而導致網(wǎng)絡問題的出現(xiàn)。因此需要檢查系統(tǒng)的路由表設置是否正確,如果一個Linux系統(tǒng)有兩塊網(wǎng)卡,同時兩塊網(wǎng)卡設置的IP不在一個網(wǎng)段,要特別注意系統(tǒng)路由表的設置。例如下面這個系統(tǒng)的網(wǎng)絡接口信息:

    從上面輸出可知,本系統(tǒng)有兩塊網(wǎng)卡,分別配置不同網(wǎng)段的IP地址,假定eth0 通過映射的方式對外提供ssh連接服務,而eth1僅供局域網(wǎng)主機之間共享數(shù)據(jù)使用。 現(xiàn)在的問題是,外界無法ssh遠程登錄到此系統(tǒng),而網(wǎng)卡加載沒有問題,網(wǎng)卡IP設置也沒問題,接下來看看此系統(tǒng)的路由設置:

    此時外界就可以通過ssh服務遠程連接到 Linux 系統(tǒng)了。

    排查5:檢查DNS解析

    在Linux系統(tǒng)中,有兩個文件用來指定系統(tǒng)到哪里尋找相關(guān)域名解析的庫,分別是文件 /etc/host.conf 和 /etc/nsswitch.conf。 /etc/host.conf 文件指定系統(tǒng)如何解析主機名,Linux通過域名解析庫來獲得主機名對應的IP地址。下面是RedHat Linux安裝后缺省的/etc/host.conf內(nèi)容:

    order hosts,bind

    其中,order 指定主機名查詢順序,這里表示首先查找/etc/hosts文件對應的解析,如果沒有找到對應的解析,接著就根據(jù)/etc/resolve.conf指定的域名服務器進行解析。

    /etc/nsswitch.conf 文件是由 SUN 公司開發(fā)的,用于管理系統(tǒng)中多個配置文件查詢的順序,由于 nsswich.conf 提供了更多的資源控制方式,nsswich.conf 文件現(xiàn)在已經(jīng)基本取代了 hosts.conf,雖然 LINUX 系統(tǒng)中默認這兩個文檔都存在,但實際上起作用的是 nsswitch.conf 文件。

    nsswitch.conf 文件每行的配置都以一個關(guān)鍵字開頭,后跟冒號: 緊接著是空白,然后是一系列方法的列表。例如這段信息:

    hosts:   files dns

    表示系統(tǒng)首先查詢主機庫文件,如果沒有找到對應的解析,接著會去DNS配置文件指定的 DNS 服務器進行解析。清楚了Linux下域名解析的原理和過程,我們就可以根據(jù)這兩個文件的設定,確定解析的順序,從而判斷出域名解析可能出現(xiàn)的問題。


    排查6:檢查相關(guān)服務是否開啟

    在一個應用出現(xiàn)故障時,必須要檢測服務本身。比如服務是否開啟,配置是否正確等。檢查服務是否正確打開,分為兩步,第一步是查看服務的端口是否打開:例如,我們不能用root用戶ssh登錄到192.168.60.133這臺 Linux 服務器,首先檢查sshd服務的22端口是否打開:

    # telnet 192.168.60.133 22

    SSH-2.0-OpenSSH_4.3

    這個輸出表示192.168.60.133 的22端口對外開放,或者可以說sshd服務是處于打開狀態(tài)。如果沒有任何輸出,可能是服務沒有啟動,或者服務端口被屏蔽。也可以在服務器上通過 netstat 命令檢查22端口是否打開:


    荊州地區(qū)政府網(wǎng)站建設 解決方案 專業(yè)團隊 騰訊第三方平臺 地址:湖北省荊州市沙市區(qū)荊沙大道楚天都市佳園一期C區(qū)29棟112       地址:湖北省松滋市新江口街道才知文化廣場1幢1146-1151室     郵編:434200 聯(lián)系電話:0716-6666211     網(wǎng)站編輯部郵箱:business@gl-ns.com 鄂公網(wǎng)安備 42100202000212號 備案號:鄂ICP備2021015094號-1     企業(yè)名稱:湖北國菱計算機科技有限公司