Datensicherung

Aus Mikiwiki
Wechseln zu: Navigation, Suche

Als Datensicherung (auch: Backup, Sicherung, Sicherungskopie) wird das teilweise oder gesamte Kopieren der auf einem Rechner (meist auf der Festplatte) vorhandenen Daten in einen anderen (häufig transportablen) Datenspeicher bezeichnet. Das Ziel ist, den Datenverlust bei versehentlichem Löschen, Schädlingsbefall, Inkonsistenzen des Dateisystems, Festplattendefekt oder Systemausfall durch eine regelmässige und häufige Datensicherung zu begrenzen. Die Wiederherstellung einer Datensicherung wird als Datenrücksicherung (auch: Restore, Wiederherstellung) bezeichnet.

Zum Erstellen und Zurücksichern einer Datensicherung wird Datensicherungssoftware verwendet.

Konzept

Die klassische Datensicherung unterscheidet drei verschiedene Verfahren, die üblicherweise in regelmässiger Reihenfolge miteinander kombiniert werden.

Sicherungsverfahren Beschreibung Vorteile Nachteile
Vollständig Es werden alle in einem Datenspeicher vorhandenen Daten gespeichert (engl. full dump). Dies geschieht üblicherweise durch Kopieren der vorhandenen Dateien, es kann aber (z. B. mit Clonezilla oder partimage) auch die gesamte Festplatte oder Partition gesichert werden.
  • Einfache Wiederherstellbarkeit aller Dateien
  • Grosse Datenmengen
  • Lange Sicherungszeiten
Differentiell Es werden nur die Daten gesichert, die sich seit der letzten Vollsicherung geändert haben oder neu hinzugekommen sind.
  • Einfache Wiederherstellbarkeit aller Dateien mittels der letzten Vollsicherung und der letzten differentiellen Sicherung.
  • Vergleichsweise grosse Datenmengen durch die Redundanzen der differentiellen Sicherungen.
Inkrementell Es werden nur die Daten gesichert, die sich seit der letzten inkrementellen Sicherung geändert haben oder neu hinzugekommen sind.
  • Kleine Datenmengen, da keine doppelten Daten gesichert werden.
  • Eher umständliche Wiederherstellung, die immer alle Sicherungssätze seit der letzten Vollsicherung benötigt.

Eine häufig verwendete Datensicherungsstrategie ist das sogenannte "Generationen-Rotationsprinzip" (auch bekannt als "Grossvater-Vater-Sohn"): Die "Sohn"-Medien enthalten die Tagessicherungen, die "Vater"-Medien die Wochensicherungen und die "Grossvater"-Medien die Monatssicherungen. Der Ablauf ist dabei beispielsweise wie folgt:

  • An den ersten vier Tagen der ersten Woche (Montag bis Donnerstag) wird jeweils eine inkrementelle oder differentielle Datensicherung auf die "Sohn"-Medien 1 bis 4 erstellt.
  • Am fünften Tag (Freitag) der ersten Woche wird eine Vollsicherung auf das "Vater"-Medium 1 gemacht. Die Sicherung der Woche 1 des Vormonats wird dabei überschrieben.
  • An den ersten vier Tagen der zweiten Woche (Montag bis Donnerstag) wird jeweils eine inkrementelle oder differentielle Datensicherung auf die "Sohn"-Medien 1 bis 4 erstellt. Die Sicherungen der Vorwoche werden dabei überschrieben.
  • Am fünften Tag (Freitag) der zweiten Woche wird eine Vollsicherung auf das "Vater"-Medium 2 gemacht. Die Sicherung der Woche 2 des Vormonats wird dabei überschrieben.
  • An den ersten vier Tagen der dritten Woche (Montag bis Donnerstag) wird jeweils eine inkrementelle oder differentielle Datensicherung auf die "Sohn"-Medien 1 bis 4 erstellt. Die Sicherungen der Vorwoche werden dabei überschrieben.
  • Am fünften Tag (Freitag) der dritten Woche wird eine Vollsicherung auf das "Vater"-Medium 3 gemacht. Die Sicherung der Woche 3 des Vormonats wird dabei überschrieben.
  • An den ersten vier Tagen der vierten Woche (Montag bis Donnerstag) wird jeweils eine inkrementelle oder differentielle Datensicherung auf die "Sohn"-Medien 1 bis 4 erstellt. Die Sicherungen der Vorwoche werden dabei überschrieben.
  • Am fünften Tag (Freitag) der vierten Woche wird eine Vollsicherung auf das "Grossvater"-Medium 1 gemacht. Die entsprechende Monatssicherung des Vorjahres wird dabei überschrieben. Die "Grossvater"-Medien sollten dabei für den Katastrophenfall an einem Ort ausser Hause gelagert werden.
  • Nun beginnt der Zyklus von vorne.

