Cómo comprimir archivos en Linux usando el comando tar
El comando tar funciona básicamente para agrupar todos los archivos y directorios en un solo archivo sin alterar su estructura. Este enfoque simplifica la organización, la creación de copias de seguridad y la transferencia de archivos. Una vez empaquetados, estos archivos se pueden comprimir utilizando varios métodos como gzip, bzip2 o xz, lo que ayuda a optimizar el almacenamiento y mejorar la velocidad de transferencia.
Las distribuciones modernas de Linux en servidores Linux VPS incluyen versiones actualizadas de tar, lo que permite una integración fluida con herramientas de compresión como gzip para una gestión de datos más eficiente. Esto convierte a tar en un recurso valioso para los usuarios que administran grandes conjuntos de datos, ya que admite tanto la consolidación de archivos como la compresión en un solo comando.
Gracias a su flexibilidad, tar se utiliza ampliamente en diferentes entornos Linux. No solo facilita la creación de copias de seguridad, sino que también agiliza la distribución de software y la gestión de datos importantes. Con una amplia gama de opciones disponibles, los usuarios pueden personalizar los archivos según sus necesidades, ya sea excluyendo directorios o archivos específicos, conservando permisos o protegiendo datos sensibles.
Para cualquier persona que trabaje con grandes volúmenes de información o requisitos de almacenamiento complejos, aprender a fondo el comando tar es fundamental. Todo esto lo convierte en una utilidad importante que los usuarios de Linux deben conocer.
Y si estás buscando una solución fiable, de alto rendimiento y económica para tus flujos de trabajo, Hostman ofrece opciones de Linux VPS Hosting, incluidas Debian VPS, Ubuntu VPS y VPS CentOS.
Comprender la sintaxis de tar Copiar enlace
El comando tar se divide fundamentalmente en cuatro partes distintas:
tar-flags: Opciones utilizadas para ejecutar una acción específica- Nombre del archivo
- Ruta al archivo o directorio deseado
Se escribiría de la siguiente manera:
tar -flags (nombre_del_archivo) (ruta)Archivar archivos y directorios Copiar enlace
tar utilizado con la opción -cvf permite archivar archivos y directorios.
Para un archivo:
tar -cvf collectionX.tar snake.txt
Para un directorio:
tar -cvf DRcollection.tar newDir/
Esto archivará el archivo snake.txt en collectionX.tar y el directorio newDir en DRcollection.tar.
Si el objetivo es archivar varios archivos y directorios, utiliza los siguientes comandos.
Para varios archivos:
tar -cvf collectionX.tar snake.txt panther.txt Tiger.txt
Para varios directorios:
tar -cvf DRcollection.tar newDir1/ newDir2/ newDir3/
Comprimir archivos y directorios Copiar enlace
tar utilizado con la opción -czvf permite comprimir archivos y directorios.
Para un archivo:
tar -czvf collectionX.tar.gz snake.txt
Para un directorio:
tar -czvf DRcollection.tar.gz newDir/
-carchiva archivos y directorios-zaplica compresióngzip-ves modo detallado y muestra el proceso de compresión-fpermite asignar un nombre al archivo que se va a comprimir
Añade .gz después de tar si deseas comprimir archivos y directorios.
Para varios archivos:
tar -cvf collectionX.tar.gz snake.txt panther.txt Tiger.txt 
Para varios directorios:
tar -cvf DRcollection.tar.gz newDir1/ newDir2/ newDir3/
.bz2 se utiliza con tar y junto con la opción -cjf permite archivar y comprimir archivos y directorios. -j aplica compresión bzip2
Para un archivo con bz2:
tar -cjf collectionX.tar.bz2 snake.txt
Para un directorio con bz2:
tar -cjf DRcollection.tar.bz2 newDir/
.xz se utiliza con .tar y junto con la opción -cJf permite archivar y comprimir archivos y directorios. -J significa compresión con xz.
Para un archivo con xz:
tar -cJf DRcollection.tar.xz file1.txt
Para un directorio con xz:
tar -cJf collectionX.tar.xz newDir/
Extraer archivos .tar comprimidos Copiar enlace
arch1.tar.gz, arch1.tar.bz2 y arch1.tar.xz son tres archivos comprimidos.
Extraer .tar.gz:
tar -xvzf arch1.tar.gz-x significa extracción de archivos.
Extraer .tar.bz2:
tar -xvjf arch1.tar.bz2Extraer .tar.xz:
tar -xvJf arch1.tar.xz
Extraer archivos específicos usando comodines
Si necesitas extraer solo un tipo específico de archivo de un archivo, haz lo siguiente:
tar -xvf arch1.tar --wildcards '*.sh'
Esto devolverá solo los archivos con la extensión .sh.
--wildcards ayuda a buscar tipos de archivo específicos y permite la coincidencia de patrones. *.sh garantiza que solo se extraigan archivos del tipo .sh
Extraer en un directorio específico
Si necesitas extraer el archivo completo en un directorio específico, haz lo siguiente:
tar -xvf arch1.tar -C ./destinationDir/pathDir/
-C cambia al directorio especificado. -xvf ayuda a extraer el archivo en esa ubicación.
Gestionar archivos .tar Copiar enlace
Ver el contenido sin extraer
Si necesitas saber qué hay dentro de un archivo sin descomprimirlo, utiliza comandos como estos:
tar -tzf arch1.tar.gz
tar -tjf arch1.tar.bz2
tar -tJf arch1.tar.xz-t proporciona detalles sobre el contenido de los archivos comprimidos sin extraerlos.

