Dieses Handbuch wird mit freundlicher Genehmigung von Sebastian Hetze auf den Servern der Linux Information Systems AG gehosted.

next up previous contents index
Next: Der Druckerdämon lpd Up: Systemverwaltung Previous: Softwaremanagement

Subsections


Datensicherung

    Die regelmäßige Datensicherung (Backup) ist eine der wichtigsten Aufgaben der Systemverwalterin. Sei es durch versehentliches Löschen, sei es durch Hardwarefehler oder durch einen Fehler des Betriebssystems, früher oder später macht jeder Computerbenutzer die Erfahrung eines Datenverlustes. Ein Backup ist in der Regel die einzige Möglichkeit, wenigstens einen Teil der Daten zu restaurieren.

Auch wenn ein regelmäßiges Backup einigen Arbeitsaufwand bedeutet, steht diese Mühe meist in keinem Verhältnis zu einer manuellen Rekonstruktion der Daten. Auf professionellen Systemen, bei denen möglicherweise sogar mehrere Benutzer auf einem Datenbestand arbeiten, ist wenigstens eine wöchentliche, besser eine tägliche Datensicherung erforderlich.

Medien zur Datensicherung

  Datensicherung kann auf sehr verschiedene Weisen und auf verschiedenen Medien erfolgen. Es besteht zum Beispiel die Möglichkeit, Kopien von wichtigen Dateien in einem anderen Teil des Dateisystems (auf einer anderen Partition oder Festplatte) anzulegen. Natürlich können auch Disketten zur Datensicherung verwendet werden. Im allgemeinen werden aber Magnetbänder benutzt, um Backups vom System zu machen.

Magnetbänder im Allgemeinen

 

Magnetbänder haben gegenüber allen anderen Medien mehrere Vorteile:

Der Nachteil von Magnetbändern besteht im sehr langsamen Zugriff auf einzelne Dateien. Die Topologie des Magnetbandes erzwingt eine rein sequentielle Form der Datenspeicherung. Um an Daten in der Mitte des Bandes heranzukommen, muß das gesamte Band bis zur gesuchten Stelle gelesen werden. Die Vorteile überwiegen diesen Nachteil bei der Datensicherung aber so stark, daß auf allen Systemen, wo ernsthafte Datensicherung betrieben wird, Magnetbänder eingesetzt werden.

Magnetbandlaufwerke werden als zeichenorientierte Geräte betrieben. Trotzdem sind die Daten auf dem Medium in Blöcken organisiert. Das schafft einige Verwirrung und führt in manchen Grenzfällen zu Komplikationen. Von den echten Blockgeräten unterscheiden sich die Bandlaufwerke, weil nicht ein bestimmter einzelner Block gelesen oder geschrieben werden kann.[*] Im Unterschied zu den Magnetplattenspeichern werden die Magnetbänder in der Regel nicht formatiert. Deshalb gibt es auf Magnetbändern keine physikalisch numerierten Datenblöcke, es gibt keine Dateisysteme und kein Inhaltsverzeichnis und das Einbinden eines Magnetbandes in das Dateisystem mit dem mount-Kommando ist unmöglich. Der Zugriff auf die Daten findet immer sequentiell statt. Um die Daten eines bestimmten Blockes zu erhalten, müssen alle vorhergehenden Blöcke gelesen werden.

Bei den alten 9-Spur Industrielaufwerken konnte (oder mußte) das Band im Start/Stop Betrieb zwischen zwei Datenblöcken immer angehalten werden. Bei den Magnetbandgeräten für PC geht das in der Regel nicht, weil der für das Anhalten nötige Zwischenraum zugunsten der Datenkapazität praktisch weggefallen ist. Die Daten werden auf den Magnetbändern als kontinuierlicher Datenstrom gespeichert. Wegen dieser Art des Datentransfers werden die Bandlaufwerke auch als Streamer bezeichnet.

Für alle Magnetbandgeräte existieren zwei verschiedene Betriebsarten:
1.
``Rewind on Close''. In dieser Betriebsart wird das Band nach dem Schließen der Gerätedatei, also nach Beendigung der Lese- oder Schreiboperation, automatisch zurückgespult.
2.
``No Rewind on Close''. In dieser Betriebsart wird das Band nach Beendigung einer Operation angehalten und bleibt so stehen, bis die nächste Operation durchgeführt wird.
Die Auswahl einer Betriebsart findet durch die Gerätedatei statt, über die das Laufwerk angesprochen wird.

