Obecně nemůžete opravdu obnovit celý disk, aniž byste jej celý přečetli/zapsali. fsck je nepravděpodobné, že poskytne to, co potřebujete - funguje se systémem souborů ne základní zařízení, proto většinou pouze skenuje metadata souborového systému (inody a další struktury souborového systému).
badblocks -n může být možnost dd if=X of=X . V každém případě budete pravděpodobně chtít použít velké bloky pro urychlení věcí (pro dd něco jako bs=16M , pro badblocks to by bylo -b 16777216 nebo -b $((1<<24)) v rozumných skořápkách). Pravděpodobně budete také chtít použít conv=fsync s dd .
Pokud jde o bezpečnost dd se stejným vstupním a výstupním zařízením - čte blok ze vstupu a zapisuje ho na výstup, takže by to mělo být bezpečné (takto jsem několikrát znovu zašifroval šifrovaný oddíl vytvořením smyčkových zařízení se stejným základním zařízením a odlišným hesla a poté dd 'ing from one to other) - alespoň pro některé typy fyzických médií:například u šindelových jednotek mi rozhodně není zřejmé, že jsou 100% odolné proti selhání.