Añadir archivos a un archivo existente
Para añadir un archivo nuevo a un archivo:
tar -rvf arch1.tar new.sh
new.sh se añadirá a arch1.tar.
Eliminar un archivo específico de un archivo
Si necesitas eliminar un archivo de un archivo sin extraerlo, se puede hacer usando --delete.
tar --delete -f arch1.tar new.sh Esto eliminará el archivo new.sh del archivo arch1.tar sin extraerlo.
Ten en cuenta que --delete no funciona con archivos comprimidos, solo con archivos.
Comparar el contenido del archivo con el directorio actual Copiar enlace
Si necesitas examinar el contenido de tu directorio de trabajo actual y compararlo con el archivo, utiliza:
tar --diff -f arch1.tar--diff ayuda a comparar el contenido de arch1.tar con el contenido disponible en el directorio de trabajo actual.
Solución de problemas comunes de .tar Copiar enlace
- "tar: Removing leading '/' from member names"
Esta advertencia aparece cuando se utilizan rutas absolutas en un archivo:
tar -cvf arch1.tar /home/user/file.txtSolución: Usa -p para conservar las rutas absolutas.
tar -cvpf arch1.tar /home/user/file.txt- "tar: Error opening archive: Unrecognized archive format"
Este error ocurre cuando el archivo está dañado o se utiliza el comando de descompresión incorrecto.
Solución: Verifica el tipo de archivo:
file arch1.tar.gzUsa el comando de descompresión correcto:
tar -xvzf arch1.tar.gz # For .tar.gz
tar -xvjf arch1.tar.bz2 # For .tar.bz2
tar -xvJf arch1.tar.xz # For .tar.xzSi se sospecha corrupción, comprueba la integridad:
gzip -t arch1.tar.gz
bzip2 -tv arch1.tar.bz2Conclusión Copiar enlace
La utilidad tar sirve como una herramienta importante para el archivado, la compresión y la extracción. Proporciona eficiencia, lo que la convierte en un componente crucial de la gestión del almacenamiento en Linux. Con una variedad de configuraciones y ajustes, tar funciona como una solución permanente que se adapta a diversos escenarios de uso. Opciones como -czvf y -xvzf determinan la forma en que los archivos se almacenan y se recuperan, otorgando a los usuarios un control total sobre la compresión de datos.
Además, tar es compatible con múltiples herramientas de compresión como gzip, bzip2 y xz, lo que permite a los usuarios optimizar tanto la velocidad como la relación de compresión según sus necesidades específicas.
Para profesionales de TI, desarrolladores y usuarios de Linux, aprender todo sobre tar es invaluable. Ya sea para gestionar copias de seguridad, distribuir datos de forma eficaz u optimizar el almacenamiento, tar es una de las herramientas de archivado más influyentes. Al seleccionar las configuraciones y comandos adecuados, los usuarios pueden mejorar significativamente su flujo de trabajo, automatizar tareas y gestionar grandes conjuntos de datos de manera eficiente.