Letztes Jahr habe ich über die Möglichkeit geschrieben mit Controlplane automatisch zwischen verschiedenen TimeMachine Volumen hin und her zu schalten. Diese Anleitung hat für Mac OS X Snow Leopard gegollten und funktioniert so leider nicht mehr unter Mac OS X Lion.

Apple hat unter Lion ein neues Programm namens tmutil hinzugefügt, welches für das Administrieren von TimeMachine zuständig ist. Mit Hilfe dieses Tools lässt sich auch unter Lion ein Hin- und Herschalten zwischen mehreren Volumen realisieren, welches meiner Meinung nach aber einen großen Nachteil gegenüber Snow Leopard hat. Aber dazu später noch mehr.

Um mit Controlplane mehrere Volumen auswählen zu können, muss man zu erst pro Volumen, das verwendet werden soll, ein Shell Skript anlegen. Dazu öffnet man das Terminal Programm von Mac OS X (zu finden unter den Dienstprogrammen) und erstellt eine neue Datei mit dem Befehl:

sudo vi ~/Documents/Name.sh

und fügt für TimeMachine Volume im Netzwerk (z.B. auf einer Timecapsule oder einem anderen NAS System) folgenden Code ein, wobei die Bereich, welche durch <> gekennzeichnet sind, entsprechend ersetzt werden müssen (die Klammern gehören jeweils weggelassen):

#!/bin/bash
sleep 5
tmutil setdestination afp://<Benutzername>:<Passwort>@<Serverpfad>
sleep 5
tmutil startbackup

Verwendet man eine lokal verfügbare USB oder Firewire Festplatte lautet der Inhalt der Textdatei:

#!/bin/bash
sleep 5
tmutil setdestination /Volumes/<Name_der_Platte>
sleep 5
tmutil startbackup

Die angelegte Datei speichert man anschließend durch die Eingabe von “:w” und beendet anschließend vi mit “:q”. Für jede Festplatte legt man eine entsprechende Datei an. Die auf diese Weise erstellten Shell Skripte können nun in Controlplane beim Erreichen der entsprechenden Umgebung ausgeführt werden.

Anschließend muss man die Dateien noch ausführbar machen. Dazu tippt man folgendes ebenfalls im Terminal ein:

sudo chmod +x ~/Documents/Name.sh

Der Haken an der Sache ist, dass tmutil das Volumen nur umschaltet, wenn es den entsprechenden Zielort auch tatsächlich findet, wohingegen die Methode für Snow Leopard einfach die Konfigurationsdatei umgeschrieben hat, ohne die Verfügbarkeit zu überprüfen. Kommt man nun z.B. im heimischen WLAN an, möchte Controlplane bereits auf die entsprechende Firewire Festplatte umschalten, obwohl diese noch nicht angeschlossen ist, da man das Notebook vielleicht im Wohnzimmer gestartet hat und nicht am Schreibtisch im Arbeitszimmer bereits die Festplatte angeschlossen hat. Statt dem Wechsel des Volumen erhält man eine Fehlermeldung. Leider habe ich bisher keine Möglichkeit gefunden dies zu Umgehen. Man könnte natürlich eine Unterumgebung für daheim anlegen, die aktiviert wird, wenn Controlplane die entsprechende Festplatte (über die Regel USB bzw. Firewire) erkennt.

Anders sieht dies natürlich aus, sollte das Backup Volumen auf einem NAS sein. Aber dazu mehr in einem zukünftigen Beitrag.

Noch einige Links zum Thema – alle auf Englisch:

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Reddit

Gestern habe ich über Controlplane geschrieben, welches meinen Routinetätigkeiten beim Ortswechsel mit meinem Mac vereinfacht hat. Eine wichtige Aktionen fehlte mir noch in der Version 1.0.1, nämlich das Ändern des Timemachine Backup Volumes. Durch die Möglichkeit auch Shell Skripte ausführen zu lassen, konnte ich diese Funktionalität mit Googles Hilfe nachrüsten.

Eine Möglichkeit die ich gefunden habe, nutzt Apple Script für diesen Zweck. Da dieses aber mit Controlplane noch nicht ausgeführt werden können und ich der Meinung war, dass eine elegantere Lösung möglich sein musste, bin ich auf einen Forenbeitrag gestoßen, der die Shell nutzt um das Timemachine Volume direkt in der entsprechenden Konfigurationsdatei umzuschreiben. Dazu muss man folgende Punkt nacheinander durchführen:

1.) Timemachine Volume (einmalig) händisch in der Systemeinstellung setzen

2.) Das Terminal öffnen und folgendes Kommando eingeben um den richtigen “Alias” für das aktuelle Volume zu erhalten.

defaults read /Library/Preferences/com.apple.TimeMachine BackupAlias

Hinweis: Der Alias besteht aus vielen Ziffern und Buchstaben und beginnt mit < und endet mit >

3.) Einfügen des Alias in folgendes Shell Skript:

#!/bin/bash
defaults write /Library/Preferences/com.apple.TimeMachine BackupAlias 'ALIAS'

Wichtig ist, dass man die ‘ Zeichen am Anfang und am Ende nicht vergißt. Fügt man diese Zeile in (z.B.) Textedit ein, kann man sie als Datei abspeichern (ich verwende .sh als Endung um die Datei als Skript identifizieren zu können).

4.) Hinzufügen der Aktion “Shell Skript” in Controlplane und auswählen des gerade erstellten Skripts.

5.) Wiederholen der Punkte 1-4 für andere Timemachine Volumes.

Das oben Beschriebene habe ich mit einer Firewire Festplatte und einem QNAP als Speicherplatz für Timemachine getestet. Beides funktioniert problemlos und ich muss endlich nicht mehr händisch zwischen Backup am Arbeitsplatz und Backup daheim händisch umschalten.

Post to Twitter Post to Delicious Post to Digg Post to Facebook Post to Reddit