Datensicherung/Sicherungsarten
Datensicherung/Sicherungsarten - Beschreibung
Beschreibung
Je nach Veränderungsintensität der zu sichernden Daten können beim konkreten Sicherungsvorgang verschiedene Sicherungsarten eingesetzt werden
- Einzelne Sicherungsvorgänge können in Volldatensicherung, differenzielle und inkrementelle Sicherung unterschieden werden
- Differenzielle und inkrementelle Sicherung setzen mindestens eine erfolgte Volldatensicherung voraus
- Bei der normalen Datensicherung werden bestimmte Dateien und/oder Verzeichnisse (Ordner) ausgewählt, deren Inhalt gesichert werden soll
- Es besteht auch die Möglichkeit, nur bestimmte Dateiformate zu sichern
- Daneben lassen sich auch ganze Datenträger oder Datenträger-Partitionen als Abbild sichern
- In allen Fällen ist es möglich, auch lediglich Teile aus einem vollständigen Sicherungssatz wiederherzustellen
Es wird unterschieden in:
Komplett-/Vollsicherung
Die Komplett- oder Vollsicherung wird in Programmen auch als „Normale Sicherung“ bezeichnet
- Hierbei werden die jeweils zu sichernden Daten (ein komplettes Laufwerk, eine Partition, bestimmte Verzeichnisse und/oder bestimmte Dateien, bestimmte Dateiformate) vollständig auf das Sicherungsmedium übertragen und als gesichert markiert
Die Vollsicherung ist technisch sehr einfach, da Daten lediglich kopiert werden
- Durch die vollständige Kopie der Daten hat die Vollsicherung einen sehr hohen Speicherbedarf und die Sicherung selbst ist bei großen Datenmengen sehr zeitintensiv
- Oft wird die Sicherung deshalb parallelisiert, wodurch allerdings die Arbeitsgeschwindigkeit reduziert wird
Für manche Dateisystemen kann ein lesbarer Snapshot der zu sichernden Daten erstellt werden
- Während die Sicherung des Snapshots im Hintergrund durchgeführt wird, können bereits Änderungen an den Daten vorgenommen werden, welche dann über Copy-On-Write gespeichert werden
Das Dateisystem kann auch während der Dauer des Backups genutzt werden und die Sicherung ist konsistent
Komplett-/Vollsicherung auch „Normale Sicherung“
Vorteil
- technisch sehr einfach
Nachteil
- sehr hoher Speicherbedarf
- Speicherabbildsicherung (Image Backup):
- 1-zu-1-Abbild gesichert, so können beispielsweise nicht nur die Nutzdaten, sondern das gesamte Dateisystem, inklusive Betriebssystem und Benutzereinstellungen gesichert werden
Speicherabbildsicherung
Bei der Speicherabbild-Sicherung (englisch Vorlage:Lang) kann der komplette Datenträger (meist die Festplatte, aber auch USB-Massenspeicher, optische Medien oder bei einigen Programmen auch Datenträger im Netzwerk) oder eine Partition durch ein 1-zu-1-Abbild gesichert werden
- So können beispielsweise nicht nur die Nutzdaten, sondern das gesamte Dateisystem, inklusive Betriebssystem und Benutzereinstellungen, gespeichert werden
- Der Vorteil dieser Sicherung besteht darin, dass bei einem Totalausfall des Rechners das Speicherabbild auf den Datenträger zurückgeschrieben und dadurch der Zustand des jeweiligen Datenträgers zum Sicherungszeitpunkt vollständig wiederhergestellt werden kann
Bei einer derartigen Wiederherstellung wird entweder das gesamte Dateisystem in seiner Originalstruktur wiederhergestellt (in diesem Fall ist kein Dateisystemtreiber erforderlich, sondern lediglich ein Gerätetreiber für den Datenträgerzugriff), oder ein besonderer Treiber liest regulär das Dateisystem und extrahiert nur die gewünschten Verzeichnisse und Dateien aus der Sicherung, um diese als normale Verzeichnisse und Dateien in das aktuelle Dateisystem zu integrieren bzw. die aktuellen mit den älteren gesicherten Dateien zu überschreiben (siehe auch „Inkrementelle Sicherung“)
- Seit einigen Jahren sind Programme auf dem Markt, die solche Sicherungen inkrementell anlegen können
Differenzielle Sicherung
Bei der sogenannten differenziellen Sicherung werden alle Dateien gespeichert, die seit der letzten Komplettsicherung geändert wurden oder neu hinzugekommen sind
- Es wird auf der letzten Komplettsicherung aufgesetzt, wobei gegenüber einer neuen Vollsicherung Speicherplatz und Zeit gespart werden kann
- Differenzielle Sicherungsstände hängen lediglich von der letzten Komplettsicherung ab und sind unabhängig von anderen differenziellen Sicherungsständen
- Nicht mehr benötigte Sicherungsstände können unabhängig voneinander gelöscht werden
Bei sehr großen Dateien, die sich häufig ändern (virtuelle Maschinen, Datenbanken, Postfach-Dateien mancher E-Mail-Programme) ist die differenzielle Sicherung nachteilig, da bei kleinsten Änderungen jedes Mal die gesamte Datei gesichert wird
Differenzielle Sicherung
- Alle Dateien, die seit der letzten Komplettsicherung geändert wurden oder neu hinzugekommen sind, werden gespeichert.
- Es wird also immer wieder auf der letzten Komplettsicherung aufgesetzt.
Vorteil
- gegenüber einer neuen Vollsicherung werden Speicherplatz und Zeit gespart
- Programmierung der Backup-Software relativ simpel
- nicht mehr benötigte Sicherungsstände können unabhängig voneinander gelöscht werden (inkrementelle Sicherungen zwangsläufig miteinander verkettet)
Nachteil
- nicht geeignet bei sehr großen Dateien, die sich häufig ändern (virtuelle Maschinen, Datenbanken, Postfach-Dateien mancher E-Mail-Programme)
Inkrementelle Sicherung
Bei der inkrementellen Sicherung werden die Dateien oder Teile von Dateien gespeichert, die seit der letzten inkrementellen Sicherung oder (im Falle der ersten inkrementellen Sicherung) seit der letzten Komplettsicherung geändert oder hinzugefügt wurden
- Es wird immer auf der letzten inkrementellen Sicherung aufgesetzt
- Bei einer Wiederherstellung müssen die Daten aus mehreren Sicherungen zusammengetragen werden
- Dafür muss gewährleistet sein, dass die vollständige Kette aller Sicherungen bis zur letzten Vollsicherung in der korrekten Abfolge fehlerfrei nachvollziehbar ist
- Dies wird z. B
- durch Datumsstempel oder Prüfsummen erreicht
Inkremente der Datensicherung können auf zwei Weisen gespeichert werden:
- Üblich sind die forward deltas
- Die (ältere) Vollsicherung dient als Fundament und wird nicht verändert, während darauf die Inkremente aufgebaut werden
- Der aktuelle Datenbestand kann nur unter Berücksichtigung von Inkrementen wiederhergestellt werden
- Beispiele: duplicity
- Eine inkrementelle Sicherung mit reverse deltas kehrt dieses Prinzip um
- Bei jeder Sicherung werden geänderte Daten in der Vollsicherung und die vorherigen alten Daten in einem Inkrement gespeichert
- Auf die Vollsicherung kann jederzeit problemlos zugegriffen werden, während eine ältere Version einer Datei nur durch Berücksichtigung der Inkremente wiederhergestellt werden kann
- Beispiel: rdiff-backup.
Die inkrementelle Sicherung hat einen sehr geringen Speicherbedarf, das Verfahren eignet sich daher für die Datensicherung in Netzwerken oder in der Cloud
- Andererseits sind prinzipbedingt alle Inkremente miteinander verkettet, weshalb es nur mit großem Rechenaufwand möglich ist, ein Inkrement zwischen zwei anderen Inkrementen zu entfernen, etwa um Speicherplatz zu sparen oder private Daten zu löschen
Inkrementelle Sicherung
- Es wird also immer auf der letzten inkrementellen Sicherung aufgesetzt.
- vollständige Kette (Vollsicherung – inkrementelle Sicherungen 1, 2, 3 usw. – Originaldaten) muss fehlerfrei nachvollziehbar sein
- Inkremente können auf zwei Weisen gespeichert werden:
- 1. forward deltas:
- Vollsicherung dient als Fundament und wird nicht verändert - Inkremente werden darauf aufgebaut (z. B. duplicity, duply, RSYNCH, RSNAPSHOT)
- 2. reverse deltas (umgekehrtes forward deltas):
- Vollsicherung verändert sich bei jeder Datensicherung
- Hat sich eine Datei gegenüber der letzten Vollsicherung verändert, wird die vorherige Dateiversion als Inkrement gespeichert
- aktuelle Version wird in die Vollsicherung eingefügt
- Auf die Vollsicherung kann jederzeit problemlos zugegriffen werden
- Bsp. rdiff-backup
- 1. forward deltas:
- Vorteil:
- geringer Speicherbedarf
- besonders geeignet für Datensicherung in Netzwerken oder in der Cloud
- Nachteil:
- alle Inkremente miteinander verkettet, weshalb es ist nur mit sehr großem Rechenaufwand möglich, ein Inkrement zwischen zwei anderen Inkrementen zu entfernen, etwa um Speicherplatz zu sparen oder private Daten zu löschen
Erkennung veränderter Dateien
Zur Unterscheidung von veränderten Dateien und bereits gesicherten, unveränderten Dateien setzen manche Dateisysteme spezielle Dateiattribute ein, die bei einer Veränderung automatisch vom System gesetzt werden und bei einer Voll- oder inkrementellen Sicherung vom Sicherungsprogramm wieder gelöscht werden (z. B. das Archivbit bei FAT und NTFS)
- Stehen solche Attribute nicht zur Verfügung, muss die Backup-Software über die Dateien Buch führen, etwa durch den Abgleich des Datei-Datums, der Dateigröße oder den Einsatz von Prüfsummen wie SHA-1
- Beispielsweise verwendet tar bloße Zeitstempel, rdiff-backup Zeitstempel und Dateigrößen, und duplicity zusätzlich SHA-1
Problematik bei verschlüsselten Daten
Das Backup von verschlüsselten Dateien ist in zweierlei Hinsicht problematisch: Wird der Inhalt der Datei nur geringfügig verändert, verfügt der Angreifer dank verschiedener Backups über verschiedene Versionen der verschlüsselten Datei
- Die Annahme, dass von Inkrement zu Inkrement der Klartext der Datei nur geringfügig verändert wurde und die deutliche Mehrheit des Klartextes identisch bleibt, kann für die Kryptoanalyse nützlich sein
Einige Verschlüsselungstools (wie TrueCrypt) speichern das Änderungs-Datum nicht ab und verändern die Größe der verschlüsselten Datei nicht (Containerdatei mit fixer Größe, oder Padding, um die Datei auf die gewünschte Fixgröße aufzufüllen)
- Dies hat vor allem den Zweck, dem Angreifer die Suche nach den geheimen Inhalten zu erschweren
- Dies hat aber zur Folge, dass die Backup-Software die veränderte Datei nicht erkennen kann
- Dies führt dann zu einem anderen Problem: Von verschlüsselten Daten werden unter Umständen keine Backups erstellt, solange die Backup-Software nicht mit Prüfsummen arbeitet
Anhang
Siehe auch
Links
Weblinks
TMP
Erkennung veränderter Dateien
- über Anlage spezieller Dateiattribute
- Abgleich des Datei-Datums
- Abgleich der Dateigröße
- und/oder den Einsatz von Prüfsummen wie SHA-1, MD5, SHA-256
Backup und Zeitstempel
Zeitstempel spielen beim Backup eine besondere Rolle, zum Einem möchte man bei vielen Backupaufgaben bei der Wiederherstellung der Dateien aus dem Backuparchiv die alten Zeitstempel wieder haben, zum anderen benötigt man zum Beispiel
- bei inkrementellen Backups die Zeitstempel der Dateien, um herauszufinden, ob sich die Datei seit dem letztem Backup geändert hat und somit jetzt in das inkrementelle Backup mit aufgenommen werden muss.
- Und nicht zu guter Letzt, gibt es auch Backup Methoden bei denen einzelne Dateien innerhalb eines Backuparchives gezielt ausgetauscht werden, wenn sie sich seit dem Erstellen des Backups geändert haben, oder in der Zwischenzeit neu hinzu gekommen sind, müssen sie natürlich jetzt in das Archiv aufgenommen werden.
- Beim Anlegen eines Backups werden die Dateien ausgelesen, durch dieses Auslesen wird im Normalfall die atime dieser Dateien neu gesetzt.
- Dieses hätte jedoch zur Folge, dass in einem so gesicherten Verzeichnis nicht nach den Dateien gesucht werden könnte, auf die schon länger nicht mehr zugegriffen worden ist, um sie zum Beispiel
- zu löschen.
- Aus diesem Grund haben die meisten Backupprogramme spezielle Optionen, die das setzen der atime beim Backup verhindern.
- Dieses kann aber nur dadurch erreicht werden, dass nach dem die Datei ausgelesen wurde, die alte atime wieder neu gesetzt wird.
- Der touch-Befehl und viele andere Programme (auch tar) mit denen die Zeitstempel in den Inode manipuliert werden können, nutzen den Systembefehl utime dafür.
- Bei diesen Befehlen wird beim zurücksetzen der atime auf den alten Wert, die ctime zerstört und auf die aktuelle Zeit gesetzt.
- Das hat dann die Konsequenz, das nach einem Backup dann in diesem Verzeichnis zwar nach Dateien gesucht werden kann, auf die lange nicht zugegriffen wurde, aber nicht mehr nach Dateien gesucht werden kann, bei denen in der letzten Zeit die ctime verändert wurde.
- Auch kann mit solchen Backupprogrammen nur die atime und die mtime der Dateien wieder hergestellt werden, die ctime wird auf eine Zeit des Zurückspielens der Sicherung gesetzt.
- Bei inkrementellen Backups stellt sich die Frage, sollen die Dateien nach der mtime oder der ctime beurteilt werden.
- Wird die Datei nach der Änderung der mtime beurteilt, dann sind dort sämtliche Änderungen am Inhalt dieser Datei für das Backup berücksichtigt, jedoch nicht, zum Beispiel
- eventuelle vorgenommene Änderungen an den Besitz- oder Zugriffsrechten.
- Einige Backupkonzepte ermöglichen die Wahl zwischen beiden Varianten, einige Programme unterstützen jedoch nur die Suche nach dem geänderten mtime Zeitstempel.
- Gelegentlich ein kleines Problem sind die Zeitstempel der Verzeichnisse.
- Wird zum Beispiel
- zuerst das Verzeichnis aus dem Backup gewonnen, dann können die gespeicherten Zeitstempel aus dem Backup zwar gesetzt werden, wenn jedoch anschließend noch die Dateien aus diesem Verzeichnis hineingepackt werden, dann sind die Zeitstempel der Verzeichnisse wieder auf dem Zeitpunkt des Auspackens der letzten Datei in diesem Directory gesetzt und nicht wie gewünscht, die vom gesicherten Verzeichnis.
- Von Bedeutung für manche Anwendungen ist auch die Genauigkeit mit der die Zeitstempel in den Headerdateien des Backups abgelegt werden können, während für einige Anwendungen durchaus eine Genauigkeit von 1 Sekunde ausreicht, benötigen andere Backupkonzepte eventuell eine Genauigkeit von 1/1000 Sekunde.
- Aus diesen Ausführungen sollte jetzt erkennbar sein dass es zwischen Backup und Zeitstempel eine doch recht vielschichtige Wechselwirkung gibt, die sich oftmals nur mit der Wahl des für diesen Zweck geeigneten Backupprogramms und den richtigen Einstellungen und Optionen lösen lässt.
- Wem die Möglichkeiten zum Beispiel
- von tar in Bezug auf die Zeitstempel nicht ausreichen und wer eventuell auch noch weitere Features wie zum Beispiel ACL-Unterstützung benötigt, dem sei an dieser Stelle ein Blick in die ManPage von star empfohlen.
tar und Zeitstempel
Der Befehl tar (Tape ARchiver) bezeichnet ein Programm mit dessen Hilfe einfache Backup-, Archivierungs und ähnliche -Arbeiten am System gemacht werden können.
- Wenn wir unter LINUX von tar sprechen, meinen wir damit eigentlich eine GNU implementierung eines unter UNIX als tar bezeichneten Befehls.
- Man bezeichnet das Programm deshalb auch auf anderen Systemen GNUtar oder gtar.
- Die beiden Programme (UNIX tar und GNU tar) sind nur bedingt kompatibel.
- Daneben existieren noch mehrere mit TAR verwandte Implementationen die mehr oder weniger viele Erweiterungen und Verbesserungen beinhalten, und oft noch weniger kompatibel zu ihren Urprogrammen sind.
- Die Stärke von tar liegt in der einfachen und universellen Benutzung, eine der historisch gewachsenen Schwächen von tar, ist der Umgang mit Zeitstempeln.
- Mit tar läßt sich nur die mtime wieder herstellen.
- Die atime und die ctime werden zerstört und durch die aktuelle Zeit beim Restore ersetzt.
- Moderne Versionen von tar haben eine Option, um mittels der mtime inkrementelle Backups machen zu können.
- Eine weitere Option von tar ermöglicht es beim Erstellen des Archives die atime, (welche durch das Lesen der Dateien beim Erstellen des Archives verändert würde,) vor Veränderung zu schützen, allerdings mit der Nebenwirkung, dass damit analog zum touch-Befehl, die ctime der oginalen Dateien zerstört wird.
- Damit ist tar durchaus noch geeignet um einfache Backupaufgaben zu übernehmen, und ein Linuxsystem aus einem Tar-Archiv wird sicherlich ohne Probleme funktionieren, allerdings die gehobenen Anspüche die heute an ein modernes Backupprogramm gestellt werden, kann tar damit nicht erfüllen.
- Die Hauptbedeutung und der Haupteinsatz von GNUtar ist heute deshalb auch mehr im Bereich der Verteilung und Verbreitung von Softwarepaketen zu finden.
- Den Umfang und die Funktionen können der ManPage von tar entnommen werden.