Viele Bandgeräte können mit Magnetbändern unterschiedlicher Kapazität arbeiten. Dazu müssen verschiedene Aufzeichnungsparameter, namentlich die Anzahl der Spuren, die Schreibgeschwindigkeit und die Schreibdichte, eingestellt werden.

Obwohl die meisten Laufwerke diese Parameter automatisch einstellen, erlauben einige Gerätetreiber die Vorauswahl eines Bandtyps durch die Benutzung einer bestimmten Gerätedatei.

Alle von Linux unterstützten Bandlaufwerke arbeiten mit Magnetbandkassetten (Cartridges). Die Bänder der am weitesten verbreiteten Streamer sind 1/4 Zoll breit, deshalb werden sie auch als Quarter-Inch-Cartridges bezeichnet. Sowohl das Aufzeichnungsformat für solche Bänder, als auch die Ansteuerung der mit diesen Bändern arbeitenden Laufwerke ist in den verschiedenen Standards des Quarter Inch Comitee (QIC) definiert.

  Die für Linux wichtigsten QIC-Normen sind:

QIC-02
In der QIC-02 Spezifikation ist die Ansteuerung von DC6XXX Streamern mit eigenen Controllerkarten beschrieben.
QIC-24
In QIC-24 ist das Aufzeichnungsformat für DC600A Bänder mit 60MB Kapazität (9Spuren, 10.000FTPI) definiert.
QIC-40/-80/-3010/-3020
In den Standards QIC-40, QIC-80 QIC-3010 und QIC-3020 sind die Aufzeichnungsformate für DC2XXX und Travan TR2/TR3 Magnetbänder festgelegt, wie sie in Floppystreamern verwendet werden.
QIC-117
In QIC-117 ist die Ansteuerung der Floppystreamer beschrieben.
QIC-120/-150/-525...
Die Spezifikationen QIC-120, QIC-150, QIC-525 usw. beschreiben das Aufzeichnungsformat der DC6XXX Magnetbänder mit den entsprechenden Kapazitäten. Das Aufzeichnungsverfahren ist bei diesen Formaten identisch mit QIC-24, lediglich die Aufzeichnungsdichte und die Bandqualität sind unterschiedlich.

Neben den QIC-konformen Bandgeräten kann Linux auch mit allen SCSI-Streamern[*] umgehen.

Alle Streamer, die am Druckerport betrieben werden, können unter Linux (noch) nicht betrieben werden.

Mehrere Dateien (Archive) auf einem Magnetband

 

Wenn ein kontinuierlicher Datenstrom, sprich eine Datei, abgeschlossen ist, wird auf dem Band eine Markierung für das Dateiende (EOF, End Of File)[*] geschrieben. Wenn Sie ein Bandarchiv mit tar oder cpio erzeugen, wird diese Markierung immer ans Ende des gesamten Archivs gesetzt. Die einzelnen Dateien in diesem Archiv werden nur durch das Archivierungsprogramm unterschieden.

Wenn nach dem Dateiende noch freier Speicherplatz auf dem Band vorhanden ist, kann eine weitere Datei oder ein Archiv an die bereits geschriebenen Daten angehängt werden.

Mit dem mt-Kommando müssen Sie dazu das Band hinter die Endmarkierung positionieren. Damit das Band nach dem mt-Kommando nicht automatisch zurückgespult wird, muß das Bandgerät im ``No Rewind on Close'' Modus betrieben werden.

  Wenn Sie beispielsweise bereits eine Datei (ein Archiv) auf einem SCSI-Streamerband gespeichert haben und eine zweite Datei auf das gleiche Band schreiben wollen, positionieren Sie das Band mit dem folgenden Kommando hinter die erste Datei:

$ mt -f /dev/nst0 fsf 1
$ _
Mit der -f Option wird der erste SCSI-Streamer im ``No Rewind On Close'' Modus ausgewählt. Die Operation fsf 1 (forward skip file) spult das Band bis zur ersten Dateiendemarke vor. Wenn das Kommando abgeschlossen ist, hält der Bandmotor an und der Schreib/Lesekopf steht hinter der ersten Datei. Wenn Sie jetzt mit einem der Archivierungsprogramme ein Schreib- oder Lesekommando ausführen, läuft der Bandmotor wieder an und führt die Aktion an dieser Stelle aus.

