Datensicherung von Servern
Willemers Informatik-Ecke
Auf dieser Seite geht es vor allem um die Datensicherung von Servern. Es gibt eine weitere Seite für die Datensicherung persönlicher Benutzerdaten.

Datensicherung

Datenverlust durch: Redundante Systeme helfen nur beim Geräteausfall. Welche Daten müssen gesichert werden.
  1. Benutzerdateien (nicht wiederbringbar)
    Liegen im Verzeichnis /home
  2. Server-Daten: Hier sind die Geschäftsdaten.
    Liegen oft unterhalb des Verzeichnisses /var.
    Vorsicht: Datenbankendateien müssen anders gesichert werden.
  3. Konfigurationsdateien: Ändern sich nicht oft
    Liegen meist unterhalb des Verzeichnisses /etc.
  4. Installation der Server und des Betriebssystems
    Können im Schadensfall neu installiert werden, kostet aber Zeit.

Ziel der Datensicherung

Idealerweise befindet sich das aktuellste Sicherungsmedium nicht im Gebäude. Der Administrator nimmt die Datensicherungsplatte der letzten Nacht immer mit nach Hause und bringt die der vorigen Nacht wieder zurück. Wie dauerhaft ist ein Sicherungsmedium? Gibt es dafür auch nach dem Brand ein Laufwerk im Handel?

Das Programm tar

Immer an Bord einer POSIX-Maschine. Optionen: Eine der Optionen cxt muss immer angegeben sein. Die Optionen müssen nicht unbedingt mit einem Minus versehen werden. Ursprünglich Tape-Archivierung. Ohne Option -f wird auf /dev/tape gesichert. Nach Konvention erhalten Tarball-Dateien die Extension .tar, wenn sie komprimiert sind .tgz oder .tar.gz Besondere Fähigkeiten: Sichert die POSIX-Eigenschaften. Kann so auch ein nicht POSIX-fähiges Medium als Sicherungsmedium verwenden. Wird bei der Option f als Zieladresse eine Netzwerkadresse angegeben, verwendet tar das SSH-Protokoll und sichert verschlüsselt über das Netzwerk.
$ tar cfz server:dasi/montag.tgz .

Das Programm rsync

Nicht standardmäßig verfügbar, muss installiert werden:
# apt install rsync
Sichern des lokale Verzeichniss data unter dem Benutzer user auf dem Host 192.168.109.199 im Verzeichnis /media/dasi:
$ rsync -a data user@192.168.109.199:/media/dasi/data
Wird dieser Befehl wiederholt, wird der Ablauf deutlich schneller, weil nur die Dateien und Dateiteile, die sich geändert haben, gesichert werden. Auf dem Zielrechner entsteht im Verzeichnis /media/dasi/data die gleiche Dateistruktur wie auf dem lokalen Rechner unter data. Es gibt Fehlermeldungen oder sogar Abbrüche, falls POSIX-Eigenschaften auf dem Zielmedium nicht umsetzbar sind. rsync verwendet das SSH-Protokoll beim Sichern über das Netzwerk.

Die Programme dump und restore

Das Programm dump ist dafür geschaffen, komplette Dateisysteme auf ein Band zu sichern. Das ist zwar auch mit Datenpartitionen möglich, zielt aber natürlich vor allem auf das Dateisystem mit der Betriebssysteminstallation und -konfiguration. Ziel ist es, im Falle eines Rechnerausfalls möglichst schnell wieder den ursprünlichen Server wieder ins Rennen zu schicken.

dump beherrscht die inkrementelle Sicherung.

In der heutigen Zeit wird dump vermutlich eher seltener eingesetzt. Wenn es darum geht, einen Betriebssystemzustand zu sichern und schnell wieder herzustellen, wird man vermutlich eher eine virtuelle Maschine anlegen und diesen auf einer Linux-Plattform laufen lassen. Für den Fall eines Ausfalls wird dann die Datei der virtuellen Maschine gesichert und kann dann auf einem anderen Rechner schnell wieder in Betrieb gehen.

