Cómo Untar un Archivo en Linux: Guía avanzada para usuarios avanzados
Extraer archivos .tar, .tar.gz, .tar.bz2 y otros archivos tarball es una habilidad fundamental en la administración de sistemas Linux y en los flujos de trabajo DevOps. Aunque tar puede parecer sencillo a primera vista, los usuarios avanzados pueden aprovechar las banderas y técnicas avanzadas para el rendimiento, secuencias de comandos, y el control de grano fino.
Esta guía le guiará a través de todo, desde la descompresión básica hasta la extracción condicional, la evaluación comparativa y el manejo de archivos dañados.
¿Qué es un archivo .tar?
Un archivo .tar (abreviatura de Tape Archive) es un archivo consolidado que agrupa varios archivos en uno solo, conservando la estructura de los archivos, los permisos y las marcas de tiempo. No comprime por defecto. La compresión se realiza a menudo con formatos como .gz, .bz2, .xz o .zstd.
Comandos básicos de extracción
1. Extraer un archivo .tar (sin compresión)
2. Extraer un archivo .tar.gz o .tgz
3. Extraer un archivo .tar.bz2
4. Extraer un archivo .tar.xz
5. Extraer un archivo .tar.zst (Zstandard)
Banderas avanzadas comunes
Indicador | Función |
---|---|
-x | Extraer |
-f | Utilizar fichero de archivo |
-v | Salida detallada (lista de archivos) |
-C | Cambiar al directorio antes de la extracción |
–strip-components=N | Elimina los N elementos iniciales de la ruta |
–wildcards | Activar el filtrado de comodines |
–no-same-owner | Evitar el cambio de propietario de los archivos en la extracción |
–overwrite | Forzar la sobreescritura sin avisos |
–exclude=PATTERN | Excluir los archivos que coincidan con el patrón |
Ejemplos avanzados
Extraer a un directorio específico
Eliminar la carpeta de nivel superior (estructura plana)
Extraer archivos específicos
Extraer patrón coincidente utilizando comodines
Extraer excluyendo algunas rutas
Tiempo de extracción de referencia
Casos extremos
? El archivo está dañado
Utilice tar con –ignore-zeros para omitir los bloques corruptos:
? Inspeccione el archivo antes de extraerlo
Comprobar integridad (para tarballs comprimidos con gzip)
Consejos de scripting para administradores de sistemas
Utilice tar en los scripts de copia de seguridad/restauración:
O automáticamente untar e instalar:
#!/bin/bash
SRC="$1"
DEST="$2"
mkdir -p "$DEST"
tar -xzf "$SRC" -C "$DEST" --strip-components=1
Los archivos tar son fundamentales para el empaquetado, las copias de seguridad y el despliegue de Linux. Al dominar las banderas de extracción e integrar tar en scripts, puede manipular archivos con precisión quirúrgica: extraer sólo lo que se necesita, preservar la propiedad, aplanar rutas o automatizar flujos de trabajo completos.
Referencia rápida
# Basic
tar -xf file.tar # No compression
tar -xzf file.tar.gz # Gzip
tar -xjf file.tar.bz2 # Bzip2
tar -xJf file.tar.xz # XZ
tar --use-compress-program=unzstd -xf file.tar.zst # Zstandard
# Common options
tar -xvf archive.tar # Verbose
tar -C /target/dir -xf file.tar.gz # Extract to folder
tar --strip-components=1 -xf file.tar.gz # Remove top-level dir