rsync -avz가 scp -r보다 빠른 이유는 무엇입니까?


55

나는 이것에 약간 의아해? rsync가 scp보다 빠른 이유는 무엇입니까? rsync가 아래에서 scp를 사용하지 않거나 더 효율적인 작업을 수행합니까? scp 속도를 높일 수있는 방법이 있습니까?


1
신선한 사본입니다.
grm

답변:


68

rsync는 차이점 만 복사하므로 대상에 이미 일부 소스 파일이 포함되어 있으면 Rsync가 scp보다 빠릅니다. 그러나 귀하의 질문은 빈 대상에 대한 간단한 사본을 작성하는 것에 관한 것 같습니다.

-z옵션을 rsync;에 전달 했습니다 . 압축이 켜집니다. 네트워크 대역폭이 제한 요인 인 경우 (종종 경우) 압축은 전송 속도를 눈에 띄게 향상시킬 수 있습니다.

옵션 scp을 전달하여 압축을 활성화 할 수도 -C있습니다. 이것은 rsync로도 가능합니다. 압축은 대역폭을 절약하지만 대기 시간과 CPU 오버 헤드를 추가하기 때문에 ssh에서 기본적으로 활성화되어 있지 않습니다. 대기 시간은 대화식 세션에 좋지 않으며 (에는 적용되지 않음 scp) 복사중인 파일이 이미 압축 된 경우 CPU 오버 헤드는 쓸모가 없습니다.

rsync기본 전송 계층으로 ssh가 아닌 이전 rsh 버전을 사용 했으므로 rsync와의 적절한 비교입니다 rcp. 그러나 2004-01-01에 2.6.0이 릴리스 된 이후 ssh가 기본값이었습니다.

동일한 압축 설정을 통해, 나는 기대 rsyncscp본질적으로 동일한 속도를 가지고. 다른 정보가 있으면 벤치 마크를 공유하십시오.


3
-C를 사용하여 전송 속도가 5MB에서 20MB로 증가했습니다.
ıɾuǝʞ

방금 3-9MB의 16 파일을 포함하는 디렉토리에 대해 테스트 rsync -z했으며이 scp답변에서 제안 된 압축 보다 여전히 빠릅니다 . 또한 하나의 파일을 수동으로 압축 및 보관하고 scp해당 파일 scp을 압축 하는 것보다 빠릅니다 ( 압축을 사용하는 것보다 속도가 느립니다). 그래서 OP의 질문은 사실 답이 남아 : WTH가되어 scp너무 느린에 비해 rsync?
ohcibi 2019

12

빠른 방법으로 scp를 시도하십시오

scp -p -C -o 'CompressionLevel 9' -o 'IPQoS throughput'  -c arcfour machine:file .

이 옵션은 일반 scp machine : file과 비교할 때 설정에서 scp 속도를 5 배 빠르게합니다.

2017 년 업데이트

실제로 MTU 및 버퍼 크기와 같은 TCP 세부 정보를 제대로 관리하지 못해 scp가 느립니다. 운 좋게도 이것은 HPN SSH 프로젝트에 의해 수정되었습니다 . 내 이해를 위해 HPN SSH를 rsync 전송으로 사용할 수 있습니다.


1
굉장합니다, 감사합니다 !! 그러나 항상 scp -p기본적으로 항상 (날짜 / 시간 유지), 아마도 -r(재귀 적) 그렇게하십시오 scp -pr -C .... (나는 잊어 버렸기 때문에 이것을 사용하여 40Gb scp 작업을 문지르고 다시 시작해야했습니다 -p)
smci

힌트 덕분에 명령에 -p를 추가했습니다.
Peter K

4

예전에는 그렇지 않았지만 rsync의 속도가 지난 몇 가지 개정판에서 크게 향상되었다고 생각합니다. 또한 복사하는 파일 수에 따라 다릅니다. 그것이 많은 경우 scp는 복사하는 각 파일에 대해 새로운 프로세스를 생성하기 때문에 일반적으로 rsync가 더 빠릅니다. 암호 scp가 속도를 높이는지 확인하기 위해 사용하는 약화를 시도 할 수 있습니다. 마지막으로, 네 개의 암호가 가장 빠르다는 것을 기억합니다.


2
Scp는 실제로 복사되는 각 파일에 대해 새로운 프로세스를 생성하지 않습니다. rsync와 마찬가지로 송신 측과 수신 측에 하나의 프로세스가 있습니다.
Kenster 2016 년

3

많은 수의 작은 파일의 경우 rysnc가 scp보다 훨씬 빠릅니다. 그들은 오버 헤드가 더 작기 때문이라고 말합니다. 하나의 큰 파일의 경우 비슷한 결과가 예상됩니다.


3

내 테스트의 경우 rsyncscp 보다 빠르므로 iotop 을 사용 하여 동일한 파일을 전송할 때 테스트 할 수 있습니다 .

sudo iotop -o

다른 결과가 나올 수도 있지만 직접 테스트 할 수 있습니다. BTW는 scp 를 사용하는 동안 다음과 같은 방법 으로 암호를 선택하지 않습니다.

scp -c arcfour <source> <dest>

동안은 arcfour암호화 속도를 높일 수 있습니다.


0

기존 파일 위에 파일을 다시 복사하고 있습니까? 그렇다면 rsync의 비교를 차단하고 차이점 만 복사하는 기능은 관련이 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.