rsync copiando arquivos inteiros em vez de diferença

4

Eu tenho 2 pastas remotas contendo poucos arquivos. Eu estou usando rsync para sincronizar o 2. A questão é que no primeiro servidor os arquivos são estritamente APENAS com novos dados todos os dias.

Quando eu chamo rsync , parece-me que copia todo o arquivo novamente.

A minha ligação abaixo está correta?

  rsync -rtvu src_fld/  user@myserver:/opt/dst_fldr/

Meu entendimento é que rsync é capaz de calcular a diferença entre os dois arquivos, então eu esperava uma atualização muito rápida.

    
por Abruzzo Forte e Gentile 04.07.2013 / 11:18

1 resposta

3

O rsync está fazendo muitas coisas - no seu caso, provavelmente seria construir listas de arquivos em ambos os lados, compará-las, encontrar os arquivos para transferir, ler os arquivos em ambos os lados, calculando as somas de verificação de rolamento em ambos os lados , trocando as informações de soma de verificação e transmitindo blocos diferentes. Esse processo levará tempo, especialmente se você tiver arquivos grandes (escala Gigabyte) ou um grande número de arquivos (magnitude de centenas de milhares). Devido à significativa sobrecarga computacional e de E / S no remetente e no receptor, ela não necessariamente aceleraria a transmissão, provavelmente reduzirá a quantidade de dados a serem transferidos através do link.

Se no seu caso as únicas alterações de arquivo forem anexadas (como seria o caso dos logs crescentes), considere usar a opção --append-verify para rsync , que ignoraria todo o cálculo da soma de verificação e apenas transferiria a cauda do arquivo maior para preencher o menor. Ele também verificaria após a transferência se os arquivos no remetente e no receptor são idênticos executando uma operação de soma de verificação de arquivo único.

    
por 04.07.2013 / 11:52