Sicherungsmedien

Im Allgemeinen eignet sicher jeder Datenspeicher als Sicherungsmedium, sofern er das nötige Fassungsvermögen mitbringt.

Speichermedium Beschreibung Vorteile Nachteile Haltbarkeit
Interne Festplatte Zusätzliche Festplatte innerhalb des Rechners, auf welche die zu sichernden Daten kopiert werden.
  • Einfache Art der Sicherung
  • Lästiges händisches Kopieren, das allerdings verskriptet werden kann.
  • Die Daten sind nie wirklich vollständig.
über 10 Jahre
Interne Festplatte mit RAID 1 Eine zusätzliche Festplatte wird mit der bestehenden zu einem RAID 1-Verbund zusammengefasst
  • Hilft gegen Ausfall einer Festplatte, da immer noch die jeweils andere Festplatte alle Daten enthält.
  • Ereignisse, die den Rechner beschädigen oder gar zerstören (etwa bei Überspannung durch Blitzeinschlag) ziehen unter Umständen beide Platten in Mitleidenschaft.
  • Hilft nicht gegen Fehler im Dateisystem oder versehentliches Löschen von Dateien.
  • Insbesondere Software-RAID bringt den Nachteil mit sich, dass die Leistung gegenüber einer einzelnen Festplatte um 30 oder mehr Prozent sinkt.
über 10 Jahre
Externe Festplatte Die externe Festplatte wird ausschliesslich zum Zweck der Datensicherung an den Rechner angehängt.
  • Lästiges, nicht automatisierbares Verfahren.
über 10 Jahre
Festkörperlaufwerk
  • Robuster als eine herkömmliche Festplatte.
langfristig
USB-Stick Der USB-Stick wird ausschliesslich zum Zweck der Datensicherung an den Rechner eingesteckt.
  • Robuster als eine Festplatte.
  • Geringeres Datenfassungsvermögen als eine Festplatte
  • Niedrigere Datentransferrate als eine Festplatte
  • Begrenzte (aber doch sehr hohe) Anzahl Schreibzyklen
langfristig
CD, DVD
  • Handliches Medium für kleine Sicherungen, die nicht ewig halten müssen.
  • Sehr geringes Datenfassungsvermögen
  • Notwendiger Brennvorgang
3 bis 5 Jahre
Magnetband Nach wie vor die häufigste Art der Sicherung für Langzeitarchivierung.
  • Grosse Haltbarkeit
  • Umständliche Wiederherstellung
langfristig
Online-Sicherung Online-Sicherungen
  • Genügend Angebote von Online-Speicherplatz für wenig Geld
  • Daten nicht mehr unter direkter Kontrolle
  • Notwendigkeit einer Verschlüsselung der Daten, um Fremdzugriff zu verhindern. Dazu kann z. B. Truecrypt verwendet oder die Daten können mit zip gepackt und mit einem Passwort versehen werden.
  • Keine Gewähr, dass der Anbieter in Zukunft noch existiert
 ?
Analoge Medien Auslagerung auf analoge Medien wie Papier oder Ausbelichten digitaler Bilder auf Dias.
  • Sehr lange Haltbarkeit
  • Grosser Zusatzaufwand beim Sichern und Wiederherstellen
  • Erhebliche Kosten
über 30 Jahre (Papier)

