피어에 의한 Rsync 연결 재설정

피어에 의한 Rsync 연결 재설정
rsync --protocol=29 -rav -e ssh --include '*/' --include='*_en*.xml.gz' --exclude='*' user@server:/path/

콘텐츠가 원격 서버에서 다운로드되고 있는데 다음 오류가 발생합니다.

Write failed: Connection reset by peer
rsync: connection unexpectedly closed (39027627 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at /home/lapo/package/rsync-3.0.9-1/src/rsync-3.0.9/io.c(605) [receiver=3.0.9]
rsync: connection unexpectedly closed (149869 bytes received so far) [generator]
rsync error: unexplained error (code 255) at /home/lapo/package/rsync-3.0.9-1/src/rsync-3.0.9/io.c(605) [generator=3.0.9]

왜 이런 일이 발생하는지 아시나요?

답변1

무언가가 네트워크 연결을 방해하고 있습니다. 로컬 컴퓨터와 원격 컴퓨터 사이의 모든 네트워크 장치가 될 수 있습니다. 예를 들어 일부 과부하된 방화벽은 연결을 무작위로 끊는 경향이 있습니다. 이 문제를 진단하려면 네트워크 토폴로지를 잘 이해해야 합니다.

기본 TCP 연결이 끊어지면 Rsync 연결이 쉽게 복원됩니다. 다시 실행하기만 하면 됩니다. 각 실행마다 최소한 하나의 완전한 파일을 전송할 시간이 있는 한 결국에는 작업이 완료됩니다.

일반적으로 신뢰성이 떨어지는 TCP 연결 위에 보다 안정적인 TCP 연결을 구축할 수 있지만 턴키 솔루션은 없습니다. 일부 VPN 소프트웨어가 이에 효과적일 수 있습니다.바위이 작업을 수행하는 오래되고 유지 관리되지 않는 도구입니다.

당신은 또한 볼 수 있습니다가장 *강력한* 원격 파일 복사?그리고TCP 터널 자동 재연결

답변2

최근 cygwin에서 rsync 3.1.1(및 3.0.9)을 사용하고 원격 Linux 시스템(rsync 3.1.0)에서 가져올 때 동일한 문제가 발생했습니다. 제 경우에는 소스 경로의 공백과 관련이 있었습니다. 해결책은 경로를 큰따옴표로 묶은 다음 작은따옴표로 묶는 것입니다.

$ rsync [email protected]:'"Documents/016054 signed agreement.pdf"' $TEMP/file.pdf

단일 생략그리고/또는큰따옴표로 인해 오류가 발생합니다. 사용자/컴퓨터가 아니라 디렉터리/파일을 따옴표로 묶어야 합니다.

답변3

네트워크 문제 및 rsync 프로토콜 문제 외에도 한 번에 너무 많은 파일을 동기화하려고 시도하여 메모리가 부족할 수 있습니다.

당신은 당신의 환경에 대해 아무 것도 쓰지 않았으므로 나는 단지 추측일 뿐입니다. 그러나 OpenVZ 컨테이너에서 많은 파일을 동기화하고 갑자기 PRIVVMPAGES가 부족해지면 비슷한 문제가 발생합니다.

메모리와 관련된 것인지 확인하려면 단일 대용량 파일을 rsync해 보세요.

관련 정보