Homepage
 

Hallo, Gast.
Suchen
Hint einsenden
Hint einsenden
Website Quick Links
 
Aktuelle OS X Hints
 
Neue Forumsbeiträge
 
Zurück  Backups mit RsyncX
Apps
In diesem Artikel möchte ich Ihnen das kostenlose und im Quelltext frei verfügbare Programm RsyncX vorstellen. Damit lassen sich Datensicherungen auf lokalen Festplatten oder im Netzwerk anlegen, außerdem können Sie mit entsprechenden RsyncX-Skripten auch Master-Images vom Server auf Ihre Clients kopieren. Gegenstand dieses Textes soll zunächst die Datensicherung Ihres Betriebssystems auf einer zweiten Festplatte sein, von der Sie anschließend auch booten können.

Warum RsyncX ?

Im Rahmen eines Backups gibt es verschiedene Arten der Datenübertragung (siehe auch NetInstall, NetRestore, RsyncX ? Zeit und Geld sparen mit netzwerkbasierender Client-Installation): Sie können entweder die gesamten Daten eines Quellvolumes eins zu eins auf ein Zielmedium kopieren, oder Sie kopieren nur die seit dem letzten Backup geänderten Daten.

Letzteres eignet sich vor allem für Szenarien, in denen nur ein kleiner Teil der Daten tatsächlich geändert wird. Dies gilt vor allem dann, wenn die Daten über ein Netzwerk kopiert werden sollen. Da wohl die Mehrheit der Anwender weniger als die Hälfte ihrer Daten zwischen zwei Datensicherungen bearbeitet, stehen die Chancen nicht schlecht, dass auch Sie in Betracht ziehen sollten, nur die geänderten Daten zu sichern.

Dafür eignet sich RsyncX ebenso wie beispielsweise psync, jedoch kann es im Gegensatz zu psync auch ssh-Verbindungen zu entfernten Geräten aufbauen, um Daten dorthin zu kopieren (oder von dort zu holen). Desweiteren unterstützt RsyncX im Gegensatz zu dem in Mac OS X bereits enthaltenen rsync auch HFS+ und Ressourcen-Zweige, so dass eine Kopie des Microsoft Office v.X mit RsyncX lauffähig sein wird, die mit rsync erstellte Kopie zunächst erst mal nicht.

Und als wenn das alles noch nicht überzeugend genug wäre, so gibt es doch noch ein absolutes Killerfeature namens "rotierende Backups", die ich in einem späteren Artikel genauer erklären werde: Das erste Backup enthält eine Eins-zu-eins-Kopie des Quellsystems, die in dem beispeilhaft benannten Ordner Backup.0 liegt. Starte ich nun die zweite Datensicherung, so lässt sich RsyncX so einstellen, dass der Ordner Backup.0 in Backup.1 umbenannt wird und nur die letzten Änderungen Ihres Systems in den Ordner Backup.0 kopiert werden. Dadurch wird auf dem Zielmedium lediglich der Festplattenplatz verbraucht, der durch das erste Vollbackup und die späteren Änderungen an Ihrem System anfällt. Der Clou an der Sache ist, dass auch der Ordner Backup.0, in den Sie ja lediglich die Änderungen hineinkopiert haben, Ihr komplettes System enthält.

Bei Bedarf können Sie beispielsweise einstellen, dass die letzten zehn Datensicherungen wieder herstellbar sein sollen, so dass auf dem Zielvolume zehn Ordner mit vollständig wiederherstellbaren Systemen liegen, obwohl lediglich der Festplattenspeicher für ein Voll- und neun inkrementelle Backups benötigt wird.

Wie ist das möglich?
Ganz einfach: alle Daten, die bereits auf dem Zielvolume enthalten sind, werden durch einen Hardlink mit dem neuen Verzeichnis verknüpft, was ähnlich wie ein Alias funktioniert, aber auch dann noch funktioniert, wenn das Original im Finder gelöscht wird.

Ganz *nebenbei* bietet RsyncX eine brauchbare grafische Oberfläche an, die unter anderem auch Cronjobs verwalten und komplette RsyncX-Client-/Server-Umgebungen anlegen kann. Wenn Sie sich einen vollständigen Überblick über RsyncX verschaffen wollen, lesen Sie die RsyncX-Website.


RsyncX installieren

Zunächst müssen Sie RsyncX erst einmal installieren. Laden Sie es hier herunter und folgen Sie den Installationsanweisungen. Zwar habe ich das Programm bereits irgendwann im Frühjahr 2004 weitestgehend ins Deutsche übertragen, aber Kevin Boyd hat seither kein Update der Software mehr herausgegeben, so dass er die Änderungen noch nicht eingepflegt hat (Wartet er auf Tiger? Wird RsyncX Bestandteil des Betriebssystems sein? Fragen über Fragen ). Jedenfalls können Sie hier die deutsche Lokalisierungsdatei herunterladen.