Wenn mehrere Dateien (Archive) auf einem Band gespeichert sind, können Sie keine Datei am Anfang oder in der Mitte löschen/überschreiben. Eine Schreiboperation in der Mitte des Bandes würde automatisch alle hinter der Dateiende-Markierung liegenden Daten unzugänglich machen.

Dateien (Archive) auf mehreren Magnetbändern

    

Obwohl die Magnetbänder große Datenmengen speichern können, kommt es manchmal vor, daß ein Linux-System oder eine Linux-Partition, nicht einmal komprimiert, auf ein einzelnes Magnetband paßt. In diesem Fall kann, die geeignete Software vorausgesetzt, das Backup auch auf mehrere Bänder verteilt werden.

Durch spezielle Markierungen auf den Magnetbändern, die sogenannten Early Warning Marks, erkennt das Bandgerät das Bandende im Voraus. Bei den Bandgeräten mit fester Blockgröße (QIC-02 und Floppystreamer) reicht die Kapazität immer aus, um den aktuellen Datenblock und einen abschließenden Block vom Archivierungsprogramm unterzubringen. Bei SCSI-Streamern, die variable Blockgrößen verwenden können und die einen Teil der Daten verzögert schreiben, kann es zu Problemen kommen, wenn das Band die verzögerten Daten nicht mehr fassen kann.[*]

Floppystreamer

   

Wegen des günstigen Anschaffungspreises sind die Floppystreamer für den Einsatz in kleinen bis mittleren Linux-Systemen besonders interessant. Diese Bandlaufwerke werden wie ein drittes Diskettenlaufwerk an den normalen Floppycontroller angeschlossen.

Die im Handel befindlichen kleinen Floppystreamer verwenden in der Regel das QIC-80 Format. In diesen Streamern werden Mini-Cartridges vom Format DC2080 oder DC2120 verwendet, die eine Kapazität von 80 bzw. 120 Megabyte unkomprimierter Daten haben, durch extra lange Bänder kann die Kapazität auf 170 MB gesteigert werden.[*] Die moderneren Floppystreamer mit höheren Kapazitäten arbeiten mit Traven TR2/TR3-Bändern in den Formaten QIC-3010 und QIC-3020. Diese Bänder können 400MB und mehr speichern.

Die Datentransferrate aller Floppystreamer wird vom Floppycontroller bestimmt. Im schlechtesten Fall lassen sich 126 Megabyte pro Stunde schreiben. Mit dem Controllerbaustein 82078-1 kann die Leistung des gleichen Laufwerks vervierfacht werden.

Im Unterschied zu den SCSI-Streamern, die durch die sehr genaue Spezifikation der Geräteschnittstelle alle in der gleichen Weise angesteuert werden können, lassen sich die QIC-117 Streamer nicht alle exakt gleich betreiben. Für Linux gibt es Treiber für die folgenden Geräte:


Colorado DJ-10        Colorado Jumbo 120    Colorado DJ-20
Colorado Jumbo 250    Summit SE 150         Summit SE 250
Archive 5580i         Archive XL9250i       Archive 31250Q
Insight 80Mb          Conner C250MQ         Wangtek 3080F
Iomega 250            Mountain FS8000

Zur Beschleunigung der Floppystreamer werden spezielle Adapterkarten mit einem schnellen Controllerbaustein angeboten. Ftape unterstützt folgende Adapter:

Seit der Treiber für Floppytapes in den normalen Kernelsourcen enthalten ist, kann beim Übersetzen eines neuen Kernels zwischen der festen Einbindung des Treibers in den Kernel oder der Übersetzung des Treibers als Modul gewählt werden.

Das Laden des Moduls kann auch durch den ``Kerneldämon'' kerneld bei Bedarf automatisch vorgenommen werden. In diesem Fall müssen Sie darauf Achten, das Gerät immer mit Rewind On Close zu benutzen. Anderenfalls kann beim automatischen Entfernen und Neuladen des Treibermodul ein Fehler in der Blockzählung auftreten und dadurch Daten verloren gehen.

