AA_photocase_u_bahn_49490.jpg

© photocase.com

Dateien abgleichen mit Rsync

Synchroner Datenstrom

Mit Rsync synchronisieren Sie Daten – auf dem lokalen Rechner oder über ein Netzwerk auf entfernte Maschinen. Dank guter Zusammenarbeit mit SSH überträgt das Tool die Daten verschlüsselt und arbeitet auch dann noch recht flott, wenn es an Bandbreite mangelt.

Zu Befehl

Auch wenn sich viele Dinge bequem über grafische Oberflächen wie KDE oder Gnome regeln lassen – wer sein Linux-System richtig ausreizen möchte, kommt um die Kommandozeile nicht herum. Abgesehen davon gibt es auch sonst viele Situationen, in denen es gut ist, sich im Befehlszeilendschungel ein wenig auszukennen.

Rsync bringt Licht ins Versionschaos und hilft dabei, Datenbestände aktuell zu halten. Das Synchronisierungs-Programm bietet Optionen, um Dateieigenschaften zu erhalten, arbeitet mit SSH zusammen und eignet sich ideal, um auch große Datenmengen schnell zu übertragen, wenn auf der Zielseite schon eine ältere Kopie vorliegt: Es überprüft, welche Unterschiede zwischen Quelle und Ziel existieren, und überträgt nur die geänderten Teile der Daten.

Alles synchron

Rsync vergleicht die Daten zweier Rechner miteinander, der grundsätzliche Aufruf lautet daher: rsync [Optionen] Quelle Ziel. Hier ist die Wahl von Quelle und Ziel entscheidend. Überlegen Sie vorher genau, in welche Richtung Sie synchronisieren, um Datenverlust auszuschließen. Der Kasten "Daten unisono" zeigt darüber hinaus einen Ausweg aus der Einbahnstraße mittels der Software Unison, die Abgleiche in beide Richtungen durchführt.

Rsync bietet eine elegante Hilfe zum Prüfen des Datentransfers: Zusammen mit der Option -n startet das Programm lediglich einen Testlauf und verrät, was im Ernstfall passiert:

$ rsync -n dir1/* dir2/
skipping directory dir1/dir1
skipping directory dir1/dir2
skipping non-regular file "einl.↩
tex"
kap01.tex
kap02.tex
kap03.tex
…

Die Ausgabe zeigt: Rsync würde normale Dateien übertragen, Verzeichnisse und Symlinks aber ausklammern. Letztere bezeichnet das Tool als non-regular files. Um Unterverzeichnisse rekursiv bis in den letzten Winkel zu übertragen, setzen Sie die Option -r ein, und Verweise auf andere Dateien erwischen Sie, wenn Sie zusätzlich -l angeben; eine Kombination der Optionen ist möglich:

$ rsync -rl ordner1/* ordner2/
building file list … done
einl.tex -> einl_neu.tex
kap01.tex
…

Für den Umgang mit symbolischen Links bringt Rsync eine alternative Option mit: Ersetzen Sie -l durch -L, löst das Programm die Verknüpfung, und die ehemaligen Symlinks finden Sie anschließend als normale Dateien im Zielverzeichnis wieder.

Kampf mit dem Schrägstrich

Anders als bei Programmen, wie Scp oder Cp, gibt bei Rsync der an einen Verzeichnisnamen angehängte Schrägstrich Ausschlag über die Wirkungsweise des Werkzeugs. Lautet der Aufruf beispielsweise rsync -a Quelle/Ordner Ziel überträgt Rsync das Verzeichnis Ordner mitsamt seinem Inhalt ins Zielverzeichnis.

Hängen Sie hingegen einen Schrägstrich an das Quellverzeichnis, wandert nur der Inhalt von Ordner ans Ziel – und zwar direkt ins Zielverzeichnis hinein (Abbildung 1).

Abbildung 1: Der Schrägstrich entscheidet: Kopiert Rsync nur den Inhalt oder das Verzeichnis selbst?

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Synchron schalten
    Mit Rsync synchronisieren Sie Daten entweder auf einem lokalen Rechner oder über ein Netzwerk. Vor dem eigentlichen Abgleich überprüft das Programm, welche Unterschiede es zwischen Quell- und Zieldateien gibt, und überträgt nur die Änderungen.
  • Hüben wie drüben
    Mit "rsync" synchronisieren Sie Dateien auf einem lokalen Rechner oder über ein Netzwerk. Beim Abgleich überprüft das Programm, welche Unterschiede es zwischen Quell- und Zieldateien gibt, und überträgt nur die Änderungen.
  • Daten synchronisieren mit Unison
    Wenn Sie Datenbestände auf verschiedenen Rechnern bearbeiten, stellt sich schneller als gedacht ein unüberschaubares Versionswirrwarr ein. Unison hilft, Dateien und Verzeichnisse "unisono" zu halten.
  • rsync
    Mit dem Programm rsync [1] lassen sich lokal oder remote Dateien und Verzeichnisse synchronisieren. Dazu wird das "rsync remote-update protocol" benutzt, d. h. es wird zunächst auf Unterschiede zwischen Quelle und Ziel geprüft, bevor die eigentliche Übertragung beginnt – auf diese Weise wird das Transfervolumen minimiert.
  • Datensicherung mit Shell-Kommandos
    Für die Datensicherung können Sie komfortable Backupprogramme verwenden – doch die müssen Sie erst konfigurieren. Wenn es schnell gehen soll, reicht ein einziger Befehl in der Shell.
Kommentare

Infos zur Publikation

LU 12/2016: Neue Desktops

Digitale Ausgabe: Preis € 5,99
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Aktuelle Fragen

Drucker Epson XP-332 unter ubuntu 14.04 einrichten
Andrea Wagenblast, 30.11.2016 22:07, 2 Antworten
Hallo, habe vergeblich versucht mein Multifunktionsgerät Epson XP-332 als neuen Drucker unter...
Apricity Gnome unter Win 10 via VirtualBox
André Driesel, 30.11.2016 06:28, 2 Antworten
Halo Leute, ich versuche hier schon seit mehreren Tagen Apricity OS Gnome via VirtualBox zum l...
EYE of Gnome
FRank Schubert, 15.11.2016 20:06, 2 Antworten
Hallo, EOG öffnet Fotos nur in der Größenordnung 4000 × 3000 Pixel. Größere Fotos werden nic...
Kamera mit Notebook koppeln
Karl Spiegel, 12.11.2016 15:02, 2 Antworten
Hi, Fotografen ich werde eine SONY alpha 77ii bekommen, und möchte die LifeView-Möglichkeit nu...
Linux auf externe SSD installieren
Roland Seidl, 28.10.2016 20:44, 1 Antworten
Bin mit einem Mac unterwegs. Mac Mini 2012 i7. Würde gerne Linux parallel betreiben. Aber auf e...