Transferir 40000+ arquivos usando o rsync entre dois servidores

1

Eu tenho um problema com arquivos de transferência entre dois servidores Linux na mesma rede. No servidor de origem eu tenho diretório com 40055 arquivos pequenos, o tamanho do diretório é de 34 GB. Eu tentei transferir esses arquivos com o comando rsync:

rsync -ah --progress --inplace /dir/dir_with_files user@server:/dir/destination_dir

Após a transferência, no servidor de destino tenho um diretório com tamanho de 108 GB e não de 34 GB

Os blocos nas partições são os mesmos.

Eu fiz a mesma coisa com o scp, mas o problema é o mesmo.

    
por user209482 15.02.2014 / 12:34

1 resposta

2

Para uma retenção completa de tudo, tente:

rsync --archive --hard-links --sparse-files --acls --xattrs source dest

Em seguida, para verificar a exatidão, você pode fazer algo como (assumindo que não há espaços nos nomes dos arquivos): for file in *; do md5sum $file >> /tmp/sums.txt; done e, em seguida, diff sums.txt nos dois servidores. O md5summing vai demorar um pouco, no entanto.

Se você tiver espaços em seus nomes de arquivos, crie algo com find e / ou xargs

BTW, o que significa du --bytes -hs ? Dessa forma, você exclui o tamanho do bloco.

    
por 15.02.2014 / 13:09