Restaurieren mit XBP

Beispiel zum Restaurieren ausgewählter Dateien:

In diesem Beispiel wird dargestellt, wie man aus den vorhandenen Backupsets ausgewählte Dateien (und Dateibäume) restauriert.

Auf dem Client "ramses" sollen die Dateien "a.out" und "bindtst.c" aus dem Verzeichnis "/home/bzbstoll/netztests" restauriert werden. Zunächst führe ich auf "ramses" die folgenden Kommandos aus:

bzbstoll@ramses (~): cd /home/bzbstoll/netztests
bzbstoll@ramses (~/netztests): setenv DISPLAY ganix:0 (csh)
bzbstoll@ramses (~/netztests): /usr/openv/netbackup/bin/xbp &

Das Fenster von xbp erscheint.
Der Anfangsmodus ist Browse filesystem (backup or archive). Dies ist der richtige Modus, wenn ich beabsichtige, vom gesamten Directory oder Teilen daraus ein backup oder archive anzufertigen:

xbp.main1.gif

Da ich von backups restaurieren will, wähle ich Mode --> Browse backups (restore) und erhalte folgendes Fenster: (Das folgende Bild erhalte ich unmittelbat nach Start von xbp, wenn ich es mit /usr/openv/netbackup/bin/xbp -r & aufrufe.)

xbp.full.gif

Schauen wir und die Teile dieses Fensters an:
Oben sehen wir das aktuelle Directory (Directory to Search). Das ist zunächst das Directory beim Start von xbp, es wird (bei Bedarf) verändert durch Auswählen im Fenster Directory Structure.
Die Fenster Range of Dates: zeigen Anfang und Ende des Zeitintervalles, aus dem Backups gesucht werden, hier vom 17. 12. 95 19:20 bis zum 23. 1. 96 23:59
Der erste Zeitpunkt ist die Zeit des ältesten der letzten Full Backups, der zweite ist das Ende des heutigen Tages.
Da ein Client Backups verschiedener Filesysteme zu verschiedenen Zeitpunkten ziehen kann, ist das Intervall also so eingrichtet, daß zu jedem (überhaupt gedumpten) Filesystem mindestens ein Full Backup im Zeitintervall liegt.
Es kann aber sein, daß der Benutzer Dateien in einer Version restaurieren will, die älter als der letzte Full Backup sind. In diesem Fall muß er die untere Zeitintervall-Grenze heruntersetzen (Angabe in amerikanischem Format!). Ich kann das Intervall verändern, indem ich einen anderen Zeitpunkt in diese Fenster schreibe oder, indem ich einen der Backups aus dem Fenster Backup Images: anklicke. Letztere Methode sollte man nur dann wählen, wenn man sicher ist, daß die zu restaurierenden Dateien in diesem Backup sind.
Habe ich das Zeitintervall verändert, so muß ich Edit-->Update Display wählen, um das Fenster an dieses Intervall anzupassen.
Hier habe ich als untere Grenze den 22. 1. 96 (0 Uhr) gesetzt.

xbp.oben.gif

Das folgende Fenster Backup Images ist für den xbp-newcommer verwirrend. Es zeigt alle Backups an, die für den Client ramses auf dem Backup-Server bekannt sind. Das heißt nicht, daß in allen diesen Backups die zu restaurierenden Dateien tatsächlich enthalten sind; es heißt noch nicht einmal, daß es tatsächlich ein Backup der betreffenden Dateien gibt!
Man ist zunächst gut beraten, dieses Fenster einfach zu ignorieren.

xbp.Images.gif

