Ich verwende derzeit SFTP, um nächtliche Backups (.tar.gz) von meinem Webhost auf meinen Desktop-Computer herunterzuladen. Ich denke, ich würde gerne auf Rsync umsteigen, um die Bandbreite (und die Zeit) zu minimieren. Ich habe Cygwin auf meinem PC installiert, verwende es aber nicht oft. Ich habe über SSH (PuTTY) Shell-Zugriff auf meinen Webhost.
Angenommen, mein Quellverzeichnis ist myserver.com:/home/username/backups/. Ich möchte alle .tar.gz-Dateien von dort abrufen und sie lokal im Verzeichnis C:\Backups\ speichern.
Antwort1
Verwenden Sie das integrierte rsync auf der *nix-Box undDeltaCopyauf der Win32-Box.
Antwort2
Ich konnte dies mit Cygwins rsync und ssh zum Laufen bringen. Hier ist der Befehl, den ich am Ende erhalten habe:
C:\cygwin\bin\rsync.exe -vcr -e "ssh -l username -i /cygdrive/C/Backups/sshkey" "myserver.com:/home/username/backups/" "/cygdrive/C/Backups/rsync/"
Dabei traten einige Probleme auf: Habe C:\cygwin\bin\ zu meinem Windows-Pfad hinzugefügt. Ich weiß nicht, ob das unbedingt notwendig war, aber es hat mir geholfen.
Chris S'SVerknüpfungum das Schlüsselpaar zu erstellen, das für eine SSH-Verbindung ohne Kennwort erforderlich ist.
Ich musste auch einige Berechtigungen für das neu erstellte .ssh-Verzeichnis und die Datei auf dem Server festlegen ...
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys/
Oh, und ich musste ~/.ssh manuell lokal in Cygwin erstellen.