Für langfristige Datensicherungen stellen sich durch den rasanten Wechsel von Standards weitere Probleme:

  • Werden Schnittstellen wie IDE, SATA oder USB in Zukunft überhaupt noch unterstützt?
  • Werden die gesicherten Dateiformate in Zukunft noch unterstützt?

FAQ

Datensicherung mit dd

Grundsätzlich genügt eine Datensicherung mit dd, um ein einzelnes Linux-System zu sichern. Beim Sichern einer Partition sollte diese aber entweder nicht oder nur lesbar (read-only) eingehängt sein. Beim Sichern einer vollständigen Festplatte sollte der Rechner entweder nicht laufen - sehr unpraktisch! - oder von einem externen Medium booten. Wird das nicht beachtet, entsteht als Ergebnis womöglich ein korruptes Dateisystem!

Die Datenrücksicherung mit einer solchen Lösung ist für den Systemverwalter nicht sehr schwierig, dauert aber für eine einzelne Datei ebenso lange wie für den ganze Datensicherung.

Datensicherung mit tar

Erstellen eines vollständigen Abbilds einer Linux-Installation in der Datei "backup.tar.bz2", die sich später (im Notfall oder zur Vervielfältigung) auf eine andere Festplatte und ein anderes Dateisystem entpacken lässt. Dabei wird ein Archiv erzeugt ("-c"), die Zugriffsrechte bleiben erhalten ("-p"), es erfolgt eine ausführliche Ausgabe auf dem Bildschirm ("-v") und die hinter der Option "-f" stehende Datei wird mit bzip2 komprimiert ("-j").

# tar -cvjpf /tmp/backup.tar.bz2 /

Eine Datensicherung dieser Art erzeugt einige Fehlermeldungen: weil tar ein Abbild von der Wurzel ("/") des Dateisystems an erzeugen soll, versucht es zwangsläufig, in einer Rekursion sich selber mit in die Datensicherung einzubinden. Bei diesem Versuch meldet es notgedrungen, dass die Abbilddatei sich während des Archivierens verändert hat. Zwar lässt sich mit dieser Fehlermeldung leben, doch ist es ohnehin nicht sinnvoll, alle Dateien und Verzeichnisse in die Abbilddatei mit aufzunehmen: die Daten im Heimatverzeichnis "/home" etwa sollten ohnehin regelmässig auf ein externes Speichermedium gesichert werden. In der Abbilddatei zur Systemwiederherstellung haben sice nichts zu suchen, denn zur eigentlichen Systemwiederherstellung tragen sie nichts bei und blähen nur den Tarball unnötig auf.

Mit dem Schalter "--exclude-from" können bestimmte Dateien und Verzeichnisse ausdrücklich aus dem Tarball ausgeschlossen werden. Diese Option liest auszuschliessende Dateien und Verzeichnisse aus einer Datei ein.

