O rsync leva muito tempo para enviar a lista de arquivos

14

Estou tentando usar o rsync para fazer backup de alguns arquivos de um disco rígido interno para uma unidade USB. (Estou trabalhando em um wd mybook world NAS)

Há duas pastas que eu quero fazer backup. Uma pasta de música e uma pasta de vídeo. A pasta de música (864 arquivos, cerca de 10 gb) funcionou perfeitamente em cerca de 1 hora (para o progresso completo).

Mas a pasta de vídeo (1025 arquivos, com cerca de 700 gb) ainda está "enviando lista de arquivos incrementais" por 8 horas. Acho que nada foi transferido. O que poderia causar essa diferença? A pasta de vídeo não contém muito mais arquivos. Sim, é muito maior, mas isso não deve fazer diferença na geração da lista de arquivos, eu acho.

Estou usando este comando rsync:

/shares/extern # rsync -avPc --stats /shares/Public/Shared\ Videos /shares/extern/

Agora que estou trabalhando em um NAS, não tenho tanta energia na CPU, mas acho que é muito tempo.

O que você acha, esse comportamento é normal? Existe alguma sugestão do que eu possa fazer para acelerar um pouco a coisa toda?

Estou usando o rsync 3.0.2

Graslandpinguin
fonte
2
Por favor, não coloque respostas no corpo da pergunta. Você pode adicionar uma resposta própria se nenhuma resposta atual estiver correta ou comentar as respostas de outras pessoas se tiver algo a acrescentar. Obrigado!
Caleb

Respostas:

25

A -copção força o rsync a calcular uma soma de verificação para todos os arquivos. Isso significa que ele está lendo o conteúdo de todos os arquivos de vídeo antes de começar a decidir quais copiar. Isso é obviamente lento.

Considere remover essa opção, se possível. Você só precisa disso em casos raros. Veja a descrição na página do manual para mais detalhes:

Observe que o rsync sempre verifica se cada arquivo transferido foi reconstruído corretamente no lado receptor, verificando uma soma de verificação de arquivo inteiro que é gerada à medida que o arquivo é transferido, mas essa verificação automática após a transferência não tem nada a ver com essa opção antes- the-transfer "Este arquivo precisa ser atualizado?" Verifica.

estalar
fonte
oh obrigado pela dica. Depois de ler a página de manual, posso dizer que não entendi a opção -c. Pensei que verifica depois de copiar com uma soma de verificação. Obrigado pela ajuda!
Graslandpinguin 04/08/11
@CaptnLenz, prazer em ajudar. Considere clicar no visto no lado esquerdo da minha resposta para aceitar minha solução.
snap
Eu tive esse problema porque passei '-archive' em vez de '--archive' para o comando rsync. O rsync considerou '-archive' uma variante de -c.
Leons
4
Apenas para expandir o comentário @Leons, -archive está sendo visto como -a -r -c -h -i -v -e, todos os comutadores válidos. Truque pequeno erro.
Mark C
Aguarde, qual é a diferença entre verificar a soma de verificação e verificar o tamanho do arquivo / data de modificação? A verificação da soma de verificação realmente leva muito mais tempo do que a verificação apenas do tamanho do arquivo / data de modificação? O rsync salva somas de verificação após a primeira execução ou calcula todas elas do zero a cada execução?
Ken