Un ZIP es suficiente para intercambiar algunos documentos. Tan pronto como un directorio se vuelve pesado, es necesario limitar el tamaño del archivo o ocultar los nombres que contiene, el formato 7z se vuelve más interesante. Lo utilizaría para preparar un lote para transferir o archivar una copia de trabajo, no como única copia de seguridad.
El procedimiento consta de cuatro controles: identificar el comando instalado, crear el archivo sin borrar las fuentes, leer su contenido y luego probarlo antes de eliminar o enviar cualquier cosa.

Verificar el comando y preparar el directorio
En Debian o Ubuntu recientes, el paquete 7zip generalmente proporciona 7zz. Instancias más antiguas a veces utilizan p7zip-full y el comando 7z. Comienza por mirar lo que está realmente disponible:
command -v 7zz || command -v 7z
7zz i 2>/dev/null || 7z i
Si ningún comando responde, instala el paquete adecuado para tu distribución. En Debian o Ubuntu, comienza por actualizar el índice y luego instala 7zip:
sudo apt update
sudo apt install 7zip
Trabaja desde el directorio padre del directorio a archivar. Evitarás un archivo lleno de rutas absolutas y verás de inmediato el volumen relevante. También controla el espacio disponible en el destino:
du -sh proyecto
df -h .
Crear un archivo 7z manteniendo los archivos fuente
Colócate en el directorio que contiene proyecto, y luego crea el archivo. El comando a agrega los archivos. No elimina el directorio fuente, a menos que le pidas explícitamente otro comportamiento.
7zz a respaldo-proyecto.7z proyecto/
Con el antiguo comando, simplemente reemplaza 7zz por 7z. El nivel predeterminado es adecuado en la mayoría de los casos. Para priorizar la velocidad en un servidor ya cargado, añade -mx=3. El nivel -mx=9 consume más CPU y no siempre reduce lo suficiente el tamaño como para justificar la espera.
Para dividir el archivo en volúmenes de 2 Gio destinados a un medio o envío limitado, utiliza -v2g:
7zz a -v2g respaldo-proyecto.7z proyecto/
Conserva todos los archivos .001, .002 y siguientes en el mismo directorio. El primer volumen sirve para la prueba y extracción.
Cifrar el archivo sin exponer la contraseña
Evita -pmotdepasse directamente en la línea de comando: Bash a menudo lo guarda en el historial y puede aparecer en la lista de procesos. Pasa -p sin valor para que 7-Zip pida el secreto de manera interactiva. Añade -mhe=on para cifrar también los nombres de archivos.
7zz a -p -mhe=on respaldo-proyecto-privado.7z proyecto/
Un archivo cifrado no reemplaza una copia de seguridad. Pierde la contraseña o la clave de almacenamiento, y el contenido se vuelve inutilizable. Para secretos empresariales, mantén una política de cifrado y recuperación distinta de este comando puntual.
Listar, probar y luego extraer en una copia
Antes de una transferencia o limpieza, primero controla el contenido. l lista los archivos, t verifica la integridad del archivo. Estos dos comandos evitan descubrir un archivo incompleto después de haber eliminado el directorio original.
7zz l respaldo-proyecto.7z
7zz t respaldo-proyecto.7z
Luego prueba una extracción en un directorio vacío. Mantén el directorio fuente intacto hasta esta etapa:
mkdir -p /tmp/prueba-7z
7zz x respaldo-proyecto.7z -o/tmp/prueba-7z
find /tmp/prueba-7z -maxdepth 2 -type f | head
Para una transferencia importante, también calcula un hash del archivo y compáralo después de la copia:
sha256sum respaldo-proyecto.7z > respaldo-proyecto.7z.sha256
sha256sum -c respaldo-proyecto.7z.sha256
El formato 7z sirve para empaquetar y comprimir. Para una copia de seguridad regular con restauración comprobada, también necesita un destino independiente y una rotación. Si solo necesitas crear o extraer un archivo estándar de Unix, la guía tar en Linux sigue siendo más adecuada para flujos habituales.