badblocks 為 Linux 原生壞軌掃描工具,配合 e2fsck 將壞區標記為不可用,防止資料寫入損壞區域。
sudo fdisk -l # 或 lsblk -f
sudo badblocks -v /dev/sdb > /tmp/bad-blocks.txt
-v:顯示進度。sudo e2fsck -l /tmp/bad-blocks.txt /dev/sdb
-l:讀取壞區清單檔案。umount /dev/sdb),否則 e2fsck 會拒絕或導致資料不一致。| 指令 | 參數 | 說明 |
|---|---|---|
| badblocks | -w | 寫入模式測試 (破壞性),新碟驗證可用 |
| badblocks | -n | 非破壞性讀寫測試 (保留資料) |
| badblocks | -s | 顯示進度條 |
| e2fsck | -c | 內建呼叫 badblocks 掃描並標記 (單指令完成) |
| e2fsck | -y | 自動回答 yes (配合 -c 批次處理) |
sudo e2fsck -c -y /dev/sdb
自動掃描壞區並更新檔案系統壞區表,無需手動中介檔案。
sudo smartctl -a /dev/sdb sudo smartctl -t long /dev/sdb # 啟動長時間自我測試
定期檢視 Reallocated_Sector_Ct (重新配置區塊計數) 與 Current_Pending_Sector (待測區塊),早期發現硬碟劣化。
善用 badblocks + e2fsck 或 e2fsck -c 定期體檢,守護資料安全。