Datensicherung unter Linux
Willemers Informatik-Ecke
Die Datensicherung unter Linux wird dadurch sehr einfach, weil alle Daten eines Benutzers bei Linux unter seinem Heimatverzeichnis liegen.

Komplette Sicherung der eigenen Daten

Wir wollen das komplette eigene Verzeichnis in einer Datei auf einem externen Medium speichern. Dazu müssen wir erst erfahren, wie das externe Medium heißt und wie es erreichbar ist.

Das externe Speichermedium

Schließen Sie ein externes Speichermedium wie einen USB-Stick oder eine externe Festplatte an. Das externe Gerät sollte genug Platz haben, um Ihre Daten aufnehmen zu können.

Diese externe Platte meldet sich normalerweise automatisch an. Es erscheint ein Dateimanager, der den Inhalt der Festplatte zeigt. Das Gerät wird normalerweise automatisch unter dem folgenden Pfad eingebunden:

/media/(Benutzername)/(Gerätekennung)

Er wird in der Zeile darüber angezeigt. Auf meinem Computer lautet der Ort, unter dem einer meiner USB-Sticks eingesteckt wurde, beispielsweise

/media/arnold/3F0205427D55C194

Falls Sie den Pfad des USB-Sticks nicht über einen Dateimanager sehen können, gibt es einen kleinen Trick. Tippen Sie den Befehl bis zu diesem Punkt:

tar cfz /media/arnold/
Drücken Sie nun die Tabtaste. Diese finden Sie auf der linke Tastaturreihe drei Tasten über der [Strg]-Taste. Es ist die Taste, die einen Pfeil nach rechts mit einem Stop aufweis -->|. Eventuell sind auch zwei solche Pfeile gegeneinander gerichtet. Nach dem Drüchen der Pfeiltaste ergänzt Linux den Namen automatisch. Sollten Sie zwei USB-Sticks oder eine zusätzliche CD eingelegt haben, werden in einer weiteren Zeile diese angezeigt.
$ tar cfz /media/arnold/
3F0205427D55C194/ Transcend/        
$ tar cfz /media/arnold/
Hier sind zwei USB-Sticks eingelegt. Einmal 3F0205427D55C194 von oben und einmal einer mit dem Namen Transcend. Nun übernehmen Sie den gewünschten USB-Stick in den Befehl.

Komplettsicherung

Wenn ich nun eine Vollsicherung meiner Daten auf diesen USB-Stick schaffen wollte, würde ich den folgenden Befehl absetzen:
tar cfz /media/arnold/3F0205427D55C194/dasi20201017.tgz .
Wenn der Cursor wiedererscheint, ist die Sicherung abgeschlossen. Auf dem Stick müsste nun die Datei dasi20201017.tgz entstanden sein. Achten Sie bitte unbedingt auf den Punkt am Ende des Befehls!

Rücksicherung

Die gesicherte Datei enthält nun alle Daten des Heimatverzeichnisses. Wenn Sie diese Daten zurückholen wollen, müssen Sie wieder den Befehl tar in einer leichten Abwandlung verwenden. Sollen Ihre Daten beispielsweise auf einem andere PC geladen werden, weil der alte in Rauch aufgegangen ist und der neue frisch mit Linux installiert ist, geben Sie folgenden Befehl

tar xfz /media/arnold/3F0205427D55C194/dasi20201017.tgz
Achten Sie darauf, wo Ihr Arbeitsverzeichnis ist. Sofern Sie keinen cd-Befehl gegenben haben, befinden Sie sich noch in der Wurzel Ihres Heimatverzeichnisses. So soll es auch sein, wenn Sie eine Datensicherung zurückziehen wollen.

Um sicherzustellen, dass Sie in der Wurzel des Heimatverzeichnisses stehen, geben Sie einfach nur cd ein oder öffnen Sie ein frisches Terminalfenster.

Details zum Datensicherungstool tar

Das klassische Datensicherungstool von UNIX ist auch unter Linux verfügbar. Mit dem Programm tar kann ein Verzeichnis in einer Datei archiviert werden. Da Bandlaufwerke eine spezielle Art von Datei sind, sind auch Sicherungen auf Band kein Problem.

Befehlskürzel nach dem tar