Entpacken Sie sie, klicken Sie bei gedrückter CTRL-Taste auf das RsyncX-Symbol unter /Applications/Utilities/RsyncX, und wählen Sie ´Paketinhalte zeigenª aus dem Kontextmenü. In dem Fenster, das sich nun öffnet, navigieren Sie bitte in das Verzeichnis Contents/Resources/, in dem sich der Ordner English.lproj befindet. Kopieren Sie dorthin per Drag&Drop den Ordner German.lproj, den Sie vorhin von meiner Website geladen haben. Sie werden dabei aufgefordert, Ihr Administrator-Kennwort einzugeben, was Sie einfach tun sollten (zum Thema Sicherheit arbeite ich gerade an einem weiteren Artikel...). Dies sollte nun in etwa so aussehen:




Das erste RsyncX-Skript

Öffnen Sie RsyncX nun durch einen Doppelklick auf das Programmsymbol unter /Applications/Utilities/RsyncX. Das erste Fenster, das sich nun öffnet, dient dazu, Daten ohne Automatisierungsmöglichkeit von A nach B zu duplizieren. Da wir ein Skript erstellen wollen, das auf Knopfdruck oder vollautomatisch durch einen Cronjob angesteuert werden kann, klicken Sie bitte im Tools-Menü auf "RsyncX Skriptgenerator".

Ziehen Sie nun das Quellvolume in das zugehörige Feld "Quellpfad", das Zielvolume muss in den Bereich "Zielpfad" gezogen werden. Dies funktioniert nur bei lokalen Sicherungen, wenn Sie Sicherungen über ein Netzwerk durchführen möchten, lesen Sie bitte die Hinweise auf der RsyncX-Website.

Angenommen, Sie wollten Ihr komplettes Mac OS X, das auf der Festplatte PB liegt, auf ein Volume namens PBBackup kopieren, so sähe die Skriptkonfiguration des RsyncX Skriptgenerators wie folgt aus:



Folgende Punkte sind dabei besonders wichtig:
  • Der Punkt "Quelle ist bootfähiges Volume" muss aktiviert sein. Ist dieser Punkt nicht angehakt, werden auch gemountete Volumes aus dem Netzwerk kopiert, außerdem landen allerlei überflüssige Daten wie Cache-Dateien in dem Backup.
  • "Als root ausführen" sollte aktiviert sein, damit wirklich alle Dateien kopiert werden können, auch die, auf die ein Benutzer sonst keinen Zugriff hat.
  • Dadurch, dass in der ersten Zeile "Soll nur auf dem lokalen Gerät ausgeführt werden" ausgewählt ist, müssen Sie sich keine Gedanken über Netzwerktransport, Anmeldung an Ziel und Quelle und einige andere Punkte machen.
Klicken Sie nun auf "Erstellen", so landet in Ihrem Homeverzeichnis eine Datei namens "Vollbackup.command". Ein Doppelklick auf diese Datei führt das soeben erstellte Skript aus, jedoch sollten wir vorher noch einige weitere Dinge beachten.

Öffnen Sie das soeben erstellte Skript zunächst in einem Text-Editor, der keine Zeilenumbrüche einfügt, die Sie nicht benötigen, wie beispielsweise SubEthaEdit, pico oder vi. Um pico zu verwenden, öffnen Sie das Terminal und tippen

pico Vollbackup.command

Falls Sie die Datei umbenannt oder an einem anderen Ort in Ihrem Dateisystem abgelegt haben, tippen Sie einfach pico samt folgendem Leerzeichen und ziehen das Skript vom Finder irgendwo in das Terminalfenster - der vollständige Pfad wird dann automatisch in den Befehl eingefügt.

Nun sollten Sie in etwa Folgendes vor sich sehen:

time sudo rsync -a --exclude /dev/\* --exclude /afs/\* --exclude /private/tmp/\* --exclude /Network/\* --exclude /Volumes/\* --exclude /automount/\* --exclude /private/var/run/\* "/." /Volumes/PBBackup --eahfs --delete --showtogo ; sudo bless -folder /Volumes/PBBackup/System/Library/CoreServices

Achten Sie in pico darauf, dass alles in einer Zeile steht, anderenfalls wird das Skript später nicht funktionieren. Wichtig ist nun vor allem Folgendes: Am Anfang der Zeile steht unter anderem "sudo rsync", wodurch das Skript den Befehl rsync mit root-Rechten aufruft. Dabei gibt es allerdings ein kleines Problem. Wie bereits erwähnt, wird Mac OS X bereits mit einem vorinstallierten rsync ausgeliefert. Durch die Installation von RsyncX wird das vorhandene rsync zwar nicht berührt, allerdings wird die Verknüpfung des Befehlsaufrufs "rsync" nun umgeleitet auf das soeben neu installierte RsyncX, das auf Kommandozeilenebene unpraktischerweise nicht rsyncx sondern ebenfalls rsync heißt. Bei späteren Mac OS X-Updates kann es nun passieren, dass anschließend wieder das einfache rsync ohne HFS+- und Ressourcenzweig-Unterstützung aufgerufen wird, so dass Ihre weiteren Datensicherungen nicht mehr alle zur Wiederherstellung benötigten Daten auf das Zielvolume kopieren.