Um Daten auf einem Floppytape speichern zu können, muß das Medium zuerst formatiert werden. Ähnlich wie beim Formatieren von Disketten werden leere Blöcke mit einer Größe von 512 Bytes auf das leere Band geschrieben. Diese Blöcke werden dann beim Beschreiben des Bandes mit Daten gefüllt.[*]

Linux erlaubt bislang nicht die Formatierung von Magnetbändern. Wenn Sie Ihre Floppytapes nicht unter MS-DOS formatieren können oder wollen, sollten Sie sich einfach fertig formatierte Markenbänder kaufen. Das spart erstens viel Zeit und stellt zweitens eine hohe Qualität des Magnetbandes sicher.   

QIC-Streamer

 

Die Bandlaufwerke mit einem eigenen Controller nach dem QIC-02 Standard verwenden 1/4 Zoll Cartridges normaler Größe (15x10 cm). Je nach Streamertyp können die QIC-02 Geräte Bänder in den Formaten QIC-24, QIC-120, QIC-150 usw. schreiben und/oder lesen.

Der QIC-02 Treiber wurde für den Wangtek-5150 Streamer geschrieben. Es gibt keine offizielle Liste aller unterstützten QIC-02 Streamer. Bei Everex und Archive Laufwerken sind die Chancen sehr gut, daß der Streamer sofort erkannt wird.

Je nach Typ des Bandgerätes können Bänder mit verschiedener Aufzeichnungsdichte verwendet werden. Die Einstellung einer bestimmten Dichte geschieht durch die Wahl der Gerätedatei für das Bandgerät.

Die QIC-02 Streamer arbeiten mit einer festen Blockgröße von 512 Bytes.

SCSI-Streamer

 

Wie alle SCSI Geräte haben auch die SCSI Bandlaufwerke eine sehr umfangreiche Steuerlogik ``an Bord''. Das Betriebssystem kommuniziert mit dem Laufwerk über den Hostadapter auf einem sehr hohen Abstraktionsniveau. Das Magnetbandtyp oder das physikalische Aufzeichnungsformat spielen hier keine Rolle mehr. Aus diesem Grund können praktisch alle SCSI Bandgeräte unter Linux eingesetzt werden. Lediglich die Größe der physikalischen Blöcke darf die maximale Puffergröße von 32kB nicht überschreiten.

Weite Verbreitung haben die 1/4 Zoll Streamer, die mit den gleichen Cartridges arbeiten wie die QIC-02 Bandgeräte und die DAT-Streamer, die auf nur 4mm breiten Bändern enorme Datenmengen speichern können.

Weil der SCSI-Standard sehr generell gefaßt ist, werden die physikalischen Aufzeichnungsparameter nicht fest vorgegeben.

Die Aufzeichnungsdichte, die Blockgröße und die Datenpufferung können durch Systemaufrufe verändert werden, vorausgesetzt die Kombination von Bandgerät und Band erlauben die gewünschten Werte.

Während die Aufzeichnungsdichte automatisch erkannt wird und in der Regel nicht verändert werden sollte, kann es bei manchen Bandgeräten nötig oder vorteilhaft sein, die Datenpufferung einzuschalten, um ein gleichmäßigeres Strömen der Daten zu erreichen.

Wenn Sie Magnetbänder zwischen verschiedenen Betriebssystemen tauschen wollen, muß die Einstellung für die Größe der physikalischen Datenblöcke beim schreibenden und dem lesenden System übereinstimmen. Bei den SCSI-Geräten können verschiedene feste oder während der Aufzeichnung variierende Blockgrößen benutzt werden, wenn das Bandformat und das Gerät mitspielen.

Die Datenübertragungsrate der SCSI-Streamer hängt stark vom verwendeten Bandgerät, der Aufzeichnungsdichte (also dem Bandtyp) und auch vom Hostadapter ab. Sie ist aber in jedem Fall deutlich höher als bei den Floppystreamern.    

Disketten

 

Anstelle von Magnetbändern können auch Disketten als Medium zur Datensicherung eingesetzt werden. Dabei werden die formatierten Disketten direkt, roh beschrieben. Ein Dateisystem ist ebenso unnötig wie das Mounten der Diskette. Stattdessen wird die rohe Diskette direkt über die Gerätedatei für das Diskettenlaufwerk angesprochen.