Auf den Befehl tar folgen direkt eine Kombination von Buchstaben. Der erste davon gibt die Aktivität an. Ein c besagt, dass eine Sicherung erstellt werden soll, ein x, dass die Sicherung ausgelesen werden soll.

Das f taucht (außer in speziellen Situationen wie Bandsicherungen) immer auf. Das f besagt, dass die Sicherung in eine Datei erfolgt. Dann muss dem Befehl allerdings auch gesagt werden, wie die Datei heißt und wo sie ist.

Das z besagt, dass die Datensicherung komprimiert werden soll. Eine mit z erzeugte Datei benennt man üblicherweise mit der Endung .tgz, Sicherungen ohne z, also ohne Komprimierung benennt man mit der Endung .tar.

Weitere Argumente

Nach dem Befehlskürzel erscheint zunächst der Dateiname der Sicherungsdatei inklusive Pfad, sofern ein f in den Befehlskürzeln auftaucht. Beim Erzeugen einer Datensicherung muss am Schluss mindestens ein Verzeichnis auftauchen, das gesichert werden soll. Im Beispiel oben wurde ein Punkt verwendet. Der besagt, dass das aktuelle Arbeitsverzeichnis gesichert werden soll. Wenn zuvor kein cd-Befehl angegeben wurde, ist das die Wurzel des Heimatverzeichnisses.

rsync speichert Unterschiede

Der Befehl rsync speichert Verzeichnisse in Verzeichnisse. Das hat den Vorteil, dass man einzelne Dateien aus der Datensicherung zurückholen kann. Der Nachteil: Man benötigt ein externes Laufwerk, das ein Linux-Dateisystem verwendet, damit die Dateirechte und die Dateinamen erhalten bleiben.

Die weitere Stärke von rsync liegt darin, dass es vor dem Kopieren auf eine vorige Datensicherung prüft, ob die Datei schon in dieser Version gesichert wurde. In diesem Fall werden geänderte oder neue Dateien kopiert. Das erspart natürlich Zeit.

Sie benötigen allerdings für einen funktionierende Sicherung ein externes Gerät, das ein Linux-Dateisystem hat, also von Linux mit einem eigenen System formatiert wurde. Von Haus aus sind die meisten Datenträger mit einem Windows-Format (FAT oder NTFS) formatiert. Zur Not geht auch dieses, sofern Sie nur reine Anwendungsdateien sichern wollen, wie etwa Office-Dateien, Bilder oder Videos.

Sichern des Home-Directories

Docken Sie einen USB-Stick oder eine externe Festplatte an. Sie befindet sich dann unter dem Verzeichnis /media/ich/usbdevicename. Schlagen Sie im Zweifelsfall noch einmal unter Das externe Speichermedium nach.
rsync -a . /media/[Benutzername]/[usbdevicename]/ich
Nun wird das Heimatverzeichnis des Benutzers ich unter dem Verzeichnis ich auf dem externen Laufwerk gesichert.

Wenn Sie den Befehl ein zweites Mal geben, werden Sie feststellen, dass die Sicherung wesentlich schneller geht, weil nur die Änderungen kopiert werden.

Rücksichern ins Home-Directory

