**Achtung:** Diese Anleitung ist pre-//alpha// und weitgehend ungetestet, da ich bislang eine andere Backuplösung verwende! Bitte noch etwas Geduld. ===== Mitgeliefert: sysbackup.pl ===== Die Musterlösung bringt ein Backup Skript mit (''/usr/local/sbin/sysbackup.pl'') das nur noch an die örtlichen Gegebenheiten angepasst werden muss. Prinzipiell sichert das Skript das System 1:1 auf eine //"weitere Festplatte"//. //"Weitere Festplatte"// kann dabei eine interne Wechselplatte sein oder eine per USB angeschlossene externe Platte. Auch ein NFS-Share eines anderen Rechners kann zur Mitarbeit bewegt werden. Man kann auch einzelne Verzeichnisse aus der Sicherung ausschließen, z.B. wenn das Beackupmedium zu klein ist/wird. Das häufigste Szenario dürfte derzeit sicherlich die externe USB Festplatte sein, da diese zu günstigen Preis/Leistungskonditionen erehältlich ist. Soll das gesamte System gesichert werden, muss auf dem Backup Medium mindestens soviel Speicherplatz vorhanden sein wie die Systemdaten zum Zeitpunkt der Sicherung einnehmen, da das Backup nicht komprimiert wird. ===== Konfiguration für Betrieb mit USB Platte ===== ==== Anschließen der Platte ==== Zunächst muss die USB Platte ins System eingebunden werden. Dazu schließt man die Platte einfach an einen freien USB-Port an. Nun kann man in der Log-Datei ''/var/log/messages'' überprüfen, ob die Platte erkannt wurde. ''tail /var/log/messages'' sollte etwa so aussehen: Jul 11 16:42:47 host kernel: SCSI device sdb: 488397168 512-byte hdwr sectors (250059 MB) Jul 11 16:42:47 host kernel: sdb: sdb1 Jul 11 16:42:49 host kernel: SCSI device sdb: 488397168 512-byte hdwr sectors (250059 MB) Jul 11 16:42:49 host kernel: sdb: sdb1 In diesem Beispiel wurde die Platte also als /dev/sdb eingebunden. Sollte die Platte nicht erkannt werden, überprüft man, ob das ''usb_storage'' Modul geladen ist (bei Kernel 2.4.x heißt es ''usb-storage''): ''lsmod'' liefert eine Liste aller geladenen Module. Mit ''modprobe usb_storage'' kann man es wenn nötig laden, dann sollte die Platte erkannt werden. ==== Partitionieren und formatieren ==== Nun kann man eine Partition auf der Platte anlegen, die genügend Speicherplatz zur Verfügung stellt, das ist beispielsweise mit dem Programm ''cfdisk'' möglich. Diese Partition formatiert man dann vorzugsweise mit demselben Filesystem wie die Originalinstallation, zumdindest wenn man anschließend von der Platte booten will. (Erklärung: Wenn man von der Platte booten will, muss die Datei /etc/fstab im Backup angepasst werden, was das Skript auch machen kann, es passt aber nicht den Dateisystemtyp an) ''mkfs.ext3 /dev/sdb1'' würde also auf einer primären Partition ein ext3 FS erstellen. Dann sollte man die Partition mal mounten und schauen, ob es geklappt hat: mount -t /dev/sdb1 /mnt df -h Nun sollte man einen Eintrag sehen der ungefähr so aussieht: /dev/sdb1 230G 20K 218G 1% /mnt ==== Anpassen von sysbackup.pl ==== Am Beginn der Datei ''/usr/local/sbin/sysbackup.pl'' gibt es einen Bereich, der angepasst werden muss: # anzupassende Deklarationen ############################### my $rootplatte = "/dev/hda"; # Diese Platte enthaelt das Rootsystem my $zielplatte = "/dev/hdc"; # Die Ziel-/Wechsel-platte my $mountpunkt = "/mnt/"; # An diesem Punkt wird die Zielpartition eingehaengt my $substfstab = 0; # Soll fstab angepasst werden? 1=Ja/0=Nein Die Zeilen der Reihenfolge nach: - Device der Festplatte, auf der das System installiert ist - Device der Backupplatte - Wohin soll die Backupplatte gemountet werden? - Soll die fstab auf der Backupplatte angepasst werden, so dass man von dieser booten kann? Wie die Konfiguration aussehen sollte wenn das System auf mehr als einer Festplatte liegt, weiß ich derzeit nicht. Nun muss noch die Verzecinisliste angepasst werden, ein Beispiel findet sich im Skript. Man kann sich seine Partitionierung zunächst mal anschauen und dann entscheiden. Wenn man wie oben beschrieben nur eine Partition anlgelegt hat, sieht das eigentlich so aus: my %verzliste = ( "/" => [$mountpunkt , $zielplatte."1"] ); Ob es bei USB-Platten noch die Notwendigkeit einer gesonderten boot-Partition gibt muss ich mal schauen, Lilo ist da inzwischen recht tolerant. Wer auf Nummer sicher gehen will, erstellt eben zwei Partitionen auf der Backupplatte und achtet darauf, dass die erste ganz vorne landet. Dann sieht die Verzeichnisliste z.B. so aus: my %verzliste = ( "/" => [$mountpunkt , $zielplatte."5"], "/boot" => [$mountpunkt , $zielplatte."6"] ); wenn die Partitionen /dev/sdb5 und /dev/sdb6 sind. Nun kann ein erster Test folgen: sysbackup.pl und mal die Ausgaben anschauen.