Dlaczego cwRsync nie działa w systemie Windows?

16

Próbuję uruchomić rsync w systemie Windows z portem cwrsync.

Wydaję następujące polecenie (pamiętaj, że to tylko próba sucha):

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

ale pojawia się następujący błąd

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

Czy ktoś może skierować mnie w dobrym kierunku?

Lorenzo
źródło

Odpowiedzi:

20

Do miejsca docelowego spróbuj użyć:

/cygdrive/c/mybackupfolder/

Zauważ, że dwukropek mówi rsync, że lokalizacja jest zdalna.

jftuga
źródło
Gotcha o okrężnicy! Ale to nie pomaga. Próbowałem również tej innej wersji (% CD% jest zmienną env wskazującą na bieżący katalog), ale nadal nie działa: rsync -nPaAz [email protected]: / home / foobar / webapps / barbaz /% CD%
Lorenzo
2
co z przejściem do katalogu docelowego, a następnie po prostu użyj „.” do celu?
jftuga
To faktycznie działa dla mnie. Możesz po prostu dodać / cygdrive / przed jakimkolwiek systemem Windows. Zainstalowałem rsync przez Chocolatey (dlatego oparty na cygwin).
seb
5

Moje środowisko: Windows 10 w PowerShell. Rozwiązanie działało również w trybie DOS.

Problem jest spowodowany :literami po napędzie, co sprawia, że ​​wygląda jak specyfikacja nazwy hosta. Musisz użyć alternatywnej notacji.

I był przy użyciu rsync zainstalowany poprzez Chocolatey , napędy więc nie cygwin.

Windows 10 pozwala mi to zrobić w PowerShell:

dir //localhost/C$

więc to polecenie, uruchomione w PowerShellie systemu Windows 10, działało dobrze dla mnie, po napotkaniu tego samego problemu.

rsync -av //localhost/d$/home/work/fb460.winbup/src //localhost/d$/home/work/fb460.winbup/tgt
JL Peyret
źródło
Zauważ, że to nie działa lub przynajmniej nie mogłem sprawić, by działało na dyskach ext2fsd. Twoje doświadczenie może się różnić. Jednak, gdy chciałem skopiować z ext2 do NTFS, właśnie zmieniłem dysk na ext2 i uruchomiłemrsync -a some/path //localhost/c$/some/path
chx
Zainstalowałem także przez Chocolatey. To działało dla mnie dobrze! NTFS do NTFS.
jonathanbell
4

Dostałem się tutaj z podobnego problemu z rsync dla Windows.

Zamiast używać ścieżki, po prostu stwórz plik .bat, który użyje CD C:\whereto\następnie w komendzie rsync, po prostu użyj .jako katalogu do zapisania.

Przykład (coś. Nietoperz):

@echo off  
cd C:\mybackupfolder\  
rsync -nPaAz [email protected]:/home/foobar/webapps/barbaz/ .  
Podły
źródło
2

Próbować

 rsync -nPaAz [email protected]:/home/foobar/webapps/barbaz/ C:/mybackupfolder/
Krumelur
źródło
To nie działa zgodnie z oczekiwaniami.
Emre Yazici