Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

Linux 文件系統變唯讀故障排查與修復實戰:從 fsck 到硬件故障識別

編輯:Linux 教學

文件系統突然變為唯讀是典型的存儲層故障表現。本文記錄一次生產環境排查全過程,涵蓋軟件修復嘗試、硬件故障定位、Dell PowerEdge 1950 SAS 卡電容更換實錄。

現象描述

  • 文件系統掛載選項顯示 rw,實際寫入報 "Read-only file system"
  • 大量命令無響應(如 ls、vim)
  • 重啟後直接 halt,無法進入系統
  • iDRAC/iLO 日誌顯示 E171F PCIE Fatal Err B0 D3 F0

常規修復嘗試(均無效)

1. 重啟期望自動修復

系統啟動時會自動執行 fsck,但因硬件錯誤導致掛載失敗。

2. 手動 fsck 修復

fsck -y /dev/sda1                    # 自動修復
fsck -y -C -t ext3 /dev/sda1         # 顯示進度條、指定文件系統類型

參數說明:-y 自動 yes、-C 進度條、-t 指定類型。修復後文件多移至 lost+found 並改名。

3. 檢查掛載狀態與重掛載

cat /proc/mounts
mount | grep 'ro'
mount -o rw,remount /dev/sda1        # 嘗試重掛載為讀寫

4. 處理 "device busy" 阻礙

fuser -m /boot        # 找出佔用進程 PID
fuser -mk /boot       # 直接 kill 佔用進程
umount /dev/sda1
mount /dev/sda1 /boot

根因定位:硬件故障

經 iLO 日誌分析與硬件檢查,確認為 Dell PowerEdge 1950 SAS 5/i RAID 卡上兩顆 1500μF 6.3V 液態電容鼓包損壞,導致 PCIe 總線致命錯誤,進而觸發核心將文件系統掛載為唯讀保護數據。

硬件級修復方案

  1. 拆機取出 SAS 5/i 卡(位於機箱前顯示板後側)
  2. 更換 2 顆電容:規格 1500μF / 6.3V / 105℃,高度 ≤ 原電容(否則蓋不上蓋)
  3. 推薦優先選用 三洋固態電容,次選三洋液態電容
  4. 維修成本約 10-20 元,耗時 30 分鐘
  5. 裝回測試,故障徹底消失

關鍵教訓

  • fsck 無法修復硬件導致的邏輯錯誤,盲目重複 fsck 可能擴大元數據損壞
  • 唯讀掛載是核心保護機制,非配置問題,勿嘗試 mount -o remount,rw 強行覆蓋
  • 服務器硬件日誌(iDRAC/iLO/IPMI)是排查首選入口
  • Dell 1950 SAS 5/i 卡電容失效為已知通病,批量採購該型號需納入預防性維護計劃

若遇同類現象:先看硬件日誌 → 確認存儲控制器狀態 → 再決定是否 fsck。數據無價,硬件故障前提下任何寫入操作皆有風險。

Copyright © Windows教程網 All Rights Reserved