Lange Rede, kurzer Sinn: um sicher zu gehen, dass Ihre Datensicherungen auch in Zukunft sicher vonstatten gehen, schreiben Sie statt

time sudo rsync

nun

time sudo /usr/local/bin/rsync

Dadurch wird immer der absolute Pfad zu RsyncX verwendet. Dieser Punkt ist übrigens auch bei Remote-Sicherungen von besonderer Bedeutung. In einem Remote-Skript wird am Ende des Skriptes definiert, welcher rsync-Befehl auf dem Zielrechner ausgeführt werden soll. Daher muss auch dieser Zusatzbefehl als absoluter Pfad angegeben werden.

Sichern Sie nun Ihre Änderungen (in pico durch Betätigen der Tasten CTRL und O) und starten das Skript durch Doppelklick. Sobald Sie nun Ihr Administrator-Kennwort eingegeben haben, wird die Sicherungskopie angelegt. Sollte dies nicht funktionieren, oder sollten Sie sonstige Fragen haben, so finden Sie auf der RsyncX-Website ein hervorragendes Forum.


Und jetzt von allein

Sie können dieses Skript nun jederzeit manuell durch einen Doppelklick aufrufen, wenn Sie der Meinung sind, Ihre jüngst geänderten Daten wieder sichern zu müssen. Dazu lässt sich das Programmsymbol übrigens auch gut ins Dock legen.

Wollen Sie Ihre Daten aber beispielsweise jeden Tag zu einer bestimmten Uhrzeit sichern, so können Sie auch einfach einen entsprechenden Cronjob anlegen. Auch wenn die Kommandozeilenbefehle dazu in wenigen Minuten erlernt sind, so bringt RsyncX dafür ein grafisches Tool mit, das Sie unter Tools->RsyncX Zeitplaner erreichen.

Dort sehen Sie bereits die vorhandenen Cronjobs daily, weekly und monthly. Fügen Sie Ihren eigenen hinzu, indem Sie "Vorgang hinzufügen" anklicken und das gewünschte Skript auswählen (Sie sehen schon, dieses Tool lässt sich prima auch für Nicht-RsyncX-Skripte verwenden).



Wenn Sie wissen wollen, welche Werte Sie sinnvollerweise in die Felder "Monat(e)", "Datum", etc. eintragen können, fahren Sie einfach mit der Maus über das fragliche Feld und warten auf die Erklärung, die nach wenigen Sekunden erscheint.

Wählen Sie "Ereignis hinzufügen", so wird der Cronjob angelegt, so dass im Beispiel jeden Tag um 12.00 Uhr mittags eine Datensicherung durchgeführt wird. Ist der Mac zu dieser Zeit nicht eingeschaltet, wird die nächste Sicherung am folgenden Tag zur eingestellten Uhrzeit erfolgen.


Und zwischen zwei Rechnern

Noch interessanter wird dieser Vorgang, wenn Sie Daten über ein Netzwerk kopieren möchten. Auf diese Weise lassen sich beispielsweise zwei Xserve-Datenbestände abgleichen, um ein IP-Failover-System zu realisieren (falls Sie nicht sowieso schon Xsan oder zumindest FibreChannel-Switches einsetzen). Infos zu Remote-Synchronisationen finden Sie auf der RsyncX-Website, vor allem aber auch bei Mike Bombich.
Erstellt von André Aulich am 05.02.2005 um 12:35 Uhr | Hits: 8916
Hint Optionen


Kommentare
Die folgenden Kommentare geben die persönliche Meinung des jeweiligen Autors wieder. «Mac OS X Hints» übernimmt dafür keine Verantwortung.
Erstellt von: cafk am 10.02.2005 um 14:41 Uhr
wenn ich es richtig verstanden habe, ist dies ein weg immer eine aktuelle 1:1 kopie (clone) meines powerbooks auf meiner externen festplatte für den fall der fälle zu haben, oder?
Erstellt von: André Aulich am 10.02.2005 um 21:56 Uhr
Ja, zum Beispiel. Das Programm kann aber auch mehrere Rechner im Netzwerk auf einen einheitlichen Stand bringen.
Gruß, André
Erstellt von: aplysia am 13.03.2005 um 15:15 Uhr

Zitat:
Und als wenn das alles noch nicht überzeugend genug wäre, so gibt es doch noch ein absolutes Killerfeature namens "rotierende Backups", die ich in einem späteren Artikel genauer erklären werde

Freue mich schon darauf, denn ich habe meine lieben Probleme mit den Hardlinks. Bei mir wird jeweils der ganze Festplattenplatz gefressen.
Erstellt von: hwend2002 am 12.11.2005 um 18:46 Uhr
Eine ganz hervorragende anleitung. Danke. Wo kann ich denn etwas über die rotierenden Backups lesen?

Gruß, Heiner
Erstellt von: Pseudemys am 12.05.2006 um 20:56 Uhr
In diesem Test hat aber RsyncX wohl leider nicht so überzeugt:


plasticsfuture » Mac Backup Software Harmful

-> http://blog.plasticsfuture.org/2006...ftware-harmful/





 
top top