Diretório de arquivamento usando Zpaq

Diretório de arquivamento usando Zpaq

Estou tentando configurar um sistema de backup para um servidor que consigo melhorar no sistema antigo. eu estou escolhendozpaqporque forneceu uma boa compactação com o sistema antigo lrzip -ze porque a página vinculada afirma oferecer compactação incremental na qual apenas os dados alterados são copiados em cada nova instância de backup.

Atualmente estou usando o seguinte script para fazer o backup (todos os dados são armazenados no serverdiretório):

cd server
zpaq pa ../backup.zpaq *

Este script produz um arquivo que inclui todos os arquivos que estão diretamente abaixo do diretório do servidor, mas não verifica recursivamente todo o sistema de diretórios. Como posso fazer com que ele verifique todo o sistema de diretórios? Quando removo a aopção ou faço backup do serverdiretório pai, o problema ainda ocorre.

Opágina de manualque parece ter sido escrito pelo autor das ferramentas diz:

Se um nome for um diretório, ele incluirá recursivamente todos os arquivos e subdiretórios contidos nele.

Ubuntupágina de manualnão faz menção à recursão. Eu instalei a ferramenta do repositório do Ubuntu usando apt-get install zpaq. Se o zpaq do Ubuntu for de alguma forma diferente daquele que vinculei no início desta pergunta, explique onde um pacote Ubuntu para o zpaq vinculado pode ser encontrado.

Responder1

Parece que você deseja uma solução que funcione zpaqda maneira que você espera. Mas, se você estiver usando bash, esta solução alternativa deverá fornecer o resultado desejado. Tipo shopt -s globstar. Em seguida, execute o comando que você está usando, com uma pequena alteração:

zpaq pa ../backup.zpaq **

Com globstaro modo em vigor, **expande para uma lista de entradas no diretório atualárvore; ou seja, o diretório atual e abaixo. Tipo *, ele vai ignorar.arquivos (ocultos). Se você quiser incluí-los, faça você shopt -s dotglobtambém. (Você pode combiná-los em um comando: shopt -s globstar dotglob.)

É mais conveniente fazer isso em um script. Mas, se você fizer isso em seu shell principal (interativo), você pode querer desfazer as shoptconfigurações. Você pode fazer isso com shopt -u globstar dotglob.

Nota: Se você tiver muitos arquivos, isso poderá falhar porque há um limite para o comprimento de uma linha de comando — mas ela é muito grande.

Responder2

Eu tive o mesmo problema no Ubuntu 14.04.3. A solução é não usar o pacote do repositório, mas sim instalar a fonte mais recente dohttp://mattmahoney.net/dc/zpaq.html

Depois de baixar o pacote ele estará no formato .zip e precisará ser descompactado usando unzip. A partir daí basta fazer:

make
sudo make install

Agora fazendo

zpaq a *archive* */dir*

incluirá o diretório e todos os seus subdiretórios e arquivos.

informação relacionada