My Universe Logo

My Universe Blog » Entries Tagged as backup

Neues von der Hardware-Front

Posted by Jesco Freund at Jan. 7, 2011 9:07 p.m.

Kaum aus dem Winterurlaub zurück, gleich erst mal ein böser Schreck: Mein PC hat Gedächtnisschwund! Letztlich war es nur die leere BIOS-Batterie (nach 6 Jahre kann das mal vorkommen), aber die Auswirkung war interessant: Durch den Gedächtnisverlust in Sachen BIOS-Einstellungen hat der Linux-Kernel irgendwo auf halber Strecke beim Booten eine Panic bekommen. Mit diesem Symptom habe ich zunächst auf ein kaputtes RAM-Modul oder eine sterbende CPU getippt – letztlich war es aber nur die olle Batterie.

Beim Wechseln habe ich noch gefühlte 10 Kilo Staub aus dem Gehäuse geholt – schon erstaunlich, wie leise das Ding jetzt wieder ist! Die Lüfter müssen sich voher quasi in einem Feststoff gedreht haben…

Wenn schon mal geschraubt wird, habe ich auch gleich die restliche Hardware noch mal unter die Lupe genommen. Insbesondere die Festplatten machen mir etwas Sorgen, sind ja nicht mehr die jüngsten. Und siehe da, S.M.A.R.T. bringt's ans Licht: bei beiden Platten wurden bereits die Reserve-Sektoren angezapft (Reallocated Sectors Count > 0). Noch nicht in großem Umfang, aber eben schon ein bisschen angekratzt. Meist geht's ja dann innerhalb weniger Monate mit den Platten so richtig bergab – ich werde also ein Auge drauf haben müssen.

Und natürlich regelmäßige Backups. Um die in Zukunft etwas komfortabler erstellen zu können, gibt's Zuwachs im Hardware-Park: Ich habe mich endlich zur Beschaffung eines NAS-Geräts durchgerungen. Bestellt ist jetzt eine Synology DS211j mit 2×2TB Festplatten an Bord. Anders als die meisten SOHO-NAS-Spielzeuge bietet die Disk Station neben SMB/CIFS und FTP auch noch iSCSI und SSH an – damit sollte ich eigentlich jeden Rechner bei uns im Haushalt da drangeflanscht bekommen. Außerdem scheint das Teil auf Linux zu rennen – jedenfalls wird laut Spec mit ext3 oder ext4 gearbeitet. Da lässt sich das gute Stück bestimmt rooten und noch zu anderen Diensten „überreden“. Mal sehen, wenn die Kiste dann da ist, schreib ich auch noch mal was dazu…

No comments | Defined tags for this entry: backup, hardware, network

Backups von ZFS Datasets

Posted by Jesco Freund at March 27, 2010 11:46 a.m.

Alle meine Jails und ihre Nutzdaten residieren auf ZFS Datasets. Dank ZFS Snapshots kann man sie so relativ leicht sichern, ohne den Betrieb des Servers dabei zu stören. Allerdings braucht man noch ein Werkzeug, das die Snapshots erzeugt, Backups erstellt, diese dann auf den Backupserver hochlädt und die Snapshots auch wieder entsorgt. Bisher habe ich das mit einem frickeligen Shell-Skript erledigt; allerdings war ich damit in letzter Zeit nicht mehr besonders zufrieden. Was ich eigentlich möchte, ist ein Tool, das mir folgende Möglichkeiten bietet:

  • aufgeräumte Crontab mit möglichst wenig Einträgen für Backups 8-)
  • verschlüsselte Backups (die UMASK auf den Backup-Servern meines Providers gefällt mir nicht)
  • möglichst keine lokalen temporären Dateien
  • Zusammenfassen von ZFS Datasets zu logischen Gruppen mit Pre- und Post-Snapshot Actions
  • Automatische wöchentliche Rotation der Backups auf dem Backup-Server

Also habe ich mich daran gesetzt, ein ordentliches Shellskript zu schreiben, das die o. g. Bedingungen erfüllt. Herausgekommen dabei ist zbackup. Die verlinkte Beta1 funktioniert immerhin schon so gut, dass ich sie produktiv nutze – ein Release folgt aber erst nach weiteren Tests, möglichst auch durch andere Tester.

Um zu verdeutlichen, was zbackup alles leisten kann, zeige ich hier mal an einem etwas komplizierteren Beispiel, wie man zbackup richtig konfiguriert. Die härteste Nuss für Backup-Tools ist mithin, konsistente Backups von Datenbank-Servern zu erzeugen. Anhand eines MySQL-Servers wird im folgenden beschrieben, wie man zu konsistenten Backups gelangt:

continue reading Backups von ZFS Datasets

No comments | Defined tags for this entry: backup, FreeBSD, root-tools, ZFS

Verschlüsseltes Image mit aespipe

Posted by Jesco Freund at Nov. 15, 2008 11:07 a.m.

Von meinem frisch aufgesetzten Server benötigte ich ein Wiederherstellungs-Image, damit ich im Falle eines Falles nicht erst den Support des Anbieters bemühen muss, um mir für die Installation von FreeBSD ein CD-Laufwerk anzuschließen. Klar, kein Problem, lässt sich aus dem Rettungssystem heraus mit dd ganz einfach erzeugen. Die Sache hat allerdings zwei Haken: Zum einen befinden sich auf der Platte mittlerweile Daten, die nicht unbedingt in die falschen Hände geraten sollten (wie z. B. die Passwort-Datenbank), zum anderen erzeugt dd ein Raw Image und liest dabei stur alles von der Platte ein, auch aus Bereichen, die keine Daten enthalten (sollten).

Wurde die Platte vor der Installation „genullt“, dürften die nicht genutzten Bereiche aus großen zusammenhängenden Blöcken von Nullen bestehen und sich damit leicht komprimieren lassen. Hat man das (wie ich) versäumt, würde man mit dd auch den ganzen verstrahlten Bitmüll mitsichern, den der Vormieter eventuell auf den Platten hinterlassen hat. Das lässt sich aber auch nachträglich relativ leicht korrigieren, indem man einfach auf jeder Partition eine große Datei anlegt, die nichts als Nullen enthält:

dd if=/dev/zero of=null.img bs=64k
rm null.img

dd schreibt automatisch so lange Nullen in die Datei, bis der Datenträger voll ist. Beim Löschen wird nur der Verweis auf die Datei entfernt, so dass jetzt der leere Platz in der betreffenden Partition binär genullt ist.

Nun zum Problem der Datensicherheit: hier schafft das kleine Tool aespipe Abhilfe. Gerade beim erstellen von Images ist es äußerst praktisch, da es sich – wie der Name schon vermuten lässt – einfach per Pipe mit in den Erstellungsprozess einbinden lässt. So etwa erstelle ich ein verschlüsseltes Image und lade es gleich auf den Backup-Server:

dd if=/dev/sda bs=64k | bzip2 -c - | aespipe -e AES256 -T | ncftpput -c -V -u <user> -p <password> <backup-server> sda-<datum>.img.bz2.aes

Ein Restore würde nun genau andersherum erfolgen (vorausgesetzt, man hat die von aespipe geforderte 20-stellige Passphrase nicht vergessen ;-)):

ncftpget -c -V -u <user> -p <password> <backup-server> sda-<datum>.img.bz2.aes | aespipe -d AES256 | bunzip2 -c - | dd of=/dev/sda bs=64k

2 comments | Defined tags for this entry: backup, privacy, security, server

Page 1 of 1