Inkrementelle Sicherung

Das Konzept der inkrementellen Sicherung sieht vor, dass beispielsweise einmal pro Woche am Wochenende eine vollständige Datensicherung erzeugt wird. Das dauert natürlich seine Zeit. An den Werktagen ist die Zeit knapper. So wird am Montag nur gesichert, was sich seit dem Wochenende geändert hat. Am Dientag werden nur die Unterschiede zu Montag gesichert und so fort.

Im Falle einer Wiederherstellung muss dann zunächst die Wochenendsicherung zurückgeholt werden. Darüber wird dann die Montagssicherung geladen und dann weiter jede inkrementelle Sicherung bis zum aktuellen Tag.

Natürlich müssen die Datensicherungstools eine inkrementelle Sicherung unterstützen. Der Vorgang verzögert die Rekonstruktion, ermöglicht aber die Beschleunigung der einzelnen Datensicherungen.

Zeitgesteuert mit cron

Datei in /etc/cron.d im crontab-Format erstellen.
# Minute Stunde Tag(Monat) Monat  Tag(Woche)   User Kommando
# (0-59) (0-23) (1-31)     (1-12) (1-7; 1=Mo) 
0         4      *          *      *           root jedentag4uhr
0         9      1,15       *      *           root jeden1.und15.um9
0         2      *          *      1,2,3,4,5   root werktagsum2 
Umgebung nicht vorhanden, weder PATH noch Home-Verzeichnis. Die Kommandos müssen also mit Pfad angegeben werden. Sicherungen über das Netzwerk können keine Passwörter abfragen. Lösung: Zertifikate (siehe später SSH) Fehler erscheinen zwar in der syslog. Was aber, wenn niemand hineinschaut? Lösung: Mail an das Konto des Administrator (siehe später Mailserver) \url{http://willemer.de/informatik/unix/unixcron.htm}

Datensicherung mit Datum im Dateiname

Die Datensicherung sollte nicht immer die Datensicherung des Vortages überschreiben. Dazu sollte der Dateiname das aktuelle Datum oder den Wochentag enthalten.
date +"%U-%a-%Y_%m_%d-%H:%M"
Liefert die Wochennummer, den Wochentag, Jahr, Monat, Tag, Stunde und Minute. (siehe man date oder date --help) Um diese Ausgabe in einen Dateinamen zu bekommen, umschließt man sie mit Dollar und einer Klammer:
$ touch dasi-$(date +"%U-%a-%Y_%m_%d-%H_%M").tgz
$ ls -l
... 0 Okt 17 10:14 dasi-42-Di-2023_10_17-10_14.tgz
Vorsicht bei /. Sie werden als Verzeichnis interpretiert. Löschen alter Datensicherungen, hier 7 Tage (siehe man find):
$ find . -mtime +7 -name "*backup.tar" -exec rm {} \;

Szenario: Externes Medium

In einem Notariat habe ich gesehen, dass die Datensicherung des Servers auf ein USB-Laufwerk durchgeführt wurde, das ständig am Computer hing. Daneben lagen weitere USB-Laufwerke. Niemand wußte, wer sie wann wechselt.

Szenario: Ransom-Angriff

In einem Softwarehaus waren alle Daten auf Netzwerklaufwerken für jeden Mitarbeiter zugänglich abgelegt, auch der Git-Server arbeitete auf einer solchen Netzwerkfreigabe. Die Sekretärin erhielt eine Mail mit einem Ransom-Virus im Anhang. Zum Glück startete er sofort durch und wurde sofort entdeckt. Weiteres Glück war, dass immer zeitnah Datensicherungen gemacht wurden und diese sofort vom Netzwerk entfernt wurden. Der Betrieb fiel nur für zwei Tage vollständig aus.

Szenario: Cloud

Eine Elektromontagefirma sicherte alle Datenbestände unverschlüsselt in der Cloud. Damit sind die Daten vermutlich schon den USA bei interessierten Unternehmen.