Irgendwann im Jahr 2001 ist es passiert. Mein erster Festplattencrash. Damals hatte ich einen einen Blauen G3 Desktop Mac. Die Platte machte einen Tag lang komische Geräusche und dann war Schluss. Alle Daten waren weg. Sicher. Ich hatte irgendwann mal ne CD gebrannt mit den Inhalten aus meinem Dokumente-Ordner. Ein paar meiner MP3s lagen auf dem Flurserver der WG. Aber dennoch waren sehr viele Daten komplett und für immer verwunden. Jeder der sowas schonmal erlebt hat, kann meinen Schmerz – den ich immer noch empfinde, wenn ich daran zurück denke – nachvollziehen.
Ich kaufte mir neben einer neuen Festplatte sofort eine externe Festplatte. Seit diesem Unfall in 2001 mache ich immer regelmäßig Backups. Mit einem Mal fand ich es völlig absurd, dass die Sicherheitskopie kein Standardfeature von Betriebssystemen war. Und warum verbauen PC Hersteller nicht standardmäßig neben der normalen Alltagsfestplatte eine zweite dedizierte Backup-Festplatte. Völlig irre eigentlich, dass das MacOS 23 Jahre lang ohne Backuplösung ausgekommen ist. Erst 2007 wurde dieser Konstruktionsfehler mit der Einführung von Time Machine behoben.
Meine Backuplösung unter MacOS X war in den vergangenen Jahren nicht Time Machine, sondern Carbon Copy Cloner. Das funktionierte bei mir immer einwandfrei. Externe Festplatte anschließen, Backup startet automatisch. Alle gänderten Dateien wurde gespeichert. Fertig. Spätestens nachdem ich die (17seitige) MacOS 10.5 Rezension von John Siracusa durchgelesen hatte, habe ich aber angefangen mich für Time Machine zu interessieren.
Time Machine legt in bestimmten Intervallen ein komplettes Backup des Systems an. Wer nun denkt, Time Machine würde riesen Datenmengen anhäufen, liegt falsch. Das sind natürlich inkrementelle Backups. Es werden nur die Dateien kopiert, die neu sind oder die verändert wurden. Soweit nichts Neues. Das konnte Carbon Copy Cloner auch. Wenn man sich aber die Snapshots auf Dateiebene ansieht, dann merkt man davon nichts. In jedem Snapshot sind jeweils ALLE Dateien vorhanden und nicht nur die neuen und veränderten. Wie soll das gehen?
MacOS X legt für alle unveränderten Dateien sogenannte hard links an. Hard links sind ein Unix-Feature. Ich kannte bis dahin nur Alias-Verweise, also “symbolic links”. Die leiten einen zu der gesuchten Datei weiter. Hardlinks hingegen sind die Datei. Verwirrt? Siracusa beschreibt es so:
A hard link is simply a reference to some data on disk. Think of a file as a combination of a name and a pointer to some data. Deleting a file really means deleting the name portion of that duo. When there are no more names pointing to a particular piece of data disk, then that disk space can be reused.
In der Regel gibt es pro Datenpaket nur einen Hardlink. Wenn man einen zweiten Hardlink auf dasselbe Datenpaket setzt, dann hingegen gibt es die Datei zweimal. Ohne dass dabei der doppelte Platz auf der Festplatte belegt wird. Es gibt lediglich zwei Hardlinks, bzw. zwei Einträge im Dateisystem.
Eine sehr elegante Lösung, die ich aber selbst nie gestestet habe. Denn kurz bevor ich mich durchringen konnte von Carbon Copy Cloner auf Time Machine umzusteigen, hatte ich aus anderen Gründen schon genug von Apple. Ich hab Linux installiert und begonnen meinen Wechsel zu Ubuntu in diesem Blog zu begleiten.
Meinen ersten Nicht-Mac habe ich mir dann selbst zusammengeschraubt – nur die Harten kommen in den Garten. In diesen PC-Schrauber Computer habe ich dann gleich zwei Festplatten eingebaut. Die Kiste sollte von Tag Eins an in der Lage sein Sicherheitskopien zu machen. Auf der Softwareseite war ich dann erstmal ziemlich erstaunt: Ubuntu installiert kein Backupprogramm mit! Okay es gibt rsync. Aber dafür gibt es in der Standardinstallation kein User Interface. Man kann es zunächst nur mit Textkommandos über das Terminal aktivieren. Das kann ich nun wirklich nicht verstehen. Ein derart wichtige Funktion nicht standardmäßig mitzuinstallieren, finde ich schwach.

Simple Backup - Die Optionen sind ziemlich selbsterklärend
Die erste Lösung, die ich nach der Ubuntu-Installation unter “Applications Add/Remove” gefunden habe, habe ich zunächst auch installiert. Simple Backup hieß die Software. Sie speicherte inkrementelle Sicherheitskopien der von mir ausgewählten Ordner “home”, “usr/local” und “etc” auf meiner zweiten Festplatte ab. (Wichtig, nicht vergessen: Festplatte zwei sollte ist natürlich verschlüsselt sein!) Dieses Setup lief leise und unauffällig vor sich hin. Bis gestern. Gestern wollte ich zum ersten Mal austesten, wie gut die Qualität meiner Backups eigentlich ist.

