Dividí una carpeta enorme:
$ tar cvpf - somedir | split -b 50000m
... y luego transferí los archivos divididos a otro servidor y los fusioné:
$ cat x* > somedir.tar.gz
pero cuando intenté extraer el archivo, muestra errores:
$ tar xvf somedir.tar.gz
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Archive contains obsolescent base-64 headers
tar: Error exit delayed from previous errors
¿Cómo puedo transferirlo / extraerlo para que vuelva a ser carpeta? Gracias
No nombre su tarball concatenado
somefile.tar.gz
, ya que no está comprimido. Para evitar latar
detección automática de compresión confusa , realmente necesita nombrarlasomefile.tar
.Citando del
tar
manual de información:Entonces, lo que probablemente esté sucediendo es que su tarball no comienza con ninguna de las firmas de los métodos de compresión conocidos, por lo
tar
que recurre al uso del nombre de archivo para determinar la compresión. En su caso, el nombre termina con.gz
, por lo que supone unagzip
compresión. Esto lleva a los errores que está recibiendo, ya que el archivo no está realmente comprimido.tl; dr: Nombra el tarball con el
.tar
sufijo, no.tar.gz
.fuente
tar
no puedo determinar el formato en función de las firmas [sic] en el encabezado del archivo, generalmente he encontrado que el archivo está dañado; nombrar con diferentes extensiones nunca ha ayudado realmente. Obtener el archivo de formato correcto siempre ha ayudado.