XFS 檔案系統在高負載 IO 測試 (如 fio) 後出現 mount: Structure needs cleaning,表示檔案系統中繼資料不一致。本文說明使用 xfs_repair 修復流程,並強調 修復會導致該分區所有檔案遺失,務必先備份可救資料。
/home)fio 多進程壓測du -hs /home/* 部分檔案報 mount: Structure needs cleaning
umount /home
# 若忙碌無法卸載
fuser -km /home
umount /home
xfs_repair /dev/mapper/vg-home # 或實際裝置路徑 /dev/sda3
# 過程會輸出 Phase 1~7 掃描修復訊息
⚠ 警告:xfs_repair 會重建中繼資料,**分區內所有檔案將遺失**,即使 du 仍可見的檔案也不例外。
mount /home
ls -la /home
# 應為空目錄 (lost+found 可能存在)
cp -a /home /backup/home 或 tar 打包重要資料。xfs_repair -n (乾跑模式) 僅檢查不修改,可先評估損壞程度。logbsize、lazycount 等掛載選項降低中繼資料爭用。| 檔案系統 | 修復指令 | 備註 |
|---|---|---|
| ext4 | fsck.ext4 -y /dev/sdX | 需卸載或唯讀掛載 |
| XFS | xfs_repair /dev/sdX | **必須卸載**,會清空資料 |
| Btrfs | btrfs check --repair /dev/sdX | 謹慎使用,可能加劇損壞 |
