#1 Le 26/10/2006, à 23:27
- kvb
Pb archive tar.bz2 corrompue [résolu]
bonjour
j'ai profité de edgy pour faire du ménage sur mon disque dur (j'avais des bugs a force
de triturer dapper)
bref auparavant j'ai pris soin de faire une archive de mes repertoires les plus interressants
et d'en faire une archive en .tar.bz2
archive que je nomme home.tar.bz2 (elle fait environ 3,5 Go et elle contient toutes mes données
perso)
je met cet archive soigneusement sur mon 2eme pc via ftp
pas de pb
je formate mon premier pc
installe edgy (bon ok pas de pb)
je rappatrie mon image toujours par ftp
pas de pb
mais au moment de la décompresser, j'ai un message d'erreur me disant que mon fichier est corrompu
j'ai essayé un 2 transfert mais pareil il n'y a rien a faire toujours le meme message
message qui me dit qu'il y peut-etre une solution avec bzip2recover
mais là ce n'est plus du tout de mon domaine !
pour ceux qui maitrise un peu mieux que moi voici l'extrait concernant bzip2recover dans le man
RECOVERING DATA FROM DAMAGED FILES
bzip2 compresses files in blocks, usually 900kbytes long. Each block
is handled independently. If a media or transmission error causes a
multi-block .bz2 file to become damaged, it may be possible to recover
data from the undamaged blocks in the file.
The compressed representation of each block is delimited by a 48-bit
pattern, which makes it possible to find the block boundaries with rea‐
sonable certainty. Each block also carries its own 32-bit CRC, so dam‐
aged blocks can be distinguished from undamaged ones.
bzip2recover is a simple program whose purpose is to search for blocks
in .bz2 files, and write each block out into its own .bz2 file. You
can then use bzip2 -t to test the integrity of the resulting files, and
decompress those which are undamaged.
bzip2recover takes a single argument, the name of the damaged file, and
writes a number of files "rec00001file.bz2", "rec00002file.bz2", etc,
containing the extracted blocks. The output filenames are
designed so that the use of wildcards in subsequent processing -- for
example, "bzip2 -dc rec*file.bz2 > recovered_data" -- processes the
files in the correct order.
bzip2recover should be of most use dealing with large .bz2 files, as
these will contain many blocks. It is clearly futile to use it on dam‐
aged single-block files, since a damaged block cannot be recov‐
ered. If you wish to minimise any potential data loss through media
or transmission errors, you might consider compressing with a smaller
block size.
alors là je tatonne j'ai fait
bzip2recover home.tar.bz2
et suite à ca il m'a crée environ 6500 fichiers tous .tar.bz2
(des petits fichiers en poids)
évidemment aucun de ces fichiers ne peut se decompresser
alors en suivant un peu man bzip2recover
j'ai tapé
bzip2 -dc rec*file.bz2 > recovered_data
rec*.bz2 étant mes petits fichiers
mais il me dit que cela contient "trop d'arguments"
alors en triant un peu pour les faire par mille (rec01*.bz2) puis rec02 etc ...
ca fonctionne j'obtiens 7 recomprant le reste
hélàs j'ai une erreur sur le fichier 3670 je crois
bref je suis complétement perdu je ne sais plus quoi faire !
Ces données représentent des heures et des heures de travaillent !
Je suis complétement bloqué
Dernière modification par kvb (Le 27/10/2006, à 16:22)
Hors ligne
#2 Le 27/10/2006, à 00:37
- nikko
Re : Pb archive tar.bz2 corrompue [résolu]
Bonsoir,
j'ai trouvé deux cas où la personne se retrouvait dans ton cas, les données sont récupérées jusqu'au premier rec*.bz2 corrompu:
http://lists.debian.org/debian-user/2006/07/msg02636.html
http://oss.bestsolution.at/bash/repair_tar_archives.html.en
Dans le premier cas on conseille à la personne d'utiliser bvi pour effacer la partie corrompue, si j'ai bien compris. Mais je ne vois pas trop comment faire.
Le deuxième cas concatène les fichiers après celui corrompu en un fichier tar, et recherche le début correct de ce tar avec un script perl téléchargeable. Par contre dans cette partie les fichiers rec* n'ont plus d'extensions, je ne sais pas si il y est parvenu avec un simple bunzip2.
J'espère que ces pistes t'aideront.
Nicolas
Hors ligne
#3 Le 27/10/2006, à 14:52
- kvb
Re : Pb archive tar.bz2 corrompue [résolu]
Merci infiniment nikko !
J'ai suivit le deuxieme lien et j'ai pu retrouvé la deuxieme moitié de mes donnés
(en avait avant ce lien l'archive decompressait grosso modo la première moitié, mais mes données les plus importantes étaient dans la deuxieme moitié)
et comme j'avais une archive il y a quinze jours (qui se fait automatiquement avec backup manager)
j'ai pu retrouver l'ensemble de mes données (mes 15 derniers jours de travail était dans la deuxieme partie)
Merci mille fois !
PS: j'ai essayé une version démo sous windows de tar advanced repair (license à 150 euros) et bien ce logiciel commercial me permettait de retrouver que la première partie. Je trouve que c'est un peu honteux de payer un tel prix pour un logiciel qui ne fait pas mieux que le gestionnaire d'archive de gnome.
Hors ligne
#4 Le 27/10/2006, à 14:58
- valeriane
Re : Pb archive tar.bz2 corrompue [résolu]
Bonjour kvb.
Je suis peut-être facilement choquée, mais est-ce que tu pourrais éditer le titre pour qu'il reflète le pb que tu as eu (plutôt que les frustrations dûes à ce pb). Remarque bien que je comprends que ça a dû te faire flipper, mais bon restons polis...
Edit : Et puis peux-tu aussi ajouter un petit résolu dans le titre en même temps ? Merci.
Dernière modification par valeriane (Le 27/10/2006, à 15:00)
Hors ligne
#5 Le 27/10/2006, à 22:31
- nikko
Re : Pb archive tar.bz2 corrompue [résolu]
Je suis content pour toi.
Nicolas
Hors ligne