Directorio de archivo usando Zpaq

Directorio de archivo usando Zpaq

Estoy intentando configurar un sistema de respaldo para un servidor que logro mejorar con respecto al sistema anterior. estoy eligiendozpaqporque proporcionó una buena compresión con el sistema anterior lrzip -zy porque la página vinculada afirma ofrecer compresión incremental en la que solo se realiza una copia de seguridad de los datos modificados en cada nueva instancia de copia de seguridad.

Actualmente estoy usando el siguiente script para realizar la copia de seguridad (todos los datos se almacenan en el serverdirectorio):

cd server
zpaq pa ../backup.zpaq *

Este script produce un archivo que incluye todos los archivos que se encuentran directamente debajo del directorio del servidor, pero no escanea de forma recursiva todo el sistema de directorio. ¿Cómo puedo hacer que escanee todo el sistema de directorio? Cuando elimino la aopción o hago una copia de seguridad del serverdirectorio de su padre, el problema persiste.

Elpágina de manualque parece estar escrito por el autor de las herramientas dice:

Si un nombre es un directorio, incluye de forma recursiva todos los archivos y subdirectorios que contiene.

ubuntupágina de manualno hace mención de la recursividad. Instalé la herramienta desde el repositorio de Ubuntu usando apt-get install zpaq. Si el zpaq de Ubuntu es de alguna manera diferente del que vinculé al principio de esta pregunta, explique dónde se puede encontrar un paquete de Ubuntu para el zpaq vinculado.

Respuesta1

Parece que desea una solución que funcione zpaqcomo espera. Pero, si está utilizando bash, esta solución debería brindarle el resultado que desea. Tipo shopt -s globstar. Luego, ejecuta el comando que has estado usando, con un pequeño cambio:

zpaq pa ../backup.zpaq **

Con globstarel modo vigente, **se expande a una lista de entradas en el directorio actualárbol; es decir, el directorio actual y los siguientes. Me gusta *, ignorará.(archivos ocultos. Si quieres incluirlos, hazlo shopt -s dotglobtambién. (Puedes combinarlos en un solo comando:) shopt -s globstar dotglob.

Es más conveniente hacer esto en un script. Pero, si lo hace en su shell principal (interactivo), es posible que desee deshacer la shoptconfiguración. Puedes hacer esto con shopt -u globstar dotglob.

Nota: Si tiene demasiados archivos, esto podría fallar porque hay un límite en la longitud de la línea de comando, pero es bastante grande.

Respuesta2

Tuve el mismo problema en Ubuntu 14.04.3. La solución es no utilizar el paquete del repositorio sino instalar la fuente más reciente desdehttp://mattmahoney.net/dc/zpaq.html

Después de descargar el paquete, está en formato .zip y será necesario descomprimirlo usando unzip. A partir de ahí simplemente haz:

make
sudo make install

Ahora haciendo

zpaq a *archive* */dir*

incluirá el directorio y todos sus subdirectorios y archivos.

información relacionada