Mobile-Menu

Speichertipp: Daten schneller lokal und im Netzwerk übertragen Mit rsync in Linux Daten kopieren und Verzeichnisse synchronisieren

Von Thomas Joos 3 min Lesedauer

Anbieter zum Thema

Rsync ist ein leistungsstarkes und vielseitiges Werkzeug zur Datenübertragung und Synchronisation zwischen Computern mit Linux. Das Tool verwendet einen differenziellen Datenübertragungsalgorithmus, der nur die geänderten Teile von Dateien überträgt, was Bandbreite und Zeit spart.

Die Datenübertragung und -synchronisierung, zum Beispiel für Backups, wird in Linux mit Hilfe des Tools rsync effektiver.(Bild:  frei lizenziert /  Pixabay)
Die Datenübertragung und -synchronisierung, zum Beispiel für Backups, wird in Linux mit Hilfe des Tools rsync effektiver.
(Bild: frei lizenziert / Pixabay)

Rsync gehört zu den besten Tools bei der Übertragung von Daten zwischen lokalen Speichermedien oder im Netzwerk. Bei der Übertragung setzt rsync auf einen differenziellen Datenübertragungsalgorithmus und komprimiert die Dateien gleichzeitig. Das macht die Abläufe schneller und effektiver. Wir zeigen im folgenden Tipp einige Beispiele dazu.

Rsync in der Praxis: lokale Synchronisierung und Netzwerksynchronisierung

Lokale Synchronisation zweier Verzeichnisse ist mit rsync genauso möglich wie die Übertragung im Netzwerk. Um lokale Verzeichnisse abzugleichen, kommt folgender Befehl zum Einsatz:

rsync -av /pfad/zum/quellverzeichnis/ /pfad/zum/zielverzeichnis/

In diesem Beispiel werden der Inhalt des Quellverzeichnisses und das Zielverzeichnis synchronisiert. Die Optionen „-a“ (Archiv-Modus) und „-v“ (Verbose-Modus) werden verwendet, um die Übertragung der Dateiattribute zu erhalten und den Fortschritt anzuzeigen.

Bei der Übertragung im Netzwerk kann folgender Befehl genutzt werden:

rsync -avz -e ssh benutzer@remote-server:/pfad/zum/quellverzeichnis/ /pfad/zum/zielverzeichnis/

Hier wird das Quellverzeichnis auf einem Remote-Server mit dem Zielverzeichnis auf dem lokalen Rechner synchronisiert. Die Option „-z“ (Kompression) wird hinzugefügt, um die Daten vor der Übertragung zu komprimieren. Die Option „-e ssh“ stellt sicher, dass die Verbindung über das sichere SSH-Protokoll erfolgt.

Inkrementelles Backup mit Hardlinks

In folgendem Beispiel erstellt rsync ein inkrementelles Backup des Quellverzeichnisses. Die Option „--delete“ löscht im Zielverzeichnis Dateien, die im Quellverzeichnis nicht mehr vorhanden sind. „Mit --link-dest“ werden Hardlinks zu unveränderten Dateien im vorherigen Backup erstellt, wodurch Speicherplatz gespart wird:

rsync -av --delete --link-dest=/pfad/zum/vorheriges_backup/ /pfad/zum/quellverzeichnis/ /pfad/zum/aktuelles_backup/

Spiegelung von Webseiten

Im nächsten Beispiel wird der Inhalt einer Webseite (unter „/var/www/“ auf dem Webserver) auf dem lokalen Rechner gespiegelt. Die Option „--exclude“ wird verwendet, um bestimmte Dateien oder Dateitypen (hier: „*.log“) von der Synchronisation auszuschließen.

rsync -avz --delete --exclude='*.log' user@webserver:/var/www/ /pfad/zum/lokales_spiegel/

Fortgeschrittene Möglichkeiten mit rsync: Bandbreite begrenzen

In fortgeschrittenen Anwendungsfällen von rsync können weitere Optionen genutzt werden, um den Synchronisationsprozess besser an die individuellen Anforderungen anzupassen.

Synchronisation mit Bandbreitenbegrenzung:

rsync -avz --bwlimit=100 /pfad/zum/quellverzeichnis/ /pfad/zum/zielverzeichnis/

Dieser Befehl begrenzt die Bandbreitennutzung von rsync auf 100 Kilobyte pro Sekunde, um die Netzwerkbelastung während der Übertragung zu reduzieren. Die Option „--bwlimit“ ermöglicht es, die maximale Übertragungsgeschwindigkeit in Kilobyte pro Sekunde festzulegen.

Synchronisation mit Filterregeln:

rsync -av --filter='+ */' --filter='- *.jpg' /pfad/zum/quellverzeichnis/ /pfad/zum/zielverzeichnis/

Der Befehl synchronisiert Verzeichnisse vom Quellverzeichnis zum Zielverzeichnis, aber keine JPEG-Dateien (mit der Endung „.jpg“). Die Option „--filter“ erlaubt es, komplexe Filterregeln zu definieren, um bestimmte Dateien und Verzeichnisse ein- oder auszuschließen. „+ */“ bedeutet hier „inkludiere alle Verzeichnisse“, und „- *.jpg“ heißt „exkludiere alle JPEG-Dateien“.

Aktuelles eBook

Open-Source-Storage – Speicher-Software zum Nulltarif

eBook Open-Source-Storage
eBook „Open-Source-Storage“
(Bild: Storage-Insider)

Der Bedarf an Speicherkapazität steigt von Tag zu Tag – nicht nur, um die Daten von Produkten, Kunden und Transaktionen zu sichern, sondern auch, um Compliance-Anforderungen zu erfüllen und Auditierungen gut zu überstehen. Eine leistungsfähige Storage-Lösung ist also gefragt. Eine kostenlose Option bietet Open-Source-Software für Storage, insbesondere dann, wenn man sie selbst den eigenen Anforderungen anpassen darf.

Die Themen im Überblick:

  • Warum Storage als Open Source?
  • NAS & Objektspeicher
  • Backup & Disaster Recovery
  • Dateisysteme
  • Technologiestapel & Ökosysteme

(ID:49434067)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Data-Storage und -Management

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung