Umumnya Anda tidak dapat menyegarkan seluruh disk tanpa membaca/menulis semuanya. fsck
sepertinya tidak memberikan apa yang Anda butuhkan - ini berfungsi dengan sistem file bukan perangkat yang mendasarinya sehingga sebagian besar hanya memindai data meta sistem file (inodes dan struktur sistem file lainnya).
badblocks -n
mungkin menjadi opsi untuk dd if=X of=X
. Bagaimanapun Anda mungkin ingin menggunakan blok besar untuk mempercepat (untuk dd
sesuatu seperti bs=16M
, untuk badblocks
ini akan membaca -b 16777216
, atau -b $((1<<24))
dalam cangkang yang wajar). Anda mungkin juga ingin menggunakan conv=fsync
dengan dd
.
Adapun keamanan dd
dengan perangkat input dan output yang sama - ia membaca blok dari input dan menulisnya ke output, jadi seharusnya aman (saya telah mengenkripsi ulang partisi terenkripsi seperti ini pada beberapa kesempatan, dengan membuat perangkat loop dengan perangkat dasar yang sama dan berbeda kata sandi lalu dd
'ing dari satu ke yang lain) - setidaknya untuk beberapa jenis media fisik:misalnya dengan drive shingled jelas tidak jelas bagi saya, bahwa itu 100% tahan kegagalan.