rsync
O algoritmo delta-transfer faz isso por padrão. Citando a página de manual do rsync :
DESCRIÇÃO
O Rsync é uma ferramenta de cópia de arquivos rápida e extraordinariamente versátil. Ele pode copiar localmente para / de outro host em qualquer shell remoto ou para / de um daemon rsync remoto. Ele oferece um grande número de opções que controlam todos os aspectos de seu comportamento e permitem que especificações muito flexíveis do conjunto de arquivos sejam copiadas. É famoso por seu algoritmo de transferência delta, que reduz a quantidade de dados enviados pela rede, enviando apenas as diferenças entre os arquivos de origem e os arquivos existentes no destino . O Rsync é amplamente usado para backups e espelhamento e como um comando de cópia aprimorado para o uso diário.
Se você quiser desativá-lo, precisará usar a opção -W
ou --whole-file
.
-W, --whole-file
Esta opção desativa o algoritmo delta-transfer do rsync, que faz com que todos os arquivos transferidos sejam enviados inteiros. A transferência pode ser mais rápida se essa opção for usada quando a largura de banda entre as máquinas de origem e destino for maior que a largura de banda no disco (especialmente quando o "disco" for realmente um sistema de arquivos em rede). Esse é o padrão quando a origem e o destino são especificados como caminhos locais, mas apenas se nenhuma opção de gravação em lote estiver em vigor.
Se você realmente sabe o quanto o seu arquivo mudou, você pode até otimizar esse comportamento de transferência delta ajustando o tamanho do bloco delta:
-B, --block-size = BLOCKSIZE
Isso força o tamanho do bloco usado no algoritmo delta-transfer do rsync para um valor fixo. Normalmente, é selecionado com base no tamanho de cada arquivo que está sendo atualizado. Veja o relatório técnico para detalhes.
E se você quiser obter mais informações sobre o próprio algoritmo, pode encontrá-lo aqui: O algoritmo Rsync
rsync
se comporta dessa maneira por padrão. Desde que a alteração menor seja uma alteração menor no arquivo e o arquivo já exista nos dois lados do link em versões quase idênticas, os dados transferidos devem ser muito menores que o tamanho total do arquivo. Desde o primeiro parágrafo da página de manual: "É famoso por seu algoritmo de transferência delta, que reduz a quantidade de dados enviados pela rede, enviando apenas as diferenças entre os arquivos de origem e os existentes no destino".