Como copiar arquivos grandes pela rede

2

Eu preciso copiar arquivos grandes pela rede, mas não tenho certeza sobre o uso da linha de comando. Eu tenho usado o rsync, mas acho que talvez eu possa compactar os arquivos primeiro?

    
por cindy 01.08.2012 / 09:37

2 respostas

7

rsync já fornece compactação quando você especifica a opção -z . Você deve evitar aplicar essa opção para arquivos já compactados ou binários, pois isso apenas apresentará uma sobrecarga adicional.

Ao usar o rsync com o protocolo ssh (o padrão) e você tem recursos de CPU limitados e a segurança não é um problema, você também pode tentar especificar -e ssh -c arcfour para usar um algoritmo de criptografia mais barato (RC4). Em CPUs modernas, isso não fará grande diferença.

Outros argumentos interessantes que você pode querer usar:

  • -vP para uma boa barra de progresso e manter arquivos parcialmente transferidos quando interrompidos, para que você possa continuar a partir do arquivo parcial na próxima vez que executar rsync
  • -a para preservar a maioria dos metadados do arquivo (mas não todos!), como permissões e horários de modificação
por 01.08.2012 / 09:44
1

Não tenho certeza se entendi se você tem um problema ao compactar arquivos ou se tem problemas para transferir arquivos ou se você simplesmente tem uma pergunta geral. Eu vou com o mais tarde.

Se você tiver vários arquivos em uma pasta, poderá distribuí-los em um único arquivo (.tar): tar -cvf myfile.tar myfolder

Você pode então compactar esse arquivo usando um compressor muito bom, como lzma: lzma myfile.tar . Observe que você também pode instruir o tar a ser compactado com as opções -z (gzip), -j (bzip2) ou --lzma . Nesse caso, você executará um único comando, por exemplo: tar --lzma -cvf myfile.tar.lzma myfolder .

Você pode copiar o arquivo usando rsync ou scp e descompactá-lo ( lzma -d myfile.tar.lzma ) e extraí-lo ( tar -xvf myfile.tar ) uma vez no sistema de destino. Se você usou um único comando, o único comando para extração seria: tar --lzma -xvf myfile.tar.lzma .

Você também pode instruir o rsync a compactar usando a opção -z e não se preocupar em criar um arquivo único com antecedência.

    
por 02.08.2012 / 00:44

Tags