Im Unterschied zu den zeichenorientierten Bandlaufwerken arbeiten die Diskettenlaufwerke blockorientiert. Dadurch sind Rückschritte und Positionierung vor das Dateiende kein Problem.

Methoden der Datensicherung

    Das Ziel jeder Datensicherung ist es, alle System- und Benutzerdaten einer Linux-Installation vor einem ungewollten Verlust zu schützen.

Weil sich bestimmte Daten, vor allem die Daten der Systembenutzer, kontinuierlich ändern, ist eine hohe Frequenz der Datensicherung erforderlich. Für Systeme im professionellen Einsatz ist ein tägliches Backup angebracht.

Bei einer sehr hohen Backupfrequenz ist es weder erforderlich, noch wünschenswert, jedesmal sämtliche Daten erneut zu sichern. Im Prinzip reicht es aus, immer nur die seit dem letzten Backup veränderten Dateien zu sichern, um den aktuellen Zustand restaurieren zu können. Diese Methode des inkrementellen (aufsteigenden) Backups hat mehrere Vorteile:  

1.
Jedes einzelne Backup läßt sich sehr schnell durchführen, weil die Menge der veränderten Daten verglichen mit dem gesamten System sehr klein ist.
2.
Die Methode ist kostengünstig, weil keine unveränderten Daten doppelt gespeichert werden.
3.
Die Wahl des Mediums ist maximal flexibel. Bei vielen Systemen kann für die inkrementellen Backupschritte sogar eine Diskette verwendet werden.

Bei inkrementellen Backups können noch verschiedene Level unterschieden werden, indem mehrere Sicherungen als Bezugspunkt gewählt werden. Einem vollständigen Backup wird der Level 0 zugeordnet. In den Backups mit Levels größer als 0 werden nur die Daten gespeichert, die seit der letzten Sicherung mit einem Level kleiner oder gleich dem aktuellen Level verändert worden sind. In einem Backup Level 1 werden also alle Daten gespeichert, die seit dem letzten Vollbackup verändert worden sind und die noch nicht in einem anderen Backup vom Level 1 enthalten sind. Im Level 2 werden dann nur die Daten gespeichert, die seit dem letzten Backup mit Level 0, 1 oder 2 verändert worden sind und so weiter.

Als Abwandlung des oben beschriebenen Modells können die Level auch so definiert werden, daß immer nur die Veränderungen seit einem Backup mit streng niedrigerem Level gespeichert werden. Bei dieser Methode werden bei wiederholten Sicherungen eines Levels viele Daten mehrfach gesichert.

Sie sollten in jedem Fall so viele Bänder zur Datensicherung verwenden, daß Sie bei jedem Sicherungsschritt das letzte Backup vollständig behalten können. Nur so sind Sie in der Lage, einen Festplattencrash während des Sicherungslaufes zu restaurieren.

Die optimale Methode der Datensicherung hängt von der Beschaffenheit Ihres Systems ab. In der Regel besteht sie aus zwei oder dreistufigen Kombinationen von vollständigen und inkrementellen Backups. In regelmäßigen, größeren Abständen wird eine vollständige Sicherung aller Daten auf einem oder mehreren Bändern großer Kapazität gemacht. Relativ zu dieser Vollsicherung werden dann inkrementelle Sicherungen durchgeführt.


Größe (MB)	Mountpunkt
20		/		Rootpartition
120		/usr		Programme und Daten (statisch)
40		/home		Heimatverzeichnisse
60		/var/spool	News und Mail

Wenn Sie zum Beispiel eine Systemaufteilung wie in der Tabelle dargestellt mit einem QIC-80 Floppystreamer sichern wollen, bietet es sich für ein vollständiges Backup (Level 0) an, die /usr Partition auf einem Band und den Rest des Systems auf einem anderen zu sichern.

Wenn Sie dieses Vollbackup an jedem ersten Sonntag im Monat durchführen, können Sie auf einem dritten Band jeden weiteren Sonntag alle Änderungen der vergangenen Woche als inkrementelle Sicherungen (Level 1) speichern. Um die Bandkapazität besser auszunutzen, können Sie alle Level 1 Archive eines Monats hintereinander auf ein Band schreiben.

