Cómo descomprimir archivos .tar.xz en Linux

En Tutoriales y Guías por

Los formatos de compresión y descompresión evolucionan al mismo tiempo que avanzan las tecnologías para cubrir las nuevas necesidades. Este es el caso del formato tar.xz o también conocido simplemente como .xz. Puede ser que te hayas descargado un archivo con esta extensión y en este tutorial te enseñamos cómo descomprimir archivos .tar.xz en Linux.

Cómo descomprimir archivos .tar.xz en Linux

Puede que lo primero que se te pase por la cabeza es extraer el .tar.gz con el comando tar -zxvf archivo.tar.xz, pero no funcionará y mostrará el siguiente error:

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now

Cómo descomprimir archivos .tar.xz en Linux.

En la gran mayoría de sistemas Linux actuales no es necesario instalar ninguna aplicación o librería para descomprimir archivos con extensión .xz, sólo tenemos que ejecutar el siguiente comando desde la consola:
tar -Jxvf archivo.tar.xz

Es muy importante fijarse en que he empleado la letra J en mayúscula, ya que si la pones en minúscula te dará error. En realidad, cuando descomprimimos no es necesario incluir este parámetro J, ya que la propia herramienta tar es capaz de identificar el tipo de archivo. Entonces, podemos emplear directamente el comando tar -xvf archivo.tar.xz y obtendremos los mismos resultados.

El parámetro J si es importante incluirlo cuando queremos comprimir con el formato tar.xz, siendo entonces el comando:
tar -Jcvf archivo.tar.xz documento.txt

¿Por qué usar tar.xz en lugar de tar.gz? ¿Es mejor tar.xz que Gzip (tar.gz)?

En este apartado me voy a extender un poco hablando de este formato .xz que parece que está cobrando especial importancia a la hora de compartir archivos en internet.

La respuesta corta, es que .xz es un formato de compresión que usa el algoritmo de compresión LZMA2 y que ofrece una mayor eficiencia que Gzip e incluso bzip2. Con .xz conseguimos tamaños de archivos menores, que son ideales para ahorrar ancho de banda en las transferencias a través de internet.

Si lo comparamos Gzip, el formato .xz tiene el inconveniente de que requiere mayor tiempo de compresión y descompresión, además de una mayor cantidad memoria, pero nos ofrece mayores ratios de compresión.

En cambio, si lo comparamos con bzip2 es más eficiente tanto en ratio de compresión como en tiempo de compresión, de ahí que muchos usuarios hayan adoptado ya el formato .xz como reemplazo de bzip2 (.bz2).

Para responder a la pregunta de si es mejor Gzip que xz o por qué usar uno u otro, tenemos que apuntar a su uso, ya que no podemos decir que uno sea mejor que el otro, sino que se usan en diferentes escenarios. Cuando vamos a trabajar en sistemas con memoria limitada, es preferible usar Gzip, ya que necesita menos recursos. Si lo que queremos es comprimir un archivo para compartir a través de internet o una red local y disponemos de memoria RAM suficiente, lo ideal es recurrir a .xz para conseguir un archivo de menor tamaño y acelerar la transferencia del mismo.

Por último, decir que muchas páginas web que facilitan software reconocido ya emplean este formato de compresión, por ejemplo cuando descargas el código fuente del Kernel Linux desde https://www.kernel.org/ y también me lo he encontrado en la descarga de Telegram portable para Linux.