Übertragen Sie eine Datei über eine instabile SSH-Verbindung

23

Ich versuche, einige große Dateien (ca. 10 GB) mit einer langsamen Upload-Geschwindigkeit (200 kb / s) auf eine häufig getrennte SSH-Verbindung hochzuladen (aufgrund schlechter Netzwerkbedingungen).

Ich versuche es zu benutzen scp, aber wenn es einen besten Weg über SSH gibt, bin ich damit einverstanden.

Wie geht das am besten?

Ich habe versucht, es mit in mehrere Teile aufzuteilen split, aber es ist nicht wirklich effizient, da es vor und nach der Übertragung viel Handarbeit erfordert.

blue112
quelle
2
rsync ist besser. Es kann neu gestartet werden, dh Sie können an der Stelle weitermachen, an der Sie aufgehört haben, wenn die Verbindung getrennt wurde. Sie werden wahrscheinlich die --partialFlagge verwenden wollen. Und standardmäßig läuft es über ssh. Sie könnten es mit einem aggressiven Komprimierungsprogramm wie 7z kombinieren, aber Sie benötigen viel Speicher, und es wird noch eine Weile dauern.
Faheem Mitha
Ich habe es mit --partial versucht, aber es ist gerade vorbei ...
blue112 30.03.15
"Sterne vorbei"? Du meinst fängt von vorne an? Dies sind die Fahnen Ich verwende: rsync -abvz --partial. Können Sie eine Beispielsitzung zeigen?
Faheem Mitha
@FaheemMitha Ich habe versucht, es zu reproduzieren, aber es scheint jetzt zu funktionieren ...
blue112
Es ist nicht möglich, einen Upload mit fortzusetzen scp. Es ist möglich, einen Upload mit fortzusetzen rsync --partial. Es ist nicht möglich, einen Upload mit fortzusetzen sftp. Für die andere Richtung, dh die Wiederaufnahme Downloads, die Sie verwenden können rsync --partial, sftp regetoder sftp get -a.
Pkt

Antworten:

32

Verwenden Sie rsync mit der Option --partial

rsync -av --partial sourcedir user@desthost:/destinationdir

Das --partial behält teilweise übertragene Dateien bei. Wenn Sie die rsync-Übertragung nach einer unterbrochenen ssh-Verbindung fortsetzen, werden teilweise übertragene Dateien ab dem Punkt fortgesetzt, an dem die ssh-Verbindung unterbrochen wurde, und erfolgreich übertragene Dateien werden nicht erneut übertragen.

Überlegen Sie auch, ob Sie die Option -z verwenden möchten, wenn Sie der Meinung sind, dass die zu übertragenden Dateien erheblich komprimiert werden können. Beispiel: Protokolldateien mit wiederholtem Text.

GMaster
quelle