Ich weiß, daß ich hier Eulen nach Athen trage, denn dazu findet man jede Menge Beiträge. Nur keine, die auf Anhieb funktionieren. Ich habe Monate gebraucht, mir daraus eine einfache und einigermaßen schnelle backup-restore-Routine zusammenzubasteln, die auch Laien wie mir ermöglicht, in einer halben Stunde das komplette System zu sichern und nach einem Totalverlust innerhalb einer Stunde in eine identische Systempartition wiederherzustellen.
Voraussetzung ist mindestens eine zweite Partition/Festplatte, eine ubuntu-Live-CD/DVD und, falls man das gesamte System abgeschossen hat, eine super grub disk (http://www.supergrubdisk.org/ ).
Sichern (dies ist ein Beispiel, welches auf mein System bezogen und von anderer Stelle übernommen ist):
sudo dd if=/dev/sda1 | gzip > /media/USBDisk/Sicherung/dd_ubuntubackup/image-compress_sda1.img.gz
Damit wird die Systempartition (hier sda1) mit gzip komprimiert und als Datei (hier image-compress_sda1.img.gz) in einem Verzeichnis irgendeines anderen Datenträgers (hier /media/USBDisk/Sicherung/) gespeichert. Damit Alles kopiert wird, sind root-Rechte erforderlich (deshalb sudo).
Einschub:
Damit wird Alles komprimiert und gesichert, was jemals in der gesicherten Partition stand, ob nun aktive Datei oder gelöschter Schrott. Damit nimmt man nicht nur den ganzen Müll mit, was aus Sicherheitsgründen unerwünscht ist, sondern der Müll bläht auch die Sicherheitskopie auf und verlangsamt den Sicherungsprozeß. Der folgende kleine Schritt dauerte bei mir etwa 1 Minute pro Gigabyte, verkürzte die nachfolgende Sicherung von etwa 2 Stunden auf 25 Minuten und verkleinerte die Kopie von 14 auf etwa 3 GB. Der einfache Trick ist, den freien Speicherplatz mit Nullen zu überschreiben, ohne bestehende Dateien anzutasten.
Vorher sollte mit einem Dateibrowser wie nautilus in das Verzeichnis gewechselt werden, in welches die Datei data.tmp geschrieben wird, im Beispiel /home/torsten/Programme/ . Dann wird von einem Terminal folgender (angepaßter) Befehl gestartet:
cat /dev/zero > /home/torsten/Programme/data.tmp
"zero" ist ein virtuelles Gerät, welches sein Leben lang nichts Anderes macht als Nullen auszugeben. Diese Nullen werden in die Datei data.tmp (in diesem Beispiel auf sda1 im Nutzerbereich liegend) geschrieben, bis der Speicher voll ist. Das Terminal meldet danach, daß zuwenig Speicher vorhanden ist und bricht den Prozeß ab. Die Datei (hier: data.tmp) existiert aber und muß in den Müll verschoben und der Müll geleert werden (daher die vorherige Öffnung des Verzeichnisses, wo sie landet). Effekt: der dadurch mit Nullen gefüllte Festplattenspeicher nimmt bei der Kompression fast keinen Platz mehr ein, denn auch nach der Löschung der Datei stehen da nur Nullen. Was immer dort stand, wird auch im folgenden Schritt nicht wiederhergestellt.
Rückladen:
Tja, bleibt noch die Wiederherstellung des Systems. Dazu wird der Computer von einer Live-CD/DVD gestartet und die ehemalige Systempartition, wenn verlorengegangen, wieder eingerichtet (funktioniert z.B. auch nach Einbau einer neuen Festplatte). Hier im Beispiel muß eine sda1 vorhanden sein oder erstellt werden. Ob die so groß sein muß, wie die gesicherte Partition, bezweifle ich, habe das aber nicht getestet. Zumindest müssen die gesicherten Daten draufpassen. Dazu sind root-Rechte erforderlich, die man in einem Terminal mit
sudo su
erwirbt.
Dann wird die Kopie dekomprimiert und zurückgeladen; die für mein System zutreffenden Daten (Verzeichnis mit der Sicherung und Dateiname (/media/USBDisk/Sicherung/dd_ubuntubackup/image-compress_sda1.img.gz), Zielpartition (sda1)) sind selbstverständlich zu ersetzen:
sudo gunzip -c /media/USBDisk/Sicherung/dd_ubuntubackup/image-compress_sda1.img.gz | dd of=/dev/sda1
Beim Neustart sollte das System wieder laufen. Falls auch der Bootlader abgeschossen (oder eine neue Festplatte eingebaut) wurde, muß der Computer nochmals mit der "super grub disk" (s.o.) in das wiederhergestellte System gestartet und der Bootlader neu geschrieben werden. Dazu ein Terminal öffnen und
sudo grub-install /dev/sda
eingeben (wenn sda die Bootplatte ist). Abwarten, bis sich im Terminal nichts mehr tut, Neustart, fertig.
Hoffe ich. Bei mir klappt's jedenfalls prima.
Moderiert von stfischr:
Dieses Thema wurde verschoben. Bitte beachte die als Wichtig markierten Themen („Welche Themen gehören hier her und welche nicht?“).