GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So übertragen Sie Dateien mit Rsync über SSH

Einführung

Rsync steht für „Remote Sync“. Der rsync Mit dem Befehl können Sie Daten zwischen verschiedenen Computern und Verzeichnissen übertragen und synchronisieren. Mit dem Secure Shell (SSH)-Protokoll können Sie Ihre Dateien sicher an einen anderen Ort kopieren.

Das rsync-Tool hat viele Vorteile im Vergleich zu anderen Methoden zum Kopieren von Dateien. Es verwendet sowohl Komprimierung als auch Dekomprimierung beim Senden und Empfangen von Dateien. Das Tool überträgt nur neue oder aktualisierte Dateien, was Bandbreite spart und schnellere Übertragungszeiten bringt.

Folgen Sie dieser Anleitung, um zu erfahren, wie Sie rsync über SSH zum Übertragen oder Kopieren von Dateien verwenden.

Voraussetzungen

  • Benutzer mit sudo oderroot Privilegien
  • SSH-Zugriff an einen Server über die Befehlszeile/das Terminalfenster
  • Rsync auf dem lokalen Computer und dem Zielcomputer installiert

Rsync-Installation überprüfen

Die neuesten Linux-Distributionen haben rsync standardmäßig. Um zu überprüfen, ob auf Ihrem System rsync installiert ist, führen Sie den Installationsbefehl aus.

Für Debian und Ubuntu verwenden Sie apt-get :

sudo apt-get install rsync

Wenn rsync bereits installiert ist, zeigt die Ausgabe die aktuelle Version des Tools.

Auf RPM-basiert Maschinen wie CentOS verwenden:

sudo yum install rsync

Dateien mit Rsync über SSH übertragen

Bevor Sie mit der Übertragung von Dateien und Verzeichnissen mit rsync über SSH beginnen können, stellen Sie sicher, dass Sie SSH verwenden können, um eine Verbindung zu einem Remote-Server herzustellen. Nach der Überprüfung können Sie mit der Sicherung Ihrer Daten beginnen. Stellen Sie sicher, dass Ihr Zielsystem über ausreichend Speicherplatz verfügt.

Die Syntax zum Kopieren von Dateien auf einen Remote-Server über SSH mit rsync Befehl ist:

rsync OPTION SourceDirectory_or_filePath [email protected]_or_name:Target

rsync-Befehlsbeispiele

Folgen Sie dem Rest des Leitfadens, um Beispiele für die häufigsten rsync-Anwendungsfälle zu sehen .

Übertragen Sie eine bestimmte Datei mit Rsync

Um eine einzelne Datei auf einen Remote-Rechner zu übertragen, geben Sie den vollständigen Pfad der Quelldatei ein. Zum Beispiel:

rsync ~/Dir1/source.pdf [email protected]:~/Desktop/test

Stellen Sie sicher, dass Sie die Anführungszeichen für Dateien verwenden, die Leerzeichen im Namen enthalten. Zum Beispiel:

rsync ~/Desktop/Dir1/"source pdf sample.pdf" [email protected]:~/Desktop/test

Inhalte eines Verzeichnisses mit Rsync übertragen

Beim Synchronisieren von Verzeichnisinhalten mit rsync über SSH gibt es einige Optionen.
Geben Sie Folgendes ein, um alle Dateien von einem Quellverzeichnis zum Ziel auf einem Remote-Host zu übertragen:

rsync ~/SourceDirectory/* [email protected]:~/Destination

Das Sternchen (*) weist das Tool an, alle Dateien im Quellverzeichnis einzuschließen. Unterverzeichnisse sind nicht übertragen .

Zum Beispiel:

Die Ausgabe zeigt die Verzeichnisse, die rsync während der Übertragung übersprungen hat.

Um alle Unterverzeichnisse aus dem Quellverzeichnis einzuschließen, verwenden Sie -r (rekursiv) oder -a (Archiv) Möglichkeit. Das -a Flagge ist, was wir empfehlen. Diese Option synchronisiert rekursiv und behält alle Berechtigungs- und Dateieinstellungen bei. Dieses Mal verwenden Sie nicht das Sternchen im Quellpfad.

rsync -a ~/Desktop/Dir1/ [email protected]:~/Desktop/test

Wenn Sie den Befehl in diesem Format ausführen, überträgt rsync alle Dateien und Unterverzeichnisse aus dem Quellverzeichnis an den Zielspeicherort. Aus unserem Beispiel oben, dem test Ordner enthält den Inhalt von Dir1 Quelle, wenn die Übertragung abgeschlossen ist.

Um zu verhindern, dass Dateien kopiert werden, lesen Sie unsere Anleitung zum Ausschließen von Dateien und Verzeichnissen bei der Datenübertragung mit dem Befehl rsync.

Überprüfen Sie den Fortschritt der Rsync-Dateiübertragung

Um den Status von rsync-Übertragungen zu überprüfen, verwenden Sie -P Möglichkeit. Diese Option zeigt die Übertragungszeiten sowie die Namen der synchronisierten Dateien und Verzeichnisse an.

Wenn es ein Problem mit Ihrer Verbindung gibt und die Synchronisierung unterbrochen wird, -P setzt Ihre Übertragungen fort.

Führen Sie den Befehl in diesem Format aus, um rekursiv zu synchronisieren und den Status der Übertragung zu überprüfen:

rsync -aP ~/SourceDirectory/ [email protected]:~/Destination

Zum Beispiel:

Wenn Sie denselben Befehl erneut ausführen, ohne dass Änderungen im Quellverzeichnis vorgenommen wurden, findet die Übertragung nicht statt. Der Grund ist, dass rsync nur Änderungen in Dateien und neue Dateien überträgt. In diesem Fall zeigt die Ausgabe nur die folgende Zeile:

Wenn es auch nur in einer Quelldatei eine Änderung gibt, erkennt rsync sie und synchronisiert sie mit dem Ziel.

Wir haben eine Änderung in einer Datei vorgenommen und denselben Befehl erneut ausgeführt:

Die Ausgabe zeigt das Quellbeispiel2 Datei wurde übertragen, da rsync festgestellt hat, dass wir die Datei geändert haben.


Ubuntu
  1. Herunterladen und Hochladen von Dateien über SSH

  2. Wie kann man Rsync selektiv stumm schalten?

  3. Sichern Sie Ihre Dateien mit rsync

  4. Wie man Verzeichnisse über ssh unterscheidet

  5. Verwenden Sie ein Gerät über SSH?

So übertragen Sie Dateien mit Rsync über SSH

Setzen Sie teilweise übertragene Dateien über SSH mit Rsync fort

So verwenden Sie den Befehl rsync, um Daten lokal und über SSH zu kopieren

Kopieren Sie Daten mit rsync auf Ubuntu

So übertragen Sie Dateien mit Commander One

So konfigurieren Sie ein Backup mit rsync unter Ubuntu 18.04