incluindo arquivos em um diretório de link simbólico ao fazer backup com duplicidade

8

Estou fazendo o backup usando o Duplicity, ótima ferramenta. Não consigo incluir arquivos no backup que estão em um diretório que é um link simbólico.

Usando o seguinte:

duplicity <dup args> --include /var/www/**/current --exclude '**'

duplicidade só fará backup do link simbólico que eu tentei:

duplicity <dup args> --include /var/www/**/current/* --exclude '**'
# and
duplicity <dup args> --include /var/www/**/current/** --exclude '**'

Nem mesmo o backup do link simbólico é feito.

o diretório "atual" vincula-se a um diretório como: /var/www/host.com/de9f2c7fd25e1b3afad3e85a0bd17d9b100db4b3

Os arquivos contêm alguns arquivos estáticos de html e css. Eu quero que esses arquivos sejam copiados, independentemente de qual diretório sha'd "atual" aponte para.

Qualquer ajuda apreciada.

Roubar
fonte

Respostas:

12

A duplicidade não segue os links simbólicos por design . Isso ocorre porque, se você tentar restaurar a partir disso, ele restaurará os arquivos reais, e não um link simbólico! Não é um backup muito bom se não restaurar as coisas da maneira que eram antes. No entanto, ele deve poder fazer backup do link simbólico em si e, em seguida, você deve fazer um backup dos dados do link simbólico separadamente.

Darth Android
fonte
Sim, meu script só precisa ser um pouco mais inteligente sobre a maneira como decide o que será incluído. Obrigado pela informação.
Rob
1

Começando com o Duplicity 0.8, o --copy-linkssinalizador deve fazer exatamente o que você deseja: https://code.launchpad.net/~horgh/duplicity/copy-symlink-targets-721599

Isso nos permite desreferenciar e incluir o que os links simbólicos apontam em nosso backup.

Eu nomeei o argumento --copy-links. Esse é o nome que o rsync atribui a um sinalizador semelhante.

ziedaniel1
fonte