Als Systemadministrator oder Linux-Power-User sind Sie wahrscheinlich auf das vielseitige Linux-Rsync-Tool gestoßen oder haben es sogar mehrmals verwendet, mit dem Benutzer Dateien schnell lokal und remote kopieren oder synchronisieren können. Es ist auch ein großartiges Tool, das häufig für Sicherungsvorgänge und Spiegelung verwendet wird.
Einige seiner herausragenden Merkmale und Vorteile sind:es ist insofern außergewöhnlich vielseitig, es kann lokal, zu/von einer entfernten Shell oder einem entfernten rsync kopieren, es ist auch bemerkenswert flexibel, indem es Benutzern ermöglicht, eine beliebige Anzahl von Dateien zum Kopieren anzugeben.
Empfohlener Text: 10 praktische Beispiele für den Rsync-Befehl unter Linux
Darüber hinaus erlaubt es das Kopieren von Links, Geräten, Datei- oder Verzeichnisbesitzern, Gruppen und Berechtigungen. Es unterstützt auch die Verwendung ohne Root-Privilegien und vieles mehr.
Ein zwingender Unterschied von rsync im Vergleich zu anderen Befehlen zum Kopieren von Dateien in Linux ist die Verwendung des Remote-Update-Protokolls, um nur die Unterschiede zwischen Dateien oder Verzeichnisinhalten zu übertragen.
Daher werden wir in diesem Artikel untersuchen, wie rsync uns helfen kann, nur neue oder geänderte Dateien oder Verzeichnisinhalte zu synchronisieren, während Backups und darüber hinaus unter Linux erstellt werden.
Zunächst müssen Sie sich daran erinnern, dass die herkömmliche und einfachste Form der Verwendung von rsync wie folgt ist:
# rsync options source destination
Lassen Sie uns dennoch auf einige Beispiele eingehen, um herauszufinden, wie das obige Konzept tatsächlich funktioniert.
Lokales Synchronisieren von Dateien mit Rsync
Mit dem folgenden Befehl können Sie Dateien aus meinen Dokumenten kopieren Verzeichnis nach /tmp/documents Verzeichnis lokal:
$ rsync -av Documents/* /tmp/documents
Im obigen Befehl ist die Option:
-a
– bedeutet Archivmodus-v
– bedeutet wortreich und zeigt Details zu laufenden Vorgängen
Standardmäßig rsync kopiert nur neue oder geänderte Dateien von einer Quelle zum Ziel, wenn ich eine neue Datei zu meinen Dokumenten hinzufüge Verzeichnis, das passiert, nachdem Sie denselben Befehl ein zweites Mal ausgeführt haben:
$ rsync -av Documents/* /tmp/documents
Wie Sie der Ausgabe des Befehls entnehmen können, wird nur die neue Datei in das Zielverzeichnis kopiert.
Empfohlener Text: So synchronisieren Sie zwei Apache-Webserver/Websites mit Rsync
Das --update
oder -u
Option erlaubt rsync um noch neue Dateien im Zielverzeichnis zu überspringen, und eine wichtige Option, --dry-run
oder -n
ermöglicht uns einen Testbetrieb ohne Änderungen durchzuführen. Es zeigt uns, welche Dateien kopiert werden sollen.
$ rsync -aunv Documents/* /tmp/documents
Nach einem Testlauf können wir dann auf das -n
verzichten und führen Sie eine echte Operation durch:
$ rsync -auv Documents/* /tmp/documents
Synchronisieren von Dateien von lokalem zu Remote-Linux
Im folgenden Beispiel kopiere ich Dateien von meinem lokalen Computer auf einen Remote-Server mit der IP-Adresse – 10.42.1.5 . Um nur neue Dateien auf dem lokalen Rechner zu synchronisieren, die auf dem Remote-Rechner nicht existieren, können wir den --ignore-existing
einfügen Möglichkeit:
$ rsync -av --ignore-existing Documents/* [email protected]:~/all/
Um anschließend nur aktualisierte oder geänderte Dateien auf dem Remote-Computer zu synchronisieren, die sich auf dem lokalen Computer geändert haben, können wir vor dem Kopieren der Dateien wie folgt einen Probelauf durchführen:
$ rsync -av --dry-run --update Documents/* [email protected]:~/all/ $ rsync -av --update Documents/* [email protected]:~/all/
Um vorhandene Dateien zu aktualisieren und die Erstellung neuer Dateien im Ziel zu verhindern, verwenden wir den --existing
Option.
Sie können den man rsync
durchlaufen lassen Seite, um weitere nützliche Optionen für die erweiterte Verwendung zu entdecken, wie ich bereits erwähnt hatte, rsync ist ein sehr leistungsfähiges und vielseitiges Linux-Tool, und viele Systemadministratoren und erfahrene Linux-Benutzer wissen, wie vorteilhaft es ist.
Am wichtigsten ist, dass Sie auch Ihre Meinung zu den Beispielen, die wir hier behandelt haben, mitteilen oder uns noch besser wertvolle Tipps zur Verwendung dieses wichtigen Befehlszeilentools über den Kommentarbereich unten geben können.