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 檔案系統故障排查與修復:OSD 部署失敗、I/O 錯誤、命令無回應、資料搶救完整流程

編輯:關於 Linux

Ceph OSD 部署過程中若發生檔案系統錯誤,會導致底層裝置無法正常讀寫、命令卡住無回應。本文記錄實戰故障現象 (dmesg I/O error、ceph-disk 指令失敗)、診斷步驟 (smartctl、fsck、dmesg -T)、修復策略 (唯讀掛載搶救資料、fsck.ext4 修復、必要時重建 OSD)、預防措施 (監控 SMART、預留備用裝置)。

命令失敗日誌

I/O 錯誤現象

故障現象

  • ceph-disk prepare / activate 長時間無輸出、最終失敗。
  • ls /var/lib/ceph/osd/ 卡住無回應。
  • dmesg -T 大量:Buffer I/O error on device sdb, logical block XXXX、Medium Error、Unrecovered read error。

診斷流程

  1. 確認硬體健康:smartctl -a /dev/sdb 關注 Reallocated_Sector_Ct、Current_Pending_Sector、Offline_Uncorrectable。
  2. 檢查檔案系統:fsck.ext4 -n /dev/sdb1 (唯讀檢查) → 若無錯誤則為硬體層面問題。
  3. 核心日誌時間序列:dmesg -T | grep -i -e error -e fail -e sdb 追蹤首發錯誤時間點。

修復策略 (按嚴重度)

Level 1:檔案系統元資料不一致 (硬體正常)


umount /var/lib/ceph/osd/osd.X
fsck.ext4 -fy /dev/sdb1
mount -a
systemctl restart ceph-osd@X

Level 2:硬碟壞軌局部 (SMART 預失效)


# 1. 唯讀掛載搶救關鍵資料
mount -o ro /dev/sdb1 /mnt/rescue
cp -a /mnt/rescue/current/ /backup/osd.X/

# 2. 標記 OSD out、destroy
ceph osd out X
ceph osd purge X --yes-i-really-mean-it

# 3. 更換硬碟、重建 OSD
ceph-disk prepare /dev/sdX
ceph-disk activate /dev/sdX1

Level 3:災難性故障 (大量壞軌、固件故障)

  • 立即隔離故障節點:ceph osd set noout 防止資料再平衡風暴。
  • 啟動災難恢復流程:從備份叢集/冷備份恢復 Monitor DB、OSD 資料。
  • 硬體廠商 RMA 流程並行。

預防性監控


# Prometheus + node_exporter 監控指標
node_disk_io_time_seconds_total
node_disk_read_errors_total
node_disk_write_errors_total
smartmon_attr_Reallocated_Sector_Ct
smartmon_attr_Current_Pending_Sector

檔案系統故障往往源於硬體劣化,建立「監控 → 告警 → 隔離 → 更換」閉環,才能守住資料安全底線。

Copyright © Windows教程網 All Rights Reserved