Backup para dois discos rígidos externos com rsync?

2

Eu tive um disco rígido de 8 TB para fazer backup de minhas coisas e rsync'ing que foi fácil. Agora que meu estoque superou 8TB eu comprei outra unidade de 8TB.

A minha pergunta é: como posso dizer ao rsync para sincronizar apenas arquivos para a segunda unidade que não estão na primeira unidade?

Eu tentei criar uma lista de arquivos com

cd /q/backup; find -type f > /oldbackup.txt

que cria um arquivo parecido com

./a/Dir/file1
./a/Dir/file2
./b/elsewhere/thing
./...
...

e depois usá-lo como

rsync -rvu --delete --exclude-from=/oldbackup.txt /x/live/a /x/live/b /r/backup/

mas o rsync ainda copiou todos arquivos, aparentemente ignorando a lista de exclusão.

Como faço para que isso funcione?

Além disso, estou certo em assumir que, mesmo se funcionasse, deixaria muitos diretórios vazios no novo backup?

    
por Cobra_Fast 19.01.2017 / 19:28

1 resposta

2

Sim, o problema (pelo menos no meu caso) parecia ser duas coisas:

  • o ./ inicial precisava ser removido; O rsync espera que as exclusões sejam especificadas de maneira absoluta ou relativa ao diretório de origem.
  • Os nomes dos arquivos literais
  • precisavam ser ignorados na sintaxe da expressão regular para evitar que o rsync tentasse interpretá-los como uma expressão.

E sim, acabei com um monte de diretórios vazios, mas um script para excluir diretórios vazios é uma aventura para outra ocasião.

    
por 19.01.2017 / 22:51