Wenden wir uns nun dem Fenster Directory Structure zu.
Ausgehend von dem Directory, das beim letzten Update display aktuelles Directory (Directory to Search) war, steht darin der Baum der Directories, der durch das aktuelle Directory aufgespannt wird.
Rechts davon sehen wir das Fenster Files. In diesem Fenster wählen wir die zu restaurierenden Dateien und Directories aus. Gezeigt werden alle Versionen aller Dateien und Subirectories im aktuellen Directory mit ihrem Backup-Zeitpunkt, z.B. wurde das Directory stevens am 3. 1. 96 und am 27. 12. 95 gedumpt, die Datei bindtst.c ist in den gleichen Dumps enthalten.
Wähle ich (durch anklicken) eine Datei aus, so wird diese damit in der gewählten Version für das Restaurieren vorgesehen. Wähle ich ein Directory aus, so wird der von diesem aufgespannte Dateibaum für das Restaurieren vorgesehen.
Nach Anklicken eines Directory (im Fenster Directory Structure bekomme ich rechts alle Dateien und (Sub-)Directories in diesem Directory angezeigt und kann die Auswahl fortsetzen.

xbp.dir_struct.gif

Das gleiche Fenster, nachdem die Dateien a.out vom 3. 1. 96 und bindtst.c vom 27. 12. 95 zum Restaurieren ausgewählt wurden:

xbp.files2.gif

Es besteht nun die Möglichkeit, die zu restaurierenden Dateien nicht an ihre ursprüngliche Stelle zurückzuschreiben sondern in einen Alternate Path.
Einen alternativer Suchpfad für das Directory, in das restauriert wird, wählt man mit Restore --> Specify Aternate Path.
Es erscheint das Fenster: xbp.alternate.gif

Hier habe ich festgelegt, daß in den Pfad /tmp/bzbstoll/netztests restauriert werden soll. Ich muß dafür sorgen, daß dieses Directory existiert (mkdir /tmp/bzbstoll; mkdir /tmp/bzbstoll/netztests)
Ich kann nun noch festlegen, ob ggf. Soft Links an diesen neuen Pfad angepaßt werden sollen. OK schließt das Festlegen des alternativen Suchpfades ab.

Wenn man nach dem Auswählen der zu restaurierenden Dateien und Directories den Punkt Restore --> Restore selected files and directories wählt, so erscheint das Fenster xbp_confirm:

xbp.xbp_confirm.gif

Hier bekommt man alle zum Restaurieren ausgewählten Dateien und Directories angezeigt. Wenn diese Auswahl noch nicht wunschgemäß ist, so Cancel drücken, ansonsten OK. Damit wird der Restore-Auftrag an den Server abgesetzt. Im Fenster xbp_confirm kann man zusätzlich festlegen, ob existierende Dateien überschrieben werden sollen und ob auf den ggf. definierten alternativen Pfad restauriert werden soll.
Im Fenster xbp_confirm wird angezeigt, daß der Log filename /home/bzbstoll/bplog.rest.001 ist.
Man kann nun die Möglichkeiten von xbp zur Anzeige des Log file nutzen. Besser ist aber einfach ein tail -f /home/bzbstoll/bplog.rest.001 in meinem Arbeitsfenster (xterm oder command tool).
Das Restaurieren kann nun eine erhebliche Zeit in Anspruch nehmen. Zunächst kann man davon ausgehen, daß der Backup-Server mehrere Aufträge in seiner Arbeitsliste hat. Wird der Auftragsbearbeitung begonnen, so erscheint eine Ausschrift:
Restore started Tue Jan 23 14:57:22 1996 14:57:42 Restoring from image created Wed Dec 27 19:10:44 1995

14:57:50 INF - TAR STARTED
Nun wird zunächst das Backup vom Band auf Magnetplatte kopiert. Das Backup-File kann erheblich gröes sein als die von mir angeforderte Datenmenge.Danach wird das gesamte Backup Serverintern kopiert und der zu restaurierende Teil herausgeschnitten. Nur dieser wird über das Netz an den Clientrechner geschickt. Bei diesem Beispiel sind zwei Backups beteiligt (3. 1. 96 und 27. 12.95). Dadurch verzögert sich der ganze Vorgang nochmals. Als Erfolgsmeldung fü den ersten Teil erscheint:
15:11:20 /home/bzbstoll/netztests/bindtst.c
15:11:21 INF - TAR EXITING WITH STATUS = 0
15:11:21 INF - TAR RESTORED 1 OF 1 FILES SUCCESSFULLY
15:11:21 INF - TAR KEPT 0 EXISTING FILES
15:11:21 INF - TAR PARTIALLY RESTORED 0 FILES

15:11:40 Status of restore from image created Wed Dec 27 19:10:44 1995 = the requested operation was successfully completed
Ist das Restore erfolgreich abgeschlossen, bietet mein Arbeitsfenster folgendes Bild:

logfile.gif

Fragen an den Backup-Service richten Sie bitte an: fab-service@zedat.fu-berlin.de