Primeiro - o número de arquivos, neste caso, será um fator importante. É um tamanho médio de 3MB cada. Há provavelmente um gargalo que influencia a velocidade no caso do OP. Mais aqui - é uma leitura bem seca, mas a foto da capa vale a pena.
Então, usando o rsync para copiar para um diretório vazio? Aqui estão algumas maneiras de acelerar:
- Não -z - definitivamente não use -z como no OP.
-
- sem compactação pode acelerar você. Isso pode ter o maior impacto ... meu teste foi de 13.000 arquivos, tamanho total de 200MB e uso do rsync 3.1.3. Eu sincronizei com uma partição diferente na mesma unidade SSD interna. Com --no-compress, recebo 18 MBps e sem ele ganho 15 MBps. cp, a propósito, recebe 16 MBps. Esse é um tamanho médio de arquivo muito menor. Além disso - não consigo encontrar nenhuma documentação para --no-compress. Eu aprendi sobre isso neste post em stackexchange.com.
- -W para copiar arquivos inteiros - use sempre isso se você não usa t quer comparar as diferenças; Não importa que o ponto do rsync é comparar diferenças e apenas atualizar as mudanças.
- -S para lidar com arquivos esparsos bem - não pode ferir se você não tem arquivos esparsos.
-
--exclude-from ou algo semelhante para excluir arquivos você pode não precisar reduzir o tempo, mas isso não aumentará sua velocidade de transferência.
- É possível se você enviar a saída para um arquivo como este
rsync -a /source /destination >/somewhere/rsync.out 2>/somewhere/rsync.err
- o primeiro > basicamente imprime um arquivo com todas as coisas que você normalmente veria, e os 2 > refere-se a mensagens de erro.
- Finalmente, executando várias instâncias do rsync para diferentes partes de sua transferência podem ser uma grande ajuda.
Meu comando seria:
rsync -avAXEWSlHh /source /destination --no-compress --info=progress2 --dry-run
Se tudo parecia bem, eu excluiria "--dry-run" e deixaria ir. A, X e E cobrem atributos estendidos e permissões não cobertas por -a, l é para links suaves, H é para links físicos e h é para legível por humanos.
Atualizando um diretório já sincronizado em uma unidade USB, ou a mesma unidade, ou através de uma rede, todos exigirão diferentes comandos rsync para maximizar a velocidade de transferência.
Bônus - aqui está a página do manual do rsync , e se você quiser para testar a velocidade do disco rígido, bonnie ++ é um boa opção, e para a velocidade da sua rede, tente iperf .
* O post tem quase dez anos, mas os mecanismos de pesquisa gostam dele e eu continuo vendo. É uma boa pergunta, e eu não acho que a melhor resposta para "como acelerar o rsync" seja "use cp".