Ein anderes Modell ergibt sich, wenn Sie die inkrementellen Sicherungen immer relativ zum letzten Vollbackup anlegen. Dann werden die Level 1 Sicherungen von Mal zu Mal größer. Sie machen das nächste Vollbackup, wenn die Menge der veränderten Daten ein von Ihnen bestimmtes Maß überschreitet, spätestens wenn sie nicht mehr auf einem einzigen Band Platz findet. Der Vorteil dieses Modells besteht darin, daß Sie das Magnetband nicht hinter die bereits geschriebenen Daten der letzten Sicherungen positionieren müssen, weil die ja nocheinmal geschrieben werden. Der Nachteil ist, daß die Sicherungen von Mal zu Mal länger dauern.

Wenn Sie besonders wichtige Daten, beispielsweise die Heimatverzeichnisse, häufiger sichern wollen, bieten sich auf einem kleinen System Disketten als Sicherungsmedium an.

Weil Sie den größten Teil des Systems auf einem Installationsmedium vorliegen haben, ist im Extremfall gar keine Sicherung des kompletten Dateisystems notwendig. Sie können der ``rohen'' Linux-Installation den Level 0 zuordnen und alle Veränderungen als inkrementelle Sicherungen relativ zu Ihrer Distribution speichern.

Selbstverständlich stehen Ihnen Kommandos zur Verfügung, die Sie bei der Erstellung inkrementeller Backups unterstützen. Vor allem das find-Kommando ist hervorragend zur Erstellung von Dateilisten geeignet. Das tar-Programm bietet Ihnen Optionen, mit denen Sie sehr einfach inkrementelle Backups machen können. Es ist leicht möglich, die Datensicherung automatisch durch ein Script ausführen zu lassen.

Backup Software

  Auf Magnetbändern können keine Dateisysteme eingerichtet werden, sie enthalten keine Verzeichnisse und können nicht in den Dateisystembaum eingebunden werden. Es ist zwar möglich, mehrere Dateien auf ein Band zu schreiben, die Dateinamen, Eigentümer, Zugriffsrechte und alle Zeitmarken gehen aber verloren, weil diese Daten nicht Teil der Datei selbst sind, sondern in der Inode der Datei gespeichert werden.

Deshalb werden zur Sicherung der Daten auf Band spezielle Programme verwendet, die eine Vielzahl von Dateien zu einem einzigen Datenstrom, also einer einzigen Datei, zusammenfassen und mit allen dazugehörenenden Systemdaten verwalten können.

Die am häufigsten zu diesem Zweck herangezogenen Programme sind tar, afio und cpio. Die Programme dump und restore, die bei BSD-Unix zur Datensicherung verwendet werden, sind unter Linux noch nicht erhältlich. In besonderen Fällen kommt noch das dd-Kommando als Sicherungssoftware in Frage.

Datensicherung mit tar

    Eine der Grundaufgaben von Backupsoftware, nämlich die Zusammenfassung mehrerer Dateien zu einer einzigen, sowie alle zum Management dieses Datenpaketes gehörenden Aufgaben werden nicht nur zur Datensicherung auf Magnetbändern benötigt. Die gleiche Funktionalität wird auch zur Verwaltung der C-Funktionsbibliotheken gebraucht. Diese Bibliotheken, auch als Archive bezeichnet, werden von dem zum Entwicklungssystem gehörenden ar-Kommando erzeugt und verwaltet.

Speziell auf die Verwendung mit Bandarchiven weiterentwickelt gibt es auf praktisch allen Unix-Systemen den Tape-Archiver tar. Dank des sehr flexiblen Dateikonzeptes von Linux kann tar auch Archive im Dateisystem als neue Dateien erzeugen und sie verwalten. In dieser Form wird fast alle Freie Software im Internet verteilt. Die Softwarepakete aller Linux-Distributionen sind mit tar archiviert.

Eine komplette Kommandobeschreibung zu tar finden Sie hierff.

Mit den Magnetbandgeräten, die unter Linux Verwendung finden, können nicht alle Funktionen von tar uneingeschränkt genutzt werden. Insbesondere kann ein Bandarchiv nicht erweitert werden. Das bedeutet, daß die Optionen -A, -r und -u nicht funktionieren. Außerdem ist das Löschen oder Ersetzen einzelner Dateien in einem Bandarchiv mit -delete nicht möglich. Trotzdem ist das GNU-tar ausgezeichnet zur Sicherung/Archivierung großer Datenmengen auf Magnetbänder geeignet.

