
需要 shell 腳本/bash 指令驗證本機硬碟、USB 磁碟機的資料完整性,ETC, ...
就像著名的www.heise.de/download/h2testw;或至少在儲存庫中常見的東西。 (h2testw 將特定的資料字串一遍又一遍地寫入媒體上,然後再次讀取它以驗證其是否正確寫入並顯示寫入/讀取時間/速度。)
請不
dd if=/dev/random of=/dev/sdx bs=1k && dd if=/dev/sdx of=/dev/null bs=1k
因為它不會驗證所有內容是否都正確寫入。這只是測試設備讀寫是否成功。
到目前為止,我還不太滿意
badblocks -w -v /dev/sdx1
要么,因為它看起來相當慢,而且我不知道它到底寫了什麼,也不知道它是否考慮閃存介質上的磨損均衡。
還有一個名為F3的程式http://oss.digirati.com.br/f3/需要編譯。在 h2testw 之後設計的,這個概念聽起來很有趣,我只是寧願將它作為一個準備好的 bash 腳本。
答案1
這不是 bash,但badblocks
它是在 *nix 下測試硬碟的非常流行的工具,並且幾乎與dd
.
從手冊頁:
-w 使用寫入模式測試。使用此選項,badblocks 透過在裝置的每個區塊上寫入一些模式(0xaa、0x55、0xff、0x00)、讀取每個區塊並比較內容來掃描壞區塊。此選項不能與 -n 選項組合使用,因為它們是互斥的。
您也可以執行非破壞性(-n
)讀寫測試。