Por que o cwRsync não funciona no Windows?

16

Estou tentando executar o rsync no Windows com a porta cwrsync.

Estou emitindo o seguinte comando (observe que isso é apenas uma execução a seco):

rsync -nPaAz [email protected]:/home/foobar/webapps/barbaz/ C:\\mybackupfolder\

mas eu recebo o seguinte erro

The source and destination cannot both be remote.
rsync error: syntax or usage error (code 1) at main.c(1148) [Receiver=3.0.8]

Alguém poderia me apontar na direção certa?

Lorenzo
fonte

Respostas:

20

Para o destino, tente usar:

/cygdrive/c/mybackupfolder/

Observe que dois pontos informa ao rsync que o local é remoto.

jftuga
fonte
Peguei o cólon! Mas isso não parece ajudar. Tentei esta outra versão (% CD% é uma variável env apontando para o diretório atual) também, mas ainda falha: rsync -nPaAz [email protected]: / home / foobar / webapps / barbaz /% CD%
Lorenzo
2
que tal mudar para o diretório de destino e depois usar "." para o destino?
jftuga
Isso realmente funciona para mim. Você pode simplesmente adicionar / cygdrive / antes de qualquer drive do Windows. Instalei o rsync através do Chocolatey (portanto, baseado no cygwin).
seb
5

Meu ambiente: Windows 10, no PowerShell. A solução também funcionou em um prompt do DOS.

O problema é causado pelas :letras de unidade posteriores, o que faz com que pareça uma especificação de nome de host. Você precisa usar uma notação alternativa.

Eu estava usando o rsync instalado via Chocolatey , então não há unidades cygwin.

O Windows 10 me permite fazer isso no PowerShell:

dir //localhost/C$

portanto, esse comando, executado em um PowerShell do Windows 10, funcionou bem para mim, depois de executar o mesmo problema exato.

rsync -av //localhost/d$/home/work/fb460.winbup/src //localhost/d$/home/work/fb460.winbup/tgt
JL Peyret
fonte
Observe que isso não funciona ou, pelo menos, não consegui fazê-lo funcionar em unidades ext2fsd. Sua experiência pode ser diferente. No entanto, como eu queria copiar de ext2 para NTFS Eu só mudei para a unidade ext2 e correursync -a some/path //localhost/c$/some/path
chx
Eu também instalei via Chocolatey. Isto funcionou bem para mim! NTFS para NTFS.
jonathanbell
4

Cheguei aqui de um problema semelhante com o rsync para Windows.

Em vez de usar o caminho, basta criar um arquivo .bat que use CD C:\whereto\no comando rsync e usar .como o diretório para salvar.

Exemplo (something.bat):

@echo off  
cd C:\mybackupfolder\  
rsync -nPaAz [email protected]:/home/foobar/webapps/barbaz/ .  
Vil
fonte
2

Experimentar

 rsync -nPaAz [email protected]:/home/foobar/webapps/barbaz/ C:/mybackupfolder/
Krumelur
fonte
Isso não funciona como esperado para mim.
Emre Yazici