TITOLO Recuperare archivi corrotti
OGGETTO Articolo tratto dal sito http://gismondo.wordpress.com

Archivi tar.bz2

Innanzitutto suddividiamo in blocchi l’archivio in questione attraverso il comando “bzip2recover” seguito dal nome dell’archivio. Per ogni blocco verrà creato un file .bz2 separato, con una numerazione progressiva del tipo “rec00001doc.tar.bz2″. Ora è necessario controllare i blocchi per scovare quelli corrotti. li possiamo passare come parametri del comando “bzip2 -t” oppure credo sia possibile eseguire un ciclo FOR come sotto:

for I in rec*.bz2; do bzip2 -tvf

Giunti sin qui, segniamo quelli indicati come danneggiati (le cui righe contengono la parola CRC) e cancelliamoli con “rm“. Adesso creiamo un nuovo archivio con i soli blocchi integri : “bzip2 -dc rec*.bz2 > nuovo.tar” e tramite cpio recuperiamo il maggior numero di informazioni dal nuovo file compresso, ignorando i “buchi” causati dall’assenza dei blocchi danneggiati: “cpio -F nuovo.tar -i -v“.

Archivi .gz e .tgz

Utilizzando gzrecover possiamo eliminare le parti danneggiate dagli archivi di tipo gzip. Basta lanciare “gzrecover corrotto.tar.gz“, quindi utilizziamo cpio per estrarre i dati anocra integri: “cpio -F corrotto.tar.recovered -i -v“.