硬盤是比較容易壞掉的設備,使用一段時間後可能會出現壞道等物理故障。當硬盤出現壞道後,若不及時更換或者進行技術上的處理,磁盤的壞道就會越來越多,並會造成頻繁死機和數據丟失。最好的處理方法是更換新的磁盤。在臨時的情況下,我們應及時屏蔽壞道部分的扇區,不要觸動它們。
badblocks是一個檢查磁盤是否有壞道的工具,可以以讀的方式檢查,也可以以寫的方式檢查。
這裡,我使用
badblocks -v /dev/sda
檢查是否有壞道,檢查結果未出錯
badblocks的參數選項
-b blocksize
指定磁盤的區塊大小,單位為字節,默認值為“block 4K ”(4K/block)
-c blocksize
每個區塊檢查的次數,默認是16次
-f
強制在一個已經掛載的設備上執行讀寫或非破壞性的寫測試操作
(我們建議先umount設備,然後再進行壞道檢測。僅當/etc/mtab出現誤報設備掛載錯誤的時候可以使用該選項)
-i file
跳過已經顯示在file文件中的壞道,而不進行檢測(可以避免重復檢測)
-o file
把檢測結果輸出到file文件
-p number
重復搜尋設備,直到在指定通過次數內都沒有找到新的壞塊位置,默認次數為0
-s
在檢查時顯示進度
-t pattern
通過按指定的模式讀寫來檢測區塊。你可以指定一個0到ULONG_MAX-1的十進制正值,或使用random(隨機)。
如果你指定多個模式,badblocks將使用第一個模式檢測所有的區塊,然後再使用下一個模式檢測所有的區塊。
Read-only方式僅接受一個模式,它不能接受random模式的。
-v
執行時顯示詳細的信息
-w
對每個區塊都先寫入,然後再從它讀取信息
[device]
指定要檢查的磁盤裝置。
[last-block]
指定磁盤裝置的區塊總數。
[start-block]
指定要從哪個區塊開始檢查