rsync para windows (cygwin)

2

Temos um armazenamento de arquivos do Windows (não pergunte) e agora quero rsync com a máquina do Windows, Mac e Linux.

Então instalei freeSSHd (o shell de login está configurado para C:/cygwin64/bin/sh.exe ), configurei certificados e teste do Linux o test.dat tem 0 bytes:

ssh myuser@winmachinename "C:/cygwin64/bin/true.exe" > test.dat

Até mesmo a verificação dupla com a saída real funciona bem:

ssh myuser@winmachinename "C:/cygwin64/bin/ls.exe" > test.dat

Agora, quando eu chamo o rsync:

rsync --progress -avz -e ssh myuser@winmachinename:/c/Users ~/test

falha com:

protocol version mismatch -- is your shell clean?
(see the rsync man page for an explanation)
rsync error: protocol incompatibility (code 2) at compat.c(174) [Receiver=3.1.0]

No que diz respeito à leitura dos documentos, isso não deve acontecer, quando o primeiro teste for bem sucedido!?

Eu já estou sem idéias - alguma recomendação de como depurar isso?

EDITAR:

| OS            | rsync version                             |
|:--------------|:------------------------------------------|               
| Windows       | rsync  version 3.0.9  protocol version 30 |
| Linux         | rsync  version 3.1.0  protocol version 31 |
    
por abergmeier 04.06.2014 / 10:30

1 resposta

0

O problema parece ter sido o caminho.

Como eu tenho o mysysgit em PATH (mas não o cygwin), sh.exe chamou executáveis do mysysgit e falhou. Ao adicionar o cygwin a PATH antes do mysysgit, o erro desaparece.

Depois disso, tenho uma nova edição .

    
por 04.06.2014 / 11:12

Tags