리눅스 서버간에 파일을 빠르게 전송하는 가장 쉬운 방법은 무엇입니까? 서버로 파일을 전송해야합니다.

한 CentOS 서버에서 다른 CentOS 서버로 파일을 전송해야합니다. 약 10 분마다 5MB 파일을 전송합니다. 암호화가 필요하지 않습니다.

파일을 빠르게 전송하는 것이 쉬운 이유는 무엇입니까?

ftp보다 간단한 것이 있습니까?

감사!



답변

rsync

ftp 또는 tftp를 사용하기 전에 rsync를 사용합니다.

더 많은 옵션과 (제 경험상)보다 안정적인 전송.


답변

tar over ssh는 괜찮지 만 netcat을 통한 TCP를 통한 tar는 오버 헤드가 거의 없습니다! 이것이 일회성이라면 이것을 쏴보십시오.

수신자에서 :

nc -l -p 8989 | tar x

발신자 :

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

이것이 당신이 정기적으로 할 일이라면, 아마도 rsync를 사용할 것입니다.


답변

두 사람이 ssh를 통해 tar를 언급했지만 그것을 수행하는 방법을 말하지 않았습니다. 레코드의 기본 절차는 다음과 같습니다.

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

또는 수신 측에서 전송을 시작하려는 경우 :

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

Evan의 netcat 솔루션보다이 방법을 사용하면 하나의 컴퓨터에서 모든 것을 시작할 수 있다는 이점이 있습니다. 두 개의 netcat 호출을 조정할 필요가 없습니다. 자동으로 실행해야하는 경우 암호없이 연결하고 해당 연결에 해당 키를 사용할 수있는 ssh 키를 설정할 수 있습니다.

ssh에는 데이터 스트림을 압축하는 -C 옵션이 있거나 GNU tar의 내장 압축 기능을 사용할 수 있습니다.

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

Rsync는 또 다른 옵션이지만 수신 측에 이미 존재하는 파일을 업데이트하는 데 적합합니다. 다른 쪽 끝에 존재하지 않는 파일을 전송하는 데 scp 또는 tar / ssh보다 속도가 느린 것으로 나타났습니다.


답변

내가 사용하는 거라고 scp또는 tar이상 ssh정직,. 암호화는 속도를 늦추지 만 설정 및 사용의 용이성, 안정성 및 (주관적으로) 친숙 함은 실제로 속도가 필요 하지 않은 한 히트를 기꺼이 받아들 입니다.

기본값보다 빠른 암호를 사용하도록함으로써 ssh 전송 속도를 높일 수 있습니다. 기본값은 일반적으로 일반적으로 3des할 수 -c des있으므로 분명히 더 -c blowfish빠르지 만 정확하게 테스트하지는 않았지만 빠릅니다.

(SSHv1 시절에 자주 할 수는 -c none있지만 누군가가 나쁜 juju라고 결정했다고 생각합니다.)


답변

scp / ssh를 거쳐야하는 경우 필자의 실험에 따르면 요즘 기본적으로 가장 빠른 암호는 RC4입니다. ssh / scp 명령에서 ‘ -c arcfour ‘ 를 통해 암호를 지정하십시오 .

초기 사본의 경우 :

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

업데이트 :

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

답변

동일한 페이지를 두 번 이상 전송하면 매뉴얼 페이지의 인용 부호와 같이 복사 속도가 빨라지므로 Rsync를 사용하는 것이 좋습니다.

   rsync is a program that behaves in much the same way that rcp does, but
   has many more options and uses  the  rsync  remote-update  protocol  to
   greatly  speed  up  file  transfers  when the destination file is being
   updated.
   The rsync remote-update protocol allows rsync to transfer just the dif-
   ferences between two sets of files across the network connection, using
   an efficient  checksum-search  algorithm  described  in  the  technical
   report that accompanies this package.

답변

FTP는 매우 간단하지만 한 시스템에서 NFS 공유를 만들어 다른 시스템에 마운트하는 것이 더 간단한 방법 일 수 있습니다. 그런 다음 파일 복사는 한 디렉토리에서 다른 디렉토리로 cp를 수행하는 것으로 구성됩니다.