Empaquetamiento TAR, GZIP y PBZIP 2
Clase 35 de 43 • Curso de Programación en Bash Shell
Contenido del curso
Programación Shell Básica
Script Interactivos
Condicionales
Iteración
Archivos
Empaquetamiento
Funciones
Cierre del curso
Optimiza tus respaldos y la distribución de archivos en Linux con técnicas de empaquetamiento en Bash. Aquí verás, paso a paso, cómo usar tar, gzip y pbzip2 de forma complementaria para empaquetar varios scripts, comprimir de manera eficiente y aprovechar equipos multi-core cuando sea posible.
¿Qué es el empaquetamiento en Bash y cuáles herramientas usar?
El objetivo es reducir tamaño y agrupar archivos para moverlos entre directorios o por red de forma segura y rápida. Se trabajó con tres herramientas clave: tar, gzip y pbzip2.
¿Cuándo usar tar, gzip y pbzip2?
- tar: agrupa múltiples archivos en uno solo. No comprime por sí mismo. Permite flags -c, -v y -f.
- gzip: comprime un único archivo. Optimiza tamaño y elimina el archivo fuente tras comprimir.
- pbzip2: comprime un único archivo y soporta multi-core. Úsalo junto con tar para múltiples archivos.
¿Qué ventajas prácticas ofrece cada uno?
- tar: empaquetado simple de varios scripts *.sh en un .tar.
- gzip: genera .gz o .tar.gz con mejor relación de compresión.
- pbzip2: crea .bz2 con soporte de múltiples núcleos para acelerar la compresión.
¿Cómo empaquetar con tar y añadir gzip?
Se ejemplificó empaquetando todos los scripts de la carpeta de trabajo en un archivo .tar y luego comprimiéndolo con gzip para obtener .tar.gz.
¿Cómo crear un .tar con flags -c, -v y -f?
- -c: crear archivo.
- -v: modo detallado para ver el progreso.
- -f: especificar el nombre del archivo resultante.
# empaquetar varios scripts en un tar tar -cvf shellcourse.tar *.sh
¿Cómo comprimir el .tar con gzip y qué pasa con el original?
- gzip comprime un único archivo.
- al terminar, elimina el archivo original y deja la versión comprimida.
# comprimir el tar y generar .tar.gz (se elimina shellcourse.tar) gzip shellcourse.tar # resultado: shellcourse.tar.gz
¿Cómo ajustar el ratio de compresión con gzip?
- gzip permite nivel de 1 a 9.
- 9 intenta la máxima compresión.
# comprimir un único archivo con mayor compresión gzip -9 archivo.sh # resultado: archivo.sh.gz y se elimina archivo.sh
¿Cómo comprimir con pbzip2 y cuándo instalarlo?
pbzip2 destaca por aprovechar procesadores multi-core. No siempre viene instalado por defecto en la distro, por lo que puede requerir instalación previa. Al igual que gzip, opera sobre un único archivo, por lo que se complementa con tar para agrupar varios scripts.
¿Cómo instalar pbzip2 si no está disponible?
sudo apt-get install pbzip2
¿Cómo usar pbzip2 con un archivo .tar?
- primero empaqueta varios archivos con tar.
- luego comprime el .tar con pbzip2.
# 1) empaquetar varios scripts tar -cvf shellcourse.tar *.sh # 2) comprimir con pbzip2 (se elimina shellcourse.tar) pbzip2 -f shellcourse.tar # resultado: shellcourse.tar.bz2
¿Cómo combinar tar y pbzip2 para un directorio completo?
- tar agrupa los archivos.
- pbzip2 comprime el empaquetado final y produce un .tar.bz2, por ejemplo: shellcurso2.tar.bz2.
Claves prácticas que se demostraron:
- tar + gzip: estándar para generar .tar.gz cuando se requiere buena compresión y compatibilidad.
- tar + pbzip2: útil cuando el equipo tiene multi-core y se busca acelerar el proceso generando .tar.bz2.
- limpieza: tras pruebas, se eliminaron archivos previos con rm para repetir el flujo con claridad.
Si tienes dudas o quieres compartir tu flujo de empaquetamiento en Bash, escribe en comentarios y cuéntame qué combinación te funciona mejor en tus respaldos.