Workshop

Automatische Backups mit Linux

Komplettes Backup mit rsync

Sollte rsync nicht auf Ihrem System installiert sein, so holen Sie das bitte nach.

Das Programm gehört zweifelsfrei zu den effizientesten und schnellsten Backup-Methoden. Dabei kopiert die Anwendung eigentlich nur Daten von Quelle nach Ziel. Allerdings verwendet rsync einen speziellen Algorithmus, der nur inkrementelle Abgleiche tätigt. Bei einer modifizierten Datei repliziert die Software somit nur die Änderungen und nicht das gesamte File. Gerade bei großen Dateien mit kleinen Änderungen verringert diese Vorgehensweise die Netzlast enorm. Es ist mit rsync auch möglich, Quelle und Ziel auf dem exakt gleichen Stand zu halten. Der grundsätzliche Aufruf ist

rsync [Optionen] Quelle Ziel

Die Ziele können zum Beispiel ein entfernter Rechner, eine lokale Festplatte oder ein USB-Stick sein.

Das Programm bringt eine Vielzahl an Optionen mit. Die Tabelle zeigt die wichtigsten Schalter im Überblick.

Die wichtigsten Schalter von rsync

Schalter

Funktion

-a

Archive-Modus, äquivalent zu -rlptgoD

-r

rekursiv, alle Unterverzeichnisse

-l

kopiert symbolische Links als symbolische Links und nicht als Datei

-p

bewahrt die Berechtigungen der Dateien

-t

bewahrt die Zeitstempel der Dateien

-g

bewahrt die Gruppenberechtigungen der Dateien

-o

bewahrt den Besitzer der Datei (nur root)

-D

bewahrt Devices

-v

mehr Ausgabetext auf dem Bildschirm

-q

weniger Ausgabetext auf dem Bildschirm

-u

nur Updates; überschreibt keine neueren Dateien

-W

kopiert die gesamte Datei, nicht nur das Delta

-n

Trockenlauf, zeigt nur an, was gemacht werden würde

-e

spezifiziert die remote shell (zum Beispiel ssh)

-z

Dateien komprimieren

-4

vorzugsweise IPv4 benutzen

-6

vorzugsweise IPv6 benutzen

--delete

alle Dateien, die im Ziel, aber nicht in der Quelle vorhanden sind, werden gelöscht

--exclude=<Ausdruck>

Ausschluss bestimmter Dateien

--exclude-from=<Datei>

Ausschluss bestimmter Dateien, die in Listenform in <Datei> stehen

-- =<Ausdruck>

Diese Dateien einbeziehen

--include-from=<Datei>

Dateien einbeziehen, die in Listenform in <Datei> stehen

--files-from=<Datei>

Eine exakte Liste von Dateien aus <Datei> wird kopiert

Ein Blick in die man-Page gibt einen Gesamtüberblick.

man rsync