Der Befehl rsync, auch bekannt als Remote Sync, wird zum Übertragen und Synchronisieren von Dateien und Verzeichnissen zwischen Computern, Hosts, Remote-Shells usw. verwendet. Es ist ein leistungsstarkes Dienstprogramm, das Sie kennen sollten, wenn Sie mit Linux arbeiten.
Hier bei LinuxAPT werden wir untersuchen, wie Sie den rsync-Befehl auf Ihrem Ubuntu-Linux-System installieren, der auch in anderen Linux-Distributionen angewendet werden kann.
Wenn Sie Ihre Dateien mit dem Befehl scp synchronisieren möchten, besuchen Sie:https://linuxapt.com/blog/408-top-15-scp-command-examples-in-linux
Warum ist rsync einzigartig?
Die rsync-Befehle verwenden Komprimierung und Dekomprimierung beim Empfangen und Senden von Dateien, was bedeutet, dass sie sehr wenig Bandbreite verbrauchen.
Rsync aktualisiert nur die Unterschiede zwischen Quelle und Ziel, da es das Remote-Update-Protokoll verwendet.
Es unterstützt auch Eigentümer, Gruppen, Links, Berechtigungen und Geräte.
Um mehr der verfügbaren Optionen auf rsync zu sehen, verwenden Sie:
$ rsync –help
Wie installiere ich rsync auf Ihrem Ubuntu-Linux-System?
Um rsync zu installieren, müssen Sie den folgenden Befehl auf Ihrem System ausführen:
$ sudo apt-get install rsync
Was ist die Syntax von Rsync?
Die rsync-Syntax ist unten angegeben.
1. Übertragung oder Synchronisierung von lokal zu lokal:
$ rsync {option} {source} {destination}
2. Lokal-zu-Remote-Übertragung oder -Synchronisierung:
$ rsync {option} {source} {user@host:destination}
3. Remote-zu-Lokal-Übertragung oder -Synchronisierung:
$ rsync {option} {user@host:destination} {destination}
Hier,
- Quelle ist das Quellverzeichnis.
- Ziel ist das Zielverzeichnis.
- Option sind die rsync-Befehlsoptionen.
- Benutzer ist der entfernte Benutzername.
- Host ist die IP oder der entfernte Hostname.
Wie benutzt man rsync?
1. Dateien lokal kopieren
Um Dateien lokal zu kopieren, verwenden Sie:
$ rsync –a {filename} {destination}
Hier kopieren wir "source.zip" aus unserem aktuellen Verzeichnis nach Documents.
Sie können überprüfen, ob die Datei kopiert wurde, indem Sie alle Dateien und Verzeichnisse in Dokumente auflisten, indem Sie Folgendes verwenden:
$ ls
Sie werden sehen, dass die "source.zip" im Dokumentenverzeichnis vorhanden ist.
Wenn Sie der Datei im Ziel keinen Namen hinzufügen, wird derselbe Name wie in der Quelldatei kopiert. Um den Namen der Zieldatei zu ändern, verwenden Sie:
$ rsync –a {filename} {destination/filename}
In unserem Fall kopieren wir "source.zip" erneut, aber dieses Mal benennen wir es in "destination.zip" um.
"destination.zip" wurde in das Dokumentenverzeichnis kopiert.
2. Kopieren Sie den Inhalt eines Verzeichnisses zum Ziel
Sie können den folgenden Befehl verwenden, um den Inhalt Ihres Quellverzeichnisses in das Ziel zu kopieren:
$ rsync –av {source}/ {destination}
Nun sehen Sie, dass der Inhalt des „Quell“-Verzeichnisses in das „Ziel“-Verzeichnis kopiert wird.
3. Kopieren Sie das gesamte Verzeichnis zum Ziel
Wenn Sie nur den Inhalt Ihres Verzeichnisses zum Ziel kopieren möchten, verwenden Sie:
$ rsync –av {source} {destination}
Nun sehen Sie, dass das Verzeichnis „Source“ und sein Inhalt in das Verzeichnis „Destination“ kopiert werden.
4. Fortschritt anzeigen
Verwenden Sie zum Anzeigen des Fortschritts:
$ rsync –rv –progress {source} {destination}
5. Dateien ignorieren
Wenn Sie bestimmte Dateien ignorieren möchten, verwenden Sie:
$ rsync -vr --exclude '{condition}' {source} {destination}
Das "Source"-Verzeichnis enthält einige Dateien, wenn Sie den "ls"-Befehl ausführen.
Sie können Dateien ignorieren, die mit einem „s“ beginnen.
6. Datei und Verzeichnisse auflisten
rsync kann verwendet werden, um den Inhalt einer Quelle aufzulisten:
$ rsync {filename}
Dieser Befehl listet den Inhalt des Dokumentenverzeichnisses auf.
7. Dateien von einem lokalen auf einen entfernten Rechner kopieren
Um Dateien auf einen Remote-Rechner zu verschieben, müssen Sie openssh-server installieren. Der Befehl dafür lautet:
$ sudo apt update
$ sudo apt install openssh-server
Sobald dies installiert wurde, können Sie den folgenden Befehl verwenden, um Ihre Datei oder Ihr Verzeichnis zu verschieben:
$ rsync –a {source} {remote username@remote IP:/destination}
Sie werden nach dem Passwort des Remote-Rechners gefragt.
8. Dateien von einem entfernten auf einen lokalen Rechner kopieren
Sie können den folgenden Befehl wie im obigen Beispiel verwenden:
$ rsync –a {remote source} {local username@local IP:/destination}
9. Aktuelles Datum zur Zieldatei hinzufügen
Sie können das Datum zum Namen Ihrer Zieldatei oder Ihres Zielverzeichnisses hinzufügen mit:
$ rsync -av /home/test/Desktop/Linux /home/test/Desktop/rsync$(date +\\%Y-\\%m)
Anzeigen der Unterschiede zwischen Quell- und Zieldatei
Der folgende Befehl kann verwendet werden, um die Unterschiede zwischen den Quell- und Zieldateien anzuzeigen:
$ rsync –avzi {source}/ {destination}/
Hier,
Der Parameter "f" bedeutet Datei. Weitere Parameter sind:
- t:Änderung des Zeitstempels
- d:Zieländerung
- s:Änderung der Dateigröße
10. Bandbreite beim Übertragen von Dateien begrenzen
Um die Bandbreite beim Übertragen von Dateien zu begrenzen, verwenden Sie:
$ rsync -vr --bwlimit=1000 {source}/* {destination}
Wie deinstalliere ich rsync von Ihrem Ubuntu 21.04?
Um nur das rsync-Paket zu deinstallieren, können wir den folgenden Befehl verwenden:
$ sudo apt-get remove rsync
Wir können den folgenden Befehl verwenden, um rsync-Konfigurationen, Daten und alle ihre Abhängigkeiten zu entfernen, wir können den folgenden Befehl verwenden:
$ sudo apt-get -y autoremove --purge rsync