Comment vérifier / tester les archives .tar.bz?

12

J'ai utilisé tar avec sa fonction "--use-compress-prog = pbzip2" pour archiver mes fichiers puis les compresser avec pbzip2 pour obtenir une archive "* .tar.bz".

Ensuite, j'ai vérifié le fichier résultant avec le commutateur "-t" de pbzip2, et il a réussi le test. Cependant, à ma grande surprise, j'ai eu "fichier incomplet" ou d'autres erreurs d'intégrité lors de la tentative d'extraire l'archive!

Est-ce parce qu'il y a peut-être un problème avec le fichier tar, mais pas quand il a été compressé par pbzip2? Si oui, existe-t-il un moyen de vérifier le fichier tar lui-même? Sinon, quel autre problème pourrait-il s'agir? Existe-t-il également des moyens de récupérer des données à partir de fichiers tar contenant des erreurs?

Je crains d'avoir peut-être déjà perdu des données importantes grâce à ce processus ...

Le fait est que j'aimerais connaître une méthode pour tester l'intégrité de mes archives après leur création.

hpy
la source
2
Essayez de décompresser avec bunzip2 normal au lieu de pbzip2. Il existe également des programmes alternatifs pour le goudron tels que 'star' ou
Winrar
3
Veuillez publier les commandes que vous exécutez. Avez-vous réussi --use-compress-prog=pbzip2lors de l'extraction?
Mikel
Bonjour. J'aime juste savoir comment tester l'intégrité d'une archive tar une fois qu'elle a été créée et compressée via bzip2.
hpy

Réponses:

8

Premier test de compression bzip2, il devrait sortir OK.

bzip2 -tv FILE.tar.bz2

Décompressez ensuite le tarball, pour obtenir juste le tar.

bunzip2 FILE.tar.bz2

Enfin, vérifiez le fichier tar,

tar -tvfW FILE.tar

En vérité, le meilleur indicateur d'un problème est une extraction ayant échoué. J'espère que vous pourrez affiner la cause. Je dois également mentionner ..., j'ai eu la vérification d'échec d'archive occasionnelle, mais encore correctement extrait.

JM Becker
la source
2
Très heureux d'avoir pu vous orienter vers votre chemin!
JM Becker
malheureusement bzip2 -tv prend environ aussi longtemps que la décompression, je souhaite qu'il y ait un moyen de tester les fichiers éventuellement tronqués plus rapidement
1
Au lieu d'extraire le .tar.bz2fichier, vous pouvez également utiliser tarle -jcommutateur de tvfW, qui (dans une version suffisamment récente) peut directement lire les fichiers bzip2
Tobias Kienzler
@TobiasKienzler, vous avez tout à fait raison d'utiliser les options tar ensemble, c'est plus rapide, et c'était aussi ma première pensée ... vérifiez également la compression bzip2. Comme la combinaison des options vérifierait spécifiquement le tar, la décompression du bzip2, supposant donc que sa compression était déjà valide.
JM Becker
@TobiasKienzler, mais si c'est juste le goudron lui-même en question, l'étape supplémentaire n'est pas nécessaire. J'ai donc attribué la mention +1 à votre commentaire, car il s'agit normalement de l'action préférée.
JM Becker
-2

En plus des solutions ci-dessus, vous pouvez toujours utiliser des tuyaux avec du goudron:

pbzip2 -dc FILE.tar.bz2 | tar -tvfW -
BastyCDGS
la source
1
pourquoi le downvote? Veuillez expliquer ...
sekmo