arquivos Rsync-de problemas

1

Eu tenho um estranho comportamento de rsync. Preciso copiar todos os arquivos com menos de dois dias de uma pasta para outra.

Então eu misturei o rsync com o argumento files-from e localizei o utilitário em um script para fazer o que eu preciso fazer.

#!/bin/bash
cd /mnt/smb/online/
find . -mtime -2 -print > /tmp/rsynclist
rsync -av --ignore-existing --size-only --files-from=/tmp/rsynclist /mnt/smb/online /mnt/backup/

File / tmp / rsynclist está ok, e tem apenas arquivos que eu preciso (todos os arquivos com menos de 2 dias). Mas o rsync parece ignorar o argumento 'files-from' e continuar copiando todos os arquivos da fonte antiga.

Onde eu estou confundindo?

    
por Jaels 21.06.2017 / 10:10

2 respostas

3

O problema não está no comando rsync , mas no seu find . Ao testar seu script, notei que também há diretórios no meu arquivo rsynclist que foram alterados, resultando em cópias rsync de todos os arquivos nesses diretórios.

Para evitar isso, adicione -type f ao seu comando find .

#!/bin/bash
cd /mnt/smb/online/
find . -type f -mtime -2 -print > /tmp/rsynclist
rsync -av --ignore-existing --size-only --files-from=/tmp/rsynclist /mnt/smb/online /mnt/backup/

Depois, apenas os caminhos para os arquivos devem estar na lista, dando o resultado pretendido.

    
por 21.06.2017 / 10:25
-2

A sintaxe do comando rsync é:

rsync [option] source[x] destination

Você colocou 2 fontes:

  • / tmp / rsynclist ; o caminho certo
  • / mnt / smb / online ; isso está errado e você deve excluí-lo

tente com:

rsync -av --ignore-existing --size-only --files-from=/tmp/rsynclist  /mnt/backup/
    
por 21.06.2017 / 10:18