A maneira mais fácil de transferir arquivos rapidamente entre servidores Linux?

A maneira mais fácil de transferir arquivos rapidamente entre servidores Linux?

Preciso transferir arquivos de um servidor CentOS para outro. Transferirá arquivos de 5 MB a cada 10 minutos. Não precisa de criptografia.

O que é fácil para transferência rápida de arquivos?

Existe algo mais simples que FTP?

Obrigado!

Responder1

sincronizar novamente

Eu usaria o rsync antes de usar o FTP ou o TFTP.

Mais opções e (na minha experiência) transferência mais confiável.

Responder2

tar sobre ssh está bem, mas tar sobre TCP via netcat é o mais barato possível! Se isso for algo único, experimente:

No receptor:

nc -l -p 8989 | tar x

No remetente:

tar cf - /source-path | nc (receiving host ip address) 8989

Se isso é algo que você faz regularmente, provavelmente usaria o rsync.

Responder3

Duas pessoas mencionaram tar sobre ssh, mas não disseram como fazê-lo. Para registro, o procedimento básico é executar:

tar cf - files... | ssh remotehost 'cd /destination && tar xvf -'

Ou, se você deseja iniciar as transferências do lado receptor:

ssh remotehost 'cd /source && tar cf - files' | tar xvf -

A vantagem de fazer isso dessa maneira em relação à solução netcat de Evan é que tudo pode ser iniciado a partir de um computador; você não precisa coordenar duas invocações do netcat. Se precisar que isso seja executado automaticamente, você pode configurar uma chave ssh que permite fazer conexões sem uma senha longa e usar essa chave para essas conexões.

ssh tem uma opção -C para compactar seu fluxo de dados, ou você pode usar a capacidade de compactação integrada do GNU tar:

tar zcf - files... | ssh remotehost 'cd /destination && tar xzvf -'

Rsync é outra opção, mas seu ponto forte é atualizar arquivos que já existem no receptor. Descobri que ele é mais lento que scp ou tar/ssh ao usá-lo para transferir arquivos que ainda não existem do outro lado.

Responder4

Se você precisar passar pelo scp/ssh, meus experimentos mostram que a cifra mais rápida habilitada por padrão atualmente é a RC4. Você especifica a cifra via '-c arcoquatro'no seu comando ssh/scp:

para cópia inicial:

  • scp -c arcfour -r foo/ desthost:/destdir

para atualizações:

  • rsync -e 'ssh -c arcfour' -r foo/ desthost:/destdir

informação relacionada