1. 程式人生 > >【每天一個Linux命令】B-badblocks

【每天一個Linux命令】B-badblocks

badblocks命令用於檢查磁碟裝置中損壞的區塊。

執行指令時須指定所要檢查的磁碟裝置,及此裝置的磁碟區塊數。

語法

badblocks [-svw][-b <區塊大小>][-o <輸出檔案>][磁碟裝置][磁碟區塊數][啟始區塊]

引數說明:

-b<區塊大小> 指定磁碟的區塊大小,單位為位元組。
-o<輸出檔案> 將檢查的結果寫入指定的輸出檔案。
-s 在檢查時顯示進度。
-v 執行時顯示詳細的資訊。
-w 在檢查時,執行寫入測試。
[磁碟裝置] 指定要檢查的磁碟裝置。
[磁碟區塊數] 指定磁碟裝置的區塊總數。
[啟始區塊] 指定要從哪個區塊開始檢查。

例項

檢視系統當前硬碟資訊。

# fdisk -l

例如,顯示資訊如下:

Disk /dev/sda: 298.9 GB, 298999349248 bytes
255 heads, 63 sectors/track, 36351 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

  Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1         262     2104483+  82  Linux swap / Solaris
/dev/sda2   *         263
32898 262148670 83 Linux /dev/sda3 32899 36351 27736222+ 83 Linux Disk /dev/sdb: 42.9 GB, 42949672960 bytes 64 heads, 32 sectors/track, 40960 cylinders Units = cylinders of 2048 * 512 = 1048576 bytes

通過命令掃描硬碟。


# badblocks -s -v /dev/sdnx

其中n表示硬碟裝置名,x表示硬碟對應的分割槽號。例如需要檢查”/dev/sda2”,執行命令如下:

# badblocks -s -v /dev/sda2
Checking blocks 0 to 30681000
Checking for bad blocks (read-only test): 306809600674112/ 306810000000
30680964
30680965
30680966
30680967
30680968
30680969
30680970
30680971
30680972
30680973
...
done
Pass completed, 37 bad blocks found.其中,“37 bad blocks found”表示硬碟存在37個壞塊。