通常、ディスク全体を読み書きしないと、ディスク全体を実際に更新することはできません。 fsck
必要なものを提供する可能性は低いです - ファイル システムで動作します 基礎となるデバイスではないため、ほとんどの場合、ファイル システムのメタ データ (inode およびその他のファイル システム構造) をスキャンするだけです。
badblocks -n
dd if=X of=X
のオプションかもしれません .いずれにせよ、おそらく大きなブロックを使用して速度を上げたいと思うでしょう (dd
の場合)。 bs=16M
のようなもの 、 badblocks
の場合 これは -b 16777216
となります 、または -b $((1<<24))
合理的なシェルで)。おそらく conv=fsync
も使いたくなるでしょう。 dd
で .
dd
の安全性について 同じ入力デバイスと出力デバイスを使用 - 入力からブロックを読み取り、それを出力に書き込むため、安全である必要があります (このような暗号化されたパーティションを何度か再暗号化しました。これには、同じ基になるデバイスと異なるループ デバイスを作成することによって)パスワードと dd
'ing) - 少なくとも一部のタイプの物理メディアの場合:たとえば、シングル ドライブの場合、100% 故障しないことは明らかではありません。