Cygwin rsync 프로토콜 오류

Cygwin rsync 프로토콜 오류

64비트 Windows와 64비트 Linux 간에 파일을 전송하려고 하면 cygwin rsync에 오류가 발생합니다. 두 시스템 모두 rsync 3.0.7이 설치되어 있습니다. ssh로 rsync를 실행 중입니다(데몬 관련 없음). 원격 상자에 대한 연결이 설정되었지만 인증 후 파일 전송 전에 rsync가 종료되는 것을 확인했습니다.

이 문제의 원인은 무엇입니까?

C:\>rsync user@host:~/file newfile
Password:
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(601) [sender=
3.0.7]
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at /home/lapo/packagi
ng/rsync-3.0.6-1/src/rsync-3.0.6/io.c(600) [receiver=3.0.6]

답변1

with error 12rsync원격 상대방과의 연결이 끊어졌음을 의미합니다. 이유는 환경에 따라 다릅니다.

rsync를 데몬으로 실행하는 경우 로그 파일에서 단서를 확인하세요. 원격 시스템의 디스크에 여유 공간이 충분합니까? 매개변수를 rsync사용하여 실행하면 -v유용한 내용이 표시될 수 있나요?

답변2

문제는 Windows git 설치(mysysgit)에 있었습니다. Windows의 Git은 자체 ssh.exe와 함께 제공되었으며 해당 경로는 cygwin 경로 이전이었으므로 rsync는 기본적으로 git의 ssh로 설정되었습니다. 해결책은 단순히 env PATH에서 git bin과 cygwin의 bin 디렉토리를 바꾸는 것이었습니다.

관련 정보