¿Cómo verificar / probar los archivos .tar.bz?

12

He estado usando tar con su función "--use-compress-prog = pbzip2" para archivar mis archivos y luego comprimirlos con pbzip2 para obtener un archivo "* .tar.bz".

Luego verifiqué el archivo resultante con el modificador "-t" de pbzip2, y pasó la prueba. Sin embargo, para gran sorpresa, ¡obtuve "archivo incompleto" u otros errores de integridad al intentar extraer el archivo!

¿Es porque puede haber algo mal con el archivo tar, pero no cuando fue comprimido por pbzip2? Si es así, ¿hay alguna manera de verificar el archivo tar en sí? Si no, ¿qué otro problema podría ser este? Además, ¿hay formas de recuperar datos de archivos tar con errores?

Me temo que ya podría haber perdido algunos datos importantes a través de este proceso ...

El punto es que me gustaría conocer un método para probar la integridad de mis archivos después de que se crean.

hpy
fuente
2
Intente descomprimir con bunzip2 normal en lugar de pbzip2. También hay programas alternativos para alquitrán como 'star' o Winrar
golimar
3
Por favor, publique los comandos que está ejecutando. ¿Pasaste --use-compress-prog=pbzip2al hacer la extracción?
Mikel
Hola. Simplemente me gusta saber una forma de probar la integridad de un archivo tar después de que se haya creado y comprimir a través de bzip2.
hpy

Respuestas:

8

Primera prueba de compresión bzip2, debería salir OK.

bzip2 -tv FILE.tar.bz2

Luego descomprima el tarball, para obtener solo el alquitrán.

bunzip2 FILE.tar.bz2

Finalmente verifique el archivo tar,

tar -tvfW FILE.tar

A decir verdad, el mejor indicador de un problema es una extracción fallida. Esperemos que pueda reducir la causa. También debería mencionar ..., he tenido la verificación ocasional de fallas en el archivo, pero aún así extraer correctamente.

JM Becker
fuente
2
¡Me alegro mucho de que te haya podido señalar tu camino!
JM Becker
tristemente bzip2 tv lleva casi tan larga como la descompresión, me gustaría que hubiera una manera de prueba, posiblemente, archivos truncados más rápido
1
En lugar de extraer el .tar.bz2archivo, también se puede utilizar tar's -jinterruptor, además de tvfWque (en la versión suficientemente reciente) puede leer directamente los archivos bzip2
Tobias KIENZLER
@TobiasKienzler, tiene toda la razón sobre el uso conjunto de opciones de alquitrán, es más rápido y también fue mi primer pensamiento ... Pero teniendo en cuenta que el OP era algo 'poco convencional' con sus opciones de compresión, pensé que sería mejor verifique adicionalmente la compresión bzip2. Como la combinación de las opciones verificaría específicamente el alquitrán, descomprimiendo el bzip2, por lo tanto, suponiendo que su compresión ya era válida.
JM Becker
@TobiasKienzler, pero sí, si solo se trata del alquitrán en cuestión, el paso adicional es innecesario. Entonces hice +1 en tu comentario, ya que normalmente es la acción preferida.
JM Becker
-2

Además de las soluciones anteriores, siempre puede usar tuberías con alquitrán:

pbzip2 -dc FILE.tar.bz2 | tar -tvfW -
BastyCDGS
fuente
1
¿Por qué el voto negativo? Por favor explique ...
sekmo