Sie erzeugen ein neues tar-Archiv mit der Option -c. Um beispielsweise ein vollständiges Backup auf das SCSI-Bandlaufwerk zu schreiben, geben Sie die folgende Kommandozeile ein:
# tar -c -M -b 126 -V "Level 0" -f /dev/rmt0 -g /var/adm/Backup/Dir /
tar: Removing leading / from absolute path names in the archive.
tar: Removing leading / from absolute links
Prepare volume #2 for /dev/rmt0 and hit return:
# _
Wie Sie sehen, macht tar automatisch aus allen absoluten Pfadnamen relative. Das geschieht, damit Sie das Archiv relativ zu jedem beliebigen Verzeichnis auspacken können. Wenn Sie die absoluten Namen behalten wollen, müssen Sie den Schalter -P setzen.

Die -M Option zeigt tar an, daß Sie ein Archiv auf mehreren Bändern anlegen wollen, weil Ihre Daten nicht auf ein einziges Band passen. Wenn Ihre Daten nicht mehr als zwei Bänder füllen, können Sie durch die -z Option die Daten durch den gzip-Kompressor filtern.[*] Wenn nicht ein großer Teil der Daten bereits komprimiert im Dateisystem vorliegt, erreichen Sie eine Verdichtung der Daten mindestens um den Faktor 2. Es ist allerdings nicht möglich, komprimierte tar Archive auf mehrere Bänder zu verteilen.

In dem Beispiel oben wurde die Blockgröße mit der Option -b 126 gegenüber dem Standardwert von 20 deutlich erhöht. Das Optionsargument 126 bedeutet, daß tar die Daten in Portionen zu 126x512 Bytes, also 64 Kilobyte, auf das Band schreibt.[*] Die Vergrößerung des Wertes sorgt für einen flüssigeren Datenstrom und damit zu einer Beschleunigung des Sicherungslaufes. Sie müssen bei jeder Veränderung der Blockgröße aber darauf achten, daß Sie beim Lesen den gleichen Wert einstellen.

Mit der Option -V wird dem Archiv ein Name gegeben. Damit können Sie die Sicherungsbänder identifizieren, auch wenn Ihnen die externe Beschriftung verloren gehen sollte.

Nach der -f Option ist in dem Beispiel die Gerätedatei für den ersten SCSI-Streamer angegeben worden. Das Gerät wird im ``Rewind On Close'' Modus betrieben, das Band also nach Beendigung des Kommandos automatisch zurückgespult. Wenn Sie kein Gerät angeben, versucht tar auf das bei der Übersetzung des Programms voreingestellte Gerät zuzugreifen. Wenn Sie ein anderes Gerät für mehrere Aufrufe von tar oder mt voreinstellen möchten, können Sie das über die Umgebungsvariable TAPE machen.

Mit der -g Option wird eine Datei bestimmt, die gleichzeitig Zeitmarke des Backups und Inhaltsverzeichnis des Archives ist. Hier werden nur die Verzeichnisse, nicht die einzelnen Dateien eingetragen.  

Mit Hilfe dieser Datei ist es besonders einfach, inkrementelle Backups zu machen. Wenn Sie beispielsweise an einem anderen Tag alle Veränderungen relativ zu dem vollständigen Backup sichern wollen, können Sie folgendes Kommando eingeben:

# export TAPE=/dev/fd0
# tar -c -z -V "Backup Level 1 vom 28.08.94" -g /var/adm/Backup/Dir /
tar: Removing leading / from absolute path names in the archive.
# _
Jetzt werden automatisch alle Dateien gespeichert, deren Änderungszeit neuer als das letzte Backup ist. Hierbei werden Dateien, die mit mv umbenannt oder verschoben worden sind ebensowenig gesichert wie zusätzlich installierte, ältere Pakete, deren Erzeugungszeit beim Auspacken normalerweise nicht verändert wird.

Je nachdem wie das Linux-System genutzt wird, reicht für ein inkrementelles Backup auch eine Diskette als Speichermedium aus. In diesem Beispiel werden die Daten komprimiert, so daß mehr als drei Megabyte Textdaten auf einer rohen Diskette gespeichert werden können. Weil ein fehlerhafter Block auf der Diskette das gesamte Archiv ab diesem Block unbrauchbar macht, sollten Sie besonders zur komprimierten Datensicherung nur geprüfte Markendisketten verwenden.  

