TimeMachine Disk switch in Snow Leopard

Saturday, January 30. 2010

Da ich sowohl im Büro als auch zu Hause eine Backup-Harddisk für TimeMachine Backups habe, wollte ich eine einfache (sprich automatische) Lösung um zwischen den beiden Harddisks umzuschalten. Chregu hat vor einiger Zeit bereits eine Lösung für das Problem gefunden. Allerdings hat diese Lösung unter Snow Leopard bei mir nicht funktioniert. Der Hauptunterschied scheint zu sein, dass neben dem BackupAlias nun auch noch die DestinationVolumeUUID gesetzt werden muss.
Da ich zudem nicht zwei Shell-Skripte für dieselbe Aufgabe wollte, habe ich das alles in ein Skript gepackt:

tmdiskswitch.sh

#!/bin/sh

# home backup
DISK_HOME_ALIAS='<00000000 .... 0000>'
DISK_HOME_UUID='"DE5435B1-..."'
# work backup
DISK_WORK_ALIAS='<00000000 .... 0000>'
DISK_WORK_UUID='"B1405E27-..."'

if [ -z "$1" ]
then
    echo "usage: $0 <environmnet>"
    exit 1
fi

case $1 in
    home)
    DISKALIAS=$DISK_HOME_ALIAS
    DISKUUID=$DISK_HOME_UUID
    ;;

    work)
    DISKALIAS=$DISK_WORK_ALIAS
    DISKUUID=$DISK_WORK_UUID
    ;;

    *)
    echo "unknown environment!"
    exit 1
    ;;
esac

defaults write /Library/Preferences/com.apple.TimeMachine BackupAlias "$DISKALIAS"
defaults write /Library/Preferences/com.apple.TimeMachine DestinationVolumeUUID $DISKUUID

 


Vorgehen:
Um BackupAlias und DestinationVolumeUUID herauszufinden muss man die jeweilige HD als Backup-HD in TimeMachine definieren. Danach die folgenden Befehle im Terminal ausführen:


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


Die Ausgabe des ersten Befehls muss im obenstehenden Skript eingetragen werden (alles zwischen den einfachen Anführungszeichen muss ersetzt werden mit der Ausgabe):

DISK_HOME_ALIAS='<00000000 .... 0000>'
 


bzw.

DISK_WORK_ALIAS='<00000000 .... 0000>'
 


Für den zweiten Befehl (alles zwischen den doppelten Anführungszeichen muss mit der Ausgabe ersetzt werden):

DISK_HOME_UUID='"DE5435B1-..."'
 


bzw.


DISK_WORK_UUID='"B1405E27-..."'
 


Das Skript kann in den Ordner 'bin' im Home-Verzeichnis abgelegt werden. Das Skript sollte zudem noch ausführbar gemacht werden:


chmod u+x bin/tmdiskswitch.sh
 


Danach muss man in MarcoPolo nur noch die entsprechenden Aktionen konfigurieren.
Für das Backup zu Hause:


Für das Backup im Büro:


Danach wechselt MarcoPolo automatisch je nach Umgebung die Backup-HD.

Hinweis:
Ich übernehme keinerlei Verantwortung für Schäden die durch die Verwendung dieses Skriptes entstehen. Die Verwendung geschieht auf eigene Gefahr.

Trackbacks


Trackback specific URI for this entry
    No Trackbacks

Comments


    No comments

Add Comment

Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
You can use [geshi lang=lang_name [,ln={y|n}]][/geshi] tags to embed source code snippets.
Standard emoticons like :-) and ;-) are converted to images.
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

BBCode format allowed