Wie kann ich sehr große Dateien/Verzeichnisse „offline“ von einem Host auf einen anderen kopieren?

Wie kann ich sehr große Dateien/Verzeichnisse „offline“ von einem Host auf einen anderen kopieren?

Ich habe vor, mir bald einen VPS-Server für einige der ressourcenintensiven Websites zuzulegen, die ich verwalte. Ich lebe in einem Land, in dem eine Internetgeschwindigkeit von 1 Mbit/s ein Luxus und ständige, unterbrechungsfreie Stromversorgung ein Mythos ist.

Folgendes möchte ich erreichen:

  • So kopieren Sie die Dateien und Verzeichnisse über SSH/SCP vom Quellserver auf den Zielserver.
  • Wie kann ich das Kopieren der Dateien zwischen den Servern aufrechterhalten, auch wenn meine Internetverbindung unterbrochen wird oder die Stromversorgung ausfällt?
  • Wie erreiche ich, dass die Dateien weiterhin zwischen beiden Servern kopiert werden, wenn ich mein Terminalfenster schließe?

Ich weiß, dass das Kopieren über scp funktioniert, aber es sieht nicht so aus, als ob es weiter funktioniert, wenn ich offline gehe.

Antwort1

rsync -azvP source_directory user@remote:remote_directory

sollte Ihnen das Kopieren von Dateien zwischen zwei Computern ermöglichen und gleichzeitig den Fortschritt bei Unterbrechungen speichern.

Hier finden Sie auch eine Erklärung zu jeder Flagge.http://explainshell.com/explain?cmd=rsync+-azvP

Wenn Sie dies auf einem Server ausführen möchten, ohne angemeldet zu sein, können Sie den obigen Befehl an den nohupBefehl übergeben. Sie können dies auch in einer tmux-Sitzung ausführen, wodurch Sie den Fortschritt überwachen (oder den Befehl neu starten) können, indem Sie die Sitzung anhängen, wenn Sie sich bei Ihrem Computer anmelden.

Sie können eine tmux-Sitzung starten, indem Sie tmuxauf Ihrem Server eingeben. Anschließend können Sie den Befehl rsync ausführen und die tmux-Sitzung trennen, indem Sie CTRL+bund dann eingeben d. Das Abmelden hat keine Auswirkungen auf den Kopiervorgang. Wenn Sie sich wieder anmelden, können tmux attachSie eingeben und den Fortschritt des Kopiervorgangs anzeigen.

Hoffe, das hilft! Sagen Sie mir Bescheid, wenn ich etwas klarstellen kann.

Antwort2

Ich empfehle Ihnen dringend, sich den Befehl rsync einmal anzusehen. Der Befehl rsync ist nützlich, da er Übertragungen problemlos fortsetzen kann. Rsync läuft standardmäßig über einen SSH-Transport, Sie benötigen lediglich die rsync-Binärdatei auf dem Client und dem Server.

Rsync erkennt, was bereits übertragen wurde, und überträgt nur die Dateien und Teile von Dateien, die noch nicht übertragen wurden.

Antwort3

Ich glaube, das sollte das Problem lösen:

nohup scp -r big-folder remote-machine:/home/user/ &

Dieser Befehl startet den Kopiervorgang und setzt den Kopiervorgang nach Ihrer Abmeldung fort.

verwandte Informationen