# cat << EOF >> /tmp/exclude
> /home/*
> /mnt/*
> /usr/portage/distfiles/*
> /tmp/backup.tar.bz2
> EOF
# tar -cvjp --exclude-from=/tmp/exclude -f /tmp/backup.tar.bz2 /

Die Wildcards ("*") hinter den Verzeichnisangaben blenden sämtliche Dateien und Unterverzeichnisse innerhalb des auszuklammernden Verzeichnisses aus. Fehlt die Wildcard, so übernimmt tar das gesamte Verzeichnis nicht mit ins Archiv. Auch der Dateiname der Abbilddatei selbst sollte in der Ausschlussdatei stehen (hier "/tmp/backup.tar.bz2").

Vor dem Erstellen der Abbilddatei sollte mit mount geprüft werden, was genau im System gerade eingehängt ist. Etwa eingehängte externe Datenträger oder Netzwerkfreigaben würden sonst mit ins Abbild einfliessen, falls sie nicht vorher ausgehängt oder ausdrücklich ausgeschlossen werden. Andererseits hängen manche Distributionen aus Sicherheitsgründen die Boot-Partition nicht mit ein. In diesem Fall muss darauf geachtet werden, dass auch sie mit ins Abbild gelangt.

Eine so erstellte Abbilddatei kann anschlissend auf eine DVD gebrannt werden.

Datenrücksicherung mit tar

Bei der Wiederherstellung der erzeugten Abbilddatei hilft eine Live-CD (z. B. Knoppix), wobei auch textbasierte Live-CDs wie Grml oder die Installationsdatenträger von SUSE oder Red Hat im Rescue-Modus völlig ausreichen. Damit nach dem Start der Live-Distribution das DVD-Laufwerk wieder für den Datenträger mit dem Abbild frei wird, muss die Live-CD so gebootet werden, dass das Betriebssystem im Arbeitsspeicher des Rechners abgelegt wird und von dort aus arbeitet. Dies erlaubt es, nach dem Hochfahren die Live-CD auszuhängen und gegen den Datenträger mit dem Abbild auszutauschen. Bei den meisten Live-Systemen heisst der entsprechende Bootparameter "toram". Knoppix wird also mit "knoppix toram" gestartet, bei Grml heisst der Befehl "grml toram", bei Gentoo "gentoo docache".

Vor dem Zurückspielen der Abbilddatei muss erst einmal die neue Festplatte partitioniert und formatiert werden, am besten mit cfdisk.

Nun müssen die neu erstellten Partitionen ins Dateisystem der Live-CD eingehängt werden. Bei Verwendung der Gentoo-Live-CD kann das Einhängen beispielsweise wie folgt aussehen. Der dabei verwendete Einhängepunkt "/mnt/gentoo" stellt eine spezielle Konvention von Gentoo Linux dar; bei anderen Live-CDs wird vorab ein geeigneter Einhängepunkt angelegt. Hier wird erst das Wurzelverzeichnis von der Festplatte eingehängt, danach werden die Einhängepunkte für die Boot- und Home-Partition angelegt, diese beiden Partitionen eingehängt und schliesslich die Swap-Partition aktiviert.

# mount /dev/hda3 /mnt/gentoo
# mkdir /mnt/gentoo/{boot,home}
# mount /dev/hda1 /mnt/gentoo/boot
# mount /dev/hda4 /mnt/gentoo/home
# swapon /dev/hda2

Nun kann die Abbilddatei auf die Festplatte gespielt werden. Dazu wird zuerst die Live-CD aus dem System ausgehängt:

# umount /mnt/cdrom

Jetzt wird die DVD mit der Abbilddatei eingelegt und eingehängt. Im Beispiel steht "/dev/hdb" für die Gerätebezeichnung des DVD-Laufwerks, die aber auch anders lauten kann.

# mount /dev/hdb /mnt/cdrom

Schliesslich wird die Abbilddatei in die richtige Partition (hier "/mnt/gentoo") entpackt. Der Unterschied zum Anlegen der tar-Datei liegt dabei in der Option "-x", welche für das Entpacken des Archivs steht.

# cd /mnt/gentoo
# tar -xvjpf /mnt/cdrom/backup.tar.bz2

Bleiben Partitionen und Laufwerkshierarchie gegenüber der ursprünglichen Installation erhalten, so brauchen keine Konfigurationsänderungen am Bootmanager oder an der Partitionstabelle durchgeführt zu werden. Änderungen an der Partitionstabelle müssen aber in der zurückgesicherten Datei "/etc/fstab" eingetragen werden. Wurde das Abbild "umgezogen", also beispielsweise statt auf die erste auf eine zweite Festplatte entpackt, so müssen die Einträge in der Datei "/boot/grub/grub.conf" entsprechend angepasst werden.

Abschliessend muss bei der Wiederherstellung auf eine neue Festplatte auch der noch fehlende Bootmanager in den Master Boot Record der ersten Festplatte installiert werden - geschieht das nicht, läuft der erste Bootvorgang ins Leere. Fast alle aktuellen Distributionen verwenden als Bootmanager GRUB, der sich wie folgt aus den Daten des wiederhergestellten Abbild installieren lässt. Mit den folgenden Befehlen wird ins entpackte Abbild gewechselt, als sei davon gebootet worden; das ermöglicht der Befehl chroot. Im Verzeichnis "/proc" liegen etliche Systeminformationen, die GRUB benötigt. Deshalb ist es notwendig, dieses Verzeichnis zuvor einzuhängen.

# mount -t proc none /mnt/gentoo/proc
# chroot /mnt/gentoo /bin/bash

Nach dem Aufruf von GRUB innerhalb der chroot-Umgebung findet man sich wieder in einer Eingabeaufforderung. Der Befehl "root" zeigt dabei auf die Boot-Partition (hier mit "hd0,0" auf die erste Partition der ersten Festplatte; das wäre auch der richtige Befehl, falls es bei der Installation keine eigene Boot-Partition gibt, sondern "/boot" direkt in der Root-Partition sitzt. Bei einer Wiederherstellung auf die erste Partition der zweiten Festplatte müsste der Befehl dagegen "hd1,0" lauten.). Mit dem Befehl "setup" wird der Bootmanager in den MBR der Festplatte geschrieben, meist soll er auf "hd0" landen, also auf der ersten Festplatte im System.

# grub
grub> root (hd0,0)
grub> setup (hd0)
grub> quit

Vor einem Neustart aus der Live-CD heraus ins neue, aus der Abbilddatei hergestellte Linux, werden alle eingehängten Partitionen mit umount aus dem System ausgehängt. Die Swap-Partition wird dabei mit "swapoff /dev/hda2" deaktiviert. Ein Reboot des Rechners führt dann zum Hochfahren des neu installierten Systems (hoffentlich ;-).

Datensicherung mit kombinierten Befehlen

1. Sicherung und gleichzeitige Komprimierung des Verzeichnisses "/etc".

$ cd /etc
$ find . -print | cpio -o | gzip | dd of=/tmp/etcbkg.cpio.gz

2. Datenrücksicherung.

$ mkdir /tmp/etc
$ cd /tmp/etc
$ dd if=/tmp/etcbkg.cpio.gz | gzip -d | cpio -idum

Datensicherung auf entferntem Rechner ("remote backup")

Erstellung eines remote backup von "/etc" auf Rechner "meister".

$ ssh meister "find /etc -depth -print | cpio -oc" > /tmp/meister_etc.cpio

Alternativemöglichkeit zur Erstellung eines remote backup von "/etc" auf Rechner "meister".

$ ssh meister "find /etc -depth -print | cpio -oc" | gzip | dd of=/tmp/meister_etc.cpio.gz

Datensicherung auf ein Magnetband

Das folgende Skript "shareTar.sh" wechselt ins Verzeichnis "/samba/share/mitarbeiter" und sichert dort die Verzeichnisse "abc" und "xyz" auf das im Bandlaufwerk "/dev/st0" eingelegte Magnetband. Nach erfolgreicher Datensicherung wird das Magnetband zurückgespult und ausgeworfen.

#!/bin/bash
#
# Author        Michael Kuhn
# Date          27 January 2009
# Description   Script to backup the SMB share of host gnu using tar(1).
#               The script should be launched as user "root" with
#
#                   nohup /home/sisis/bin/shareTar.sh &
#

TAPE=/dev/st0
LISTING=/home/sisis/shareTar.list

# Launch the backup
#
printf "Backup started at %s\n" "$(date)"
cd /samba/share/mitarbeiter
#
# There is no backup for directory "kuhn" since there is only old stuff in it
tar cf ${TAPE} abc xyz
rc=$?
printf "Backup done with rc=%d\n" ${rc}
test ${rc} -eq 0 || {
  printf "PANIC -- check the backup tape or device\n\n"
  exit 1
}

# Re-read the archive
#
printf "re-reading the tape... started at %s\n" "$(date)"
tar tvf ${TAPE} > ${LISTING}
numberOfFiles=$(wc -l < ${LISTING})

printf "\nDone -- found %d files on archive\n" ${numberOfFiles}
printf "Listing can be found in ${LISTING}\n"
printf "Backup done at %s\n\n" "$(date)"

test -c ${TAPE} && mt -f ${TAPE} rewoffl
exit ${rc}

Weblinks

Herausgeber Sprache Webseitentitel Anmerkungen
country DE.gif Wikipedia ger Datensicherungwbm Enzyklopädischer Artikel