Recebo um erro com o cygwin rsync ao tentar transferir arquivos entre o Windows de 64 bits e o Linux de 64 bits. Ambas as máquinas possuem o rsync 3.0.7 instalado. Estou executando o rsync com ssh (sem daemon envolvido). Vejo que a conexão com a caixa remota foi estabelecida, mas o rsync morre após a autenticação e antes da transferência do arquivo.
O que poderia causar este problema?
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]
Responder1
O error 12
with rsync
significa que a conexão com o ponto remoto desapareceu. O motivo depende do ambiente.
Se você estiver executando o rsync como um daemon, consulte seu arquivo de log para obter dicas. Existe espaço livre suficiente no disco do sistema remoto? Talvez correr rsync
com -v
parâmetro diga algo útil?
Responder2
Acontece que o problema foi a instalação do Windows git (mysysgit). O Git no Windows veio com seu próprio ssh.exe e seu caminho era anterior ao caminho do cygwin, então o rsync foi padronizado para o ssh do git. A solução foi simplesmente trocar o git bin e o diretório bin do cygwin no env PATH.