Cuando necesitamos empaquetar varios archivos para transferirlos a otro servidor o hacer una
copia de seguridad puntual, tar es la herramienta habitual en sistemas Unix. A diferencia de
ZIP, tar separa el empaquetado de la compresión, aunque las dos operaciones se pueden
combinar en un solo comando.
Para crear un archivo tar con el contenido de un directorio:
tar -cvf backup.tar /home/usuario/
Las opciones son: -c (crear), -v (mostrar archivos procesados) y -f (nombre del
archivo final). Al usar rutas absolutas, tar muestra el aviso
Removing leading '/' from member names y guarda las rutas sin el / inicial. Es una
medida de seguridad: evita que al extraer el archivo se sobreescriban rutas absolutas del
sistema de destino.
Para añadir compresión gzip usamos -z:
tar -czvf backup.tar.gz /home/usuario/
O compresión bzip2 con -j (más lenta pero mejor ratio de compresión):
tar -cjvf backup.tar.bz2 /home/usuario/
Para ver el contenido de un archivo sin extraerlo:
tar -tvf backup.tar.gz
Para extraer en el directorio actual:
tar -xzvf backup.tar.gz
Y si queremos extraer en un directorio concreto, usamos -C:
tar -xzvf backup.tar.gz -C /tmp/restauracion/
tar y rsync son complementarios: tar
empaqueta y comprime en un solo archivo, mientras que rsync sincroniza directorios enteros
manteniendo la estructura. Para copias de seguridad remotas frecuentes, rsync suele ser más
eficiente porque solo transfiere los cambios.