Wenn bei den einzelnen Sicherungsschritten mehr Daten anfallen, als auf einer Diskette Platz finden, werden Sie wahrscheinlich auch für die inkrementellen Backups Magnetbänder verwenden wollen. Um die Kapazität der Bänder auszunutzen, können Sie mehrere separate Archive hintereinander auf einem Band speichern. Zum Positionieren des Bandes müssen Sie das separate Kommando mt benutzen.   
# export TAPE=/dev/nftape
# mt eom
# tar -c -V "Backup Level 1 vom 30.08.94" -g /var/adm/Backup/Dir /
tar: Removing leading / from absolute path names in the archive.
# mt rewind
Mit dem ersten mt-Kommando wird das Band bis an das Ende der zuletzt geschriebenen Daten vorgespult. Dabei ist es gleichgültig, wieviele Dateien/Archive bereits auf das Band geschrieben worden sind.

Weil das Bandgerät im ``No Rewind On Close'' Modus betrieben wird (der Modus wurde durch die Gerätedatei gewählt), schreibt das tar-Kommando seine Daten von dieser Stelle an. Um das Magnetband zu schonen, ist es sinnvoll, das Band vor dem Entfernen des Cartridges aus dem Laufwerk zurückzuspulen.

Wenn Sie mehrere Archive auf einem Band gespeichert haben, kommen Sie an ein bestimmtes Archiv nur mit dem mt-Kommando heran. Magnetbänder haben kein Inhaltsverzeichnis, deshalb müssen Sie sich selbst merken, wieviele Archive auf dem Band gespeichert sind. Um beispielsweise das vierte Archiv auf dem Band zu erreichen, müssen Sie drei Archive überspringen:

# export TAPE=/dev/nftape
# mt fsf 3
# cd /
# tar -x
# mt rewind
# _

Mit der -x-Option veranlassen Sie tar, alle Dateien aus dem Archiv zu extrahieren. Durch dieses Kommando restaurieren Sie den Zustand des Dateisystems zum Zeitpunkt der Sicherung. Um ein vollständig zerstörtes System zurückzusichern, müssen Sie alle Backups in der Reihenfolge ihres Entstehens auf die leere Festplatte einspielen.

Das tar-Programm bietet noch eine Vielzahl weiterer Varianten der Datensicherung, die Sie beispielsweise im TEX-Info Dokument zu tar nachlesen können.  

Datensicherung mit afio und cpio

  

Das cpio-Kommando und die modernere Variante afio bilden die Grundlage für ein sehr flexibles Backupsystem. Die Flexibilität wird erreicht, indem sich die beiden Kommandos auf einen Teilaspekt der Sicherungsarbeit konzentrieren: sie erzeugen und verwalten ein Archiv, einen Datenstrom aus bestimmten Dateien. Die Namen der zu archivierenden Dateien müssen den Kommandos im Standardeingabekanal, beispielsweise als Ausgabe von find, übergeben werden. Damit sind cpio und afio zur Verwendung in Shellscripten prädestiniert.

Während tar bei den inkrementellen Sicherungen einfache und feste Kriterien zur Unterscheidung alter und neuer Dateien anlegt, kann durch das Zusammenspiel mehrerer auf bestimmte Teilaufgaben spezialisierter Werkzeuge eine sehr genaue Liste der veränderten Dateien erzeugt werden.

afio bietet zusätzlich die Möglichkeit, während der Archivierung die einzelnen Dateien zu komprimieren, ohne das gesamte Archiv durch den Kompressor zu leiten. Das hat den Vorteil, daß bei kleineren Fehlern im Archiv nur einzelne Dateien betroffen sind. Außerdem können so komprimierte Archive auf mehrere Bänder verteilt werden.

Wenn Sie die Vorteile von afio oder cpio nutzen wollen, brauchen Sie sich das dazu notwendige Script nicht selbst zu schreiben. Besonders empfehlenswert ist das backup-1.03 Paket für afio von Karel Kubat, das auf verschiedenen FTP-Sites zu finden ist.    


next up previous contents index
Next: Der Druckerdämon lpd Up: Systemverwaltung Previous: Softwaremanagement

Das Linux Anwenderhandbuch
(C) 1997 LunetIX