총 90GB의 약 100k 파일을 전송하려고합니다. 지금은 rsync 데몬을 사용하고 있지만 느린 3.4mb / s이며 여러 번 수행해야합니다. 인터넷을 통해 100mbit 연결을 최대한 활용하고 매우 신뢰할 수있는 옵션이 무엇인지 궁금합니다.
총 90GB의 약 100k 파일을 전송하려고합니다. 지금은 rsync 데몬을 사용하고 있지만 느린 3.4mb / s이며 여러 번 수행해야합니다. 인터넷을 통해 100mbit 연결을 최대한 활용하고 매우 신뢰할 수있는 옵션이 무엇인지 궁금합니다.
답변:
Sneakernet 을 고려 했 습니까? 대용량 데이터 세트를 사용하면 밤새 배송하는 것이 인터넷을 통한 전송보다 더 빠르고 저렴합니다.
내가 찾은 가장 빠른 방법은 tar
, mbuffer
및 의 조합입니다 ssh
.
예 :
tar zcf - bigfile.m4p | mbuffer -s 1K -m 512 | ssh otherhost "tar zxf -"
이를 사용하여 1Gb 링크에서 950Mb / s 이상의 지속적인 로컬 네트워크 전송을 달성했습니다. 전송중인 내용에 맞게 각 tar 명령의 경로를 바꾸십시오.
네트워크를 통해 대용량 파일을 전송하는 데 가장 큰 병목 현상은 디스크 I / O입니다. 그 대답은 mbuffer
또는 buffer
입니다. 그것들은 대체로 비슷하지만 mbuffer
몇 가지 장점이 있습니다. 기본 버퍼 크기는 2MB mbuffer
, 1MB입니다 buffer
. 더 큰 버퍼는 절대 비워지지 않을 가능성이 높습니다. 대상 및 대상 파일 시스템에서 기본 블록 크기의 최소 공배수 인 블록 크기를 선택하면 최상의 성능을 얻을 수 있습니다.
버퍼링은 모든 차이 를 만드는 것입니다 ! 가지고 있다면 사용하십시오! 당신이 그것을 가지고 있지 않다면 그것을 얻으십시오! (m}?buffer
더하기를 사용하는 것이 그 자체로 더 좋습니다. 네트워크 파일 전송 속도가 느리다는 것은 사실상 만병 통치약입니다.
여러 파일을 전송하는 경우 파일 tar
을 하나의 데이터 스트림으로 "뭉치기" 위해 사용하십시오 . 단일 파일 인 경우 cat
또는 I / O 리디렉션을 사용할 수 있습니다 . tar
vs. 의 오버 헤드 cat
는 통계적으로 중요하지 않으므로 이미 tarball이 아닌 한 항상 사용할 수 있습니다 tar
(또는 가능한 zfs -send
곳) . 이들 중 어느 것도 메타 데이터를 제공한다고 보장 하지 않으며 , 특히 그렇지 않습니다. 메타 데이터를 원한다면 연습용으로 남겨 두겠습니다.cat
마지막으로, ssh
전송 메커니즘을 사용 하는 것이 안전하고 오버 헤드가 거의 없습니다. 또, 오버 헤드 ssh
대는 nc
통계적으로 유의하다.
tar -cf - .|mbuffer -m128k -s 256M -I 9090 & mbuffer -m128k -s 256M -O host:9090 | tar -xf -
ssh
하면 간단합니다. 사용 stunnel
, socat
또는 것은 openssl
너무 작동하지만, 그들은 간단한 전송을 위해 설정하는 더 복잡한 것.
"rsync"에 대해 언급 했으므로 Linux를 사용한다고 가정합니다.
tar 또는 tar.gz 파일을 작성하지 않는 이유는 무엇입니까? 하나의 큰 파일의 네트워크 전송 시간은 많은 작은 파일보다 빠릅니다. 원하는 경우 압축 할 수도 있습니다 ...
압축이없는 타르 :
소스 서버에서 :
tar -cf file.tar /path/to/files/
그런 다음 수신 측에서 :
cd /path/to/files/
tar -xf /path/to/file.tar
압축 된 타르 :
소스 서버에서 :
tar -czf file.tar.gz /path/to/files/
그런 다음 수신 측에서 :
cd /path/to/files/
tar -xzf /path/to/file.tar.gz
rsync를 사용하여 (tar | tar.gz) 파일의 실제 전송을 수행하기 만하면됩니다.
rsync의 다양한 압축 옵션을 사용할 수 있습니다.
-z, --compress compress file data during the transfer
--compress-level=NUM explicitly set compression level
--skip-compress=LIST skip compressing files with suffix in LIST
이진 파일의 압축 비율은 매우 낮으므로 --skip-compress (예 : iso, 이미 아카이브 및 압축 된 타르볼 등)를 사용하여 해당 파일을 건너 뛸 수 있습니다.
저는 SFTP의 열렬한 팬입니다. SFTP를 사용하여 기본 컴퓨터에서 서버로 미디어를 전송합니다. LAN을 통해 좋은 속도를 얻습니다.
SFTP는 신뢰할 수 있으며 설정하기 쉽고 샷을 줄 수 있으며 경우에 따라 더 빠를 수도 있습니다.