Um die Datensicherung zurückzuholen, wird das externe Laufwerk angeschlossen und mit den beiden folgenden Befehlen die Datensicherung zurückgeholt.
cd
rsync -a /media/[Benutzername]/[usbdevicename]/ich/* .

Grafische Oberfläche für rsync

Das Repository enthält ein Paket grsync, das auf dem rsync aufbaut. Dort können verschiedene Profile für unterschiedliche Sicherungszwecke angelegt werden. Anschließend genügt ein Klick, um eine Datensicherung zu starten.

Relax and Recover

Das Tool Relax and Recover steht unter Debian, Ubuntu und Linux Mint im Paket rear zur Verfügung und kann mit dem folgenden Befehl installiert werden.
apt install rear
Relax and Recover ist in der Lage Rettungsmedien zu erstellen, mit denen eine Wiederherstellung einer zerstörten Festplatte möglich ist.

Anschließend kann der USB-Stick als Rettungsmedium verwendet werden.

Was soll gesichert werden?

Konfigurationsdateien

Etwas verborgen sind die benutzerspezifischen Konfigurationsdateien. Sie liegen in Dateien oder Verzeichnissen, die mit einem Punkt beginnen. Aber auch diese liegen im Heimatverzeichnis. Man kann sie mit ls -a anzeigen lassen. Der grafische Dateimanager schaltet mit dem Tastenkürzel [Strg]+[H] die Anzeige an und aus.

Die Datensicherung erfolgt durch Terminalbefehle. Das hat den Charme, dass man sie in Scripten einfügen kann oder auch per crontab automatisch laufen lassen kann. Es gibt aber auch Varianten mit einer grafischen Oberfläche, die in der Regel den Kommandozeilenbefehl einfach aufrufen.

Mails und Browserlesezeichen

Sowohl die Mails als auch die Lesezeichen und Cookies des Browser befinden sich in verborgenen Verzeichnissen.

Thunderbird

Das Mailprogramm Thunderbird speichert seine Umgebung unter dem Verzeichnis .thunderbird. Verwenden Sie IMAP, werden die eigentlichen Mails hauptsächlich auf Ihrem Mail-Server gesichert, aber auch dann liegen Ihre Schlüssel und Passwörter unter .thunderbird. Bei POP3-Postfächern liegen die kompletten Mails hier und bei IMAP immerhin einige Cache-Dateien.

Das können durchaus einige Datenmengen sein. Mein .thunderbird umfasst knapp 4 GByte.

Firefox

Auch ein Browser legt Daten ab. Das ist einmal die Aufrufhistorie mit den von Ihnen am häufigsten besuchten Seiten. Hinzu kommen die Lesezeichen und die Passwörter, die Sie für die verschiedenen Seiten haben sichern lassen.

Andere Mailprogramme und Browser

Andere Programme sichern ihre Daten in anderen Verzeichnissen, möglicherweise in einem Unterverzeichnis von .local.

Dateien, die sich selten ändern

Gerade große Multimediadateien wie Filme, Fotos oder Musiktitel ändern sich nicht. Darum ist es wenig sinnvoll, täglich davon neue Sicherungen zu ziehen. Hier ist der Einsatz von rsync besonders effizient.

Dagegen verändern sich Texte oder andere Dateien, an denen Sie arbeiten häufiger. Hier ist es sinnvoller, mehrere Stände zu speichern, so dass Sie auch auf vorige Stände zurückgreifen können. Sofern es reine ASCII-Texte wie LaTeX-Texte, Webseiten oder Programmtexte sind, könnte der Einsatz einer Versionskontrolle sinnvoll sein. Unter Datensicherungsaspekte eignet sich Subversion besonders.

Sicherungsmedien

CDs, DVDs und USB-Sticks sind als Medien oft schon aufgrund ihrer Kapazität nicht ausreichend.

Damit kommen externe Laufwerke ins Spiel, die typischerweise über USB angeschlossen werden. Achten Sie aber darauf, dass die Laufwerke nach der Sicherung immer wieder abgenommen werden und idealerweise immer wieder im Wechsel an einem anderen Ort aufbewahrt werden. Noch gibt es keine Verschlüsselungstrojaner unter Linux, aber sobald ein Angreifer direkten Zugang zur Datensicherung hat, ist diese nichts mehr wert.

Ähnliches gilt für eingehängte Windows-Dateiserver (SMB). Der Grund für die Angreifbarkeit liegt oft in der leichtfertigen Einbindung von NAS-Systemen als Laufwerk über SMB.

Idealerweise arbeitet die Datensicherung mit einer Übertragung auf ein Netzwerkgerät, ohne dieses einzubinden. Das ist der Grund, warum sowohl tar also auch rsync in der Lage sind, über das Netzwerk zuzugreifen. Dazu wird der Servername vor einen Doppelpunkt gestellt. Beispiel:

rsync -a . user@server:dasi
So wird das aktuelle Verzeichnis an den Server server in das Verzeichnis dasi des Heimatverzeichnis des Benutzers user übertragen. Der Befehl macht es nötig, ein Passwort einzugeben oder eine RSA-Authentifizierung für ssh einzurichten.

Ein Sichern in eine Cloud-Umgebung ist nur dann verantwortbar, wenn Sie Ihre Daten zuvor selbst verschlüsselt haben. Ansonsten sind sie nicht sicher.