Freitag, Juli 27, 2007
Datei aus tar-Archiv wiederherstellen
Von Zeit zu Zeit erstelle ich von meinem Linux-Server hier zu Hause ein Backup mit mkcdrec. Das daraus resultierende iso-Image wird dann auf CD gebrannt und in mein Bankschliessfach nach Bern transferiert. Damit ich bei einem Notfall nicht bei meiner Bank vorsprechen muss, belasse ich das iso auf dem Server.
Leider muss ich hie und da auf die Backups zurückgreifen - wie heute. Mit einer blöden Aktion habe ich mir meine named.conf überschrieben. Was nun?
Als erstes habe ich das Image auf meine Workstation (Mac OS X) kopiert und danach gemountet (das Mounten ginge selbstverständlich auch ohne Transfer über das Netzlaufwerk). Danach habe ich die entsprechende Partition gesucht und das Datei-basierte, komprimierte Backup auf den Desktop verschoben.
Als nächstes musste die gz-Datei entpackt werden:
$ gunzip sda7._.tar.gz
Nun haben wir eine tar-Datei rumliegen. Im Normalfall möchte man einige wenige Dateien wiederherstellen, weshalb es sich nicht lohnt, gleich den ganzen Inhalt des "Tape Archives" zurückzuschreiben. Deshalb sucht man den exakten Pfadnamen der Datei, in meinem Fall named.conf:
$ tar --list --file=sda7._.tar | grep named.conf ./etc/bind/named.conf
Mit der obigen Angabe können wir nun die Datei aus dem Archiv herausholen:
$ tar --extract --file=sda7._.tar ./etc/bind/named.conf
Fertig.
Labels: Linux
Abonnieren

Kommentare
neuen Kommentar verfassen
Hast du mir villeicht einen Tipp wie ich auf meinem Server (auch Linux) das Backup auf ein Tape speichern kann? Habe schon diverses probiert, jedoch hat mich bisher noch nichts überzeugt! Möchte dann das Backup auch mit einem cron so einmal pro Monat starten lassen?
Hast du mir villeicht einen Tipp wie ich auf meinem Server (auch Linux) das Backup auf ein Tape speichern kann? Habe schon diverses probiert, jedoch hat mich bisher noch nichts überzeugt! Möchte dann das Backup auch mit einem cron so einmal pro Monat starten lassen?
Wenn du eine einigermassen aktuelle tar Version installiert hast, kannst du das ganze auch noch verkürzen:
Anstelle von gunzip kannst du tar die Option -z (macht das gleiche wie gunzip) mitgeben.
das gibt dann folgendes:
"tar -xvzf DEIN_TAR_GZ_FILE DIE_GEWUENSCHTE_DATEI"
-x = --extract
-v = --verbose
-z = um .tar.gz files zu öffen
-f = --file
so ist der "gunzip" befehl gar nicht mehr nötig...
@flurischt: Danke für den Tipp! Ich war mir ganz sicher, dass es dafür einen Einzeiler gibt *smile*
Hallo Selffish
Nun das kommt drauf an, wie das Tape am Server angeschlossen ist (z.B. via SCSI oder IDE oder direkt am Floppy Controller)
Damit Linux den Controller und das daran angeschlossene Tape erkennt benötigt man entweder Linux Drivers (als Module) oder muss die Tape Unterstützung im Kernel aktivieren und den Kernel dann neu kompilieren
Danach funktioniert der Tar Befehl auch auf ein Tape Device
d.h. Du kannst das Gerät dann mounten und die Daten darauf pappen