nicole27
Goto Top

Übertragung von lokalen Verzeichnissen auf einen externen PFad via SFTP (Rsync)

Hallo zusammen,

ich habe leider ein kleines Problem.
Ich muss eine lokale Ordnerstruktur(rekursiv) via Kommandozeile auf einen Server Kopieren, der nur via SFTP (mit einem extra Account) erreichbar ist.
Ich habe es mal mit Rsync versucht, aber ich komme mit den Parametern nicht zurecht.
Geht das überhaupt mit Rsync, wenn ja wie?

Liebe Grüße
Nicole

Content-ID: 271255

Url: https://administrator.de/contentid/271255

Ausgedruckt am: 22.11.2024 um 07:11 Uhr

colinardo
colinardo 06.05.2015, aktualisiert am 13.05.2015 um 17:29:38 Uhr
Goto Top
Hallo Nicole,
Wenn du es mit rsync (cygwin) auf einem Windows System versuchst geht das z.B. mit zertifikatsbasierter Authentifizierung folgendermaßen
rsync -avzht -e 'ssh -o IdentityFile=/cygdrive/c/ordner/private.key' "/cygdrive/c/Verzeichnis/Daten/" "username@domain.com:/remote/pfad/"  
ohne Zertifikat
rsync -avzht "/cygdrive/c/Verzeichnis/Daten/" "username@[IP-Adresse oder Hostname]:/remote/pfad/"  

Ansonsten kannst du auch WinSCP nehmen das kann sich ebenfalls problemlos mit SFTP-Servern verbinden (Das ist für dich eventuell leichter anzuwenden).

Grüße Uwe
Nicole27
Nicole27 06.05.2015 aktualisiert um 18:22:38 Uhr
Goto Top
Danke für deine Hilfe.
Wo gebe ich das Kennwort vom User für den SFTP an? Es muss leider via Konsole sein.
Leider hab ich keine Domain sondern nur eine IP. Reicht das auch? Wofür ist private.key ? brauch ich das? bekomme ich es her?
Gruß
Nocole
colinardo
colinardo 06.05.2015 aktualisiert um 18:24:07 Uhr
Goto Top
Ohne Zertifikat habe ich gerade oben noch ergänzt.
Passwort gibst du dann nach Ausführung in der Konsole ein, wenn du aufgefordert wirst.
Nicole27
Nicole27 06.05.2015 um 18:23:36 Uhr
Goto Top
Danke. Kann man das Password irgendwie mitgeben? Ich möchte daraus nachher einen geplanten Task machen, der täglich so läuft.
colinardo
colinardo 06.05.2015, aktualisiert am 06.04.2016 um 11:29:34 Uhr
Goto Top
Zitat von @Nicole27:
Danke. Kann man das Password irgendwie mitgeben? Ich möchte daraus nachher einen geplanten Task machen, der täglich so
läuft.
Da gibt es mehrere Möglichkeiten:
back-to-top1. SSHPASS
Unter Windows ist in solch einem Fall sshpass das Mittel der Wahl in Kombination mit rsync:

Damit geht das dann so:
rsync -avzhte "sshpass -p 'DeinGeheimesPasswort' ssh -o StrictHostKeyChecking=no" "/cygdrive/c/Verzeichnis/Daten/" "username@55.33.22.11:/remote/pfad/"  
back-to-top2. Mit dem Tool pscp
Dann gibt es noch eine einfache Möglichkeit mit dem Tool pscp vom bekannten Putty-Produzenten
Damit ist das ebenfalls sehr einfach das Passwort mit zu übergeben:
pscp.exe -r -pw "PASSWORT" C:\lokale\Daten\ root@55.44.33.22:/remote/dir/
back-to-top3. WinSCP
Mit WinSCP geht's auch problemlos, ein Beispiel dazu findest du hier:
FTP-Massenupload über Batch (CMD-Script) und Erstellung eines Log-Files

Ansonsten ist aber eine zertifikatsbasierte Authentifizierung aus Sicherheitsgründen dringend zu empfehlen, sonst kann ja jeder das Passwort des Servers auf deinem Rechner auslesen.

Grüße Uwe
colinardo
colinardo 08.05.2015 aktualisiert um 14:38:07 Uhr
Goto Top
Bitte den Beitrag dann noch als gelöst markieren. Merci.
Nicole27
Nicole27 13.05.2015 um 13:37:51 Uhr
Goto Top
Leider funktioniert es bei mir nicht. Ich habe folgende Zeile verwendet:

rsync -avzht --progress "/cygdrive/c/temp/zrdz/" "Testuser@172.16.1.249:/var/www/extranet/fileadmin/user_upload/Website/Mein_Bereich/Test"

bei mir kommt auch keine Anfrage nach einem Kennwort. Die Zeile oben wurde mit den entsprechenden Daten fertig gefüllt für Testzweck.

bei mri kommen folgende Fehlermeldungen:
rsync: Failed to exec ssh: No such file or Directory(2)
rsync error: rsync in IPC code (code14) at pipe.c(84) [Sender=3.0ö4]
rsync: Connection unexpectedly closed (0 Bytes received so far) [Sender]
rsync error: error in rsync protocol data stream (code12) at io.c(632) [Sender=3.0.4]


Weiß jemand woran es liegt?
colinardo
colinardo 13.05.2015 aktualisiert um 17:50:04 Uhr
Goto Top
Zitat von @Nicole27:

Leider funktioniert es bei mir nicht. Ich habe folgende Zeile verwendet:

rsync -avzht --progress "/cygdrive/c/temp/zrdz/"
"Testuser@172.16.1.249:/var/www/extranet/fileadmin/user_upload/Website/Mein_Bereich/Test"
Siehe meinen letzten Post, dort stehen alle Möglichkeiten die du hast ohne ein Passwort eingeben zu müssen, welche einwandfrei funktionieren, nur mal ein bißchen Lesen face-wink !