Simple Backup - Leider werden Sicherheitkopien in eine riesige tgz-Datei gepackt.
Simple Backup legt für jeden Snapshot jeweils einen Ordner mit dem Datum des Backups an. Innerhalb des Ordners finden sich dann eine riesengroße tgz-Archivdatei und ein paar kleinere Steuerungsdateien, die vermutlich dazu dienen die Inhalte auf dem tgz-Archiv vernünftig auslesen zu können. Um an die Inhakte meines Backups ranzukommen brauche ich, dann ein ein Extra-Programm (Simple Backup Restore). Das gefällt mir schonmal überhaupt nicht. Ich will mit mein Backup ganz einfach über Dateimanager auslesen können. Unschön auch: Beim Wiederherstellen einer 50MB Datei schien Simple Backup Restore abgestürzt zu sein. Erst nach Minuten ohne Rückmeldung hat sich das Programmfenster wieder erholt. Die Datei selbst wurde dann auch nicht wie vorher von mir ausgewählt auf dem Desktop wieder hergestellt, sondern in ihrem Ursprungsordner. Das hatte zur Folge, dass ich zunächst mit Blick auf den leeren Desktop dachte: Das Programm funktioniert gar nicht. Das war zuviel. Ich hab “Simple Backup” jetzt wieder deinstalliert und mich auf die Suche nach einem Programm gemacht, dass Sicherheitskopien macht, die ich mir ganz einfach mit dem Dateimanager ansehen. Wiederherstellen via Drag and Drop.

Simple Backup - Beim Wiederherstellen einer 50MB Datei blieb das Fenster minutenlang ohne Rückmeldung
Als erstes fiel mir das oben erwähnte Unix-Kommando rsync ein. Das kannte ich noch von MacOS X. Es ist sehr flexibel. Und wie ich in dem Beitrag Time Machine for every Unix out there gelesen habe, kann rsync wie Time Machine auch hard links setzten, wenn man es mit dem Parameter “–link-dest” startet:
–link-dest this is a neat way to make full backups of your computers without losing much space. rsync links unchanged files to the previous backup (using hard-links, see below if you don’t know hard-links) and only claims space for changed files. This only works if you have a backup at hand, otherwise you have to make at least one backup beforehand.
Nun bin ich kein allzu großer Fan von Kommandozeilen Programmen. Ich vergesse ständig, wie die zu bedienen sind und muss mich immer und immer wieder durch die gleichen man(ual)-Pages lesen. Es muss doch eine schöne GUI für rsync geben. Durch Diskussionbeiträge von steinsuppe auf meiner Seite Liste mit Linuxalternativen bin ich schon im Januar auf die Linux-Projekte Flyback, TimeVault und Back In Time aufmerksam gemacht worden. Alle drei basieren auf rsync. Ich habe dann auf der Launchpad-Seite von TimeVault folgenden Eintrag vom 31.3.2009 im Forum gelesen
Is there currently active development on TimeVault or FlyBack? From what I can see is that the development of both has gone stale since last 2007. I really would like to use one of these systems, but they feel they are still very much alpha for me.
Das war der Grund warum ich zunächst nur “Back In Time” installiert habe. Das Programm scheint aktiv entwickelt zu werden. Und der Versionsnummer nach zu urteilen ist es immerhin schon fast eine 1.0.

Back In Time - Einfach zu bedienen und übersichtlich
Und ich muss sagen: Auf den ersten Blick gefällt mir das Programm sehr gut. Das Nutzerinterface ist sehr übersichtlich. Ich verstehe alle Optionen, die mir das Fenster “Einstellungen” anbietet. Man kann die Ordner bestimmen, die man gesichert haben möchte. Und man kann Ausnahmen definieren – beispielsweise für Ordner, in denen sehr große temporäre Dateien liegen. Sehr schick finde ich auch die Funktion “Auto-remove”. Wenn der freie Platz auf der Sicherungsfestplatte kleiner als 5 Gigabyte wird, dann werden alte Backups automatisch gelöscht.

Back In Time - Wiederherstellen via Drag and Drop im Dateimanager
Und das allerbeste: Dank rsync ist Ergebnis des Backupvorgangs ein ganz normaler Ordner. Wiederherstellen geht also via Drag and Drop. Was will man mehr… (doch nicht etwa so einen visuellen OpenGL Time-Warp wie bei Apple, oder?)
UPDATE:
Kleiner Hinweis für alle, die mit Back In Time ihr Homeverzeichnis sichern wollen. Back In Time sichert keine versteckte Dateien. Es gibt eine Regel unter dem Stichwort “Exclude”, die standardmäßig “.*” ausschließt. Diese Regel sollte man deaktivieren. Denn sonst hat man ein Backup ohne die versteckten Konfigurationsverzeichnisse von Firefox, Thunderbird, Evolution, World of Goo und Co. Und die enthalten wichtige Daten, wie Adressbücher, Bookmarks, oder Savegames – und die will man ja nicht verlieren.