Rogers & Simones Webpinnwand
Time Capsule light mit netatalk 2.0.5
Vor einer Weile hatte ich das Einrichten eines CentOS-Systems als Ziel für Time Machine Sicherungen beschrieben. Leider hat die beschriebene Lösung zwei Haken:
- Sie funktioniert mit Mac OS X 10.5 (Leopard), bei Mac OS X 10.6 (Snow Leopard) gibt’s damit wohl Probleme.
- Durch das Freischalten von offiziell nicht unterstützten Netzwerk-Volumes für das Backup funktioniert zwar selbiges, beim Restore während einer Neuinstallation wird das Time Machine Volume jedoch nicht gefunden. Das ist sehr schade, weil es den Wert des Backups doch in nicht geringem Ausmaß reduziert.
Ursache der Notwendigkeit eines Hacks, um auf netatalk-Volumes sichern zu können, war eine benötigte Erweiterung des AFP-Protokolls über welche Apples Time Capsule verfügte, netatalk jedoch nicht. Glücklicherweise ist die Open Source Welt meistens recht flexibel und so bringt das frisch veröffentlichte netatalk 2.0.5 die benötigte Erweiterung mit und kann dadurch ohne Tricksereien und guten Gewissens als Ziel für Time Machine Backups verwendet werden.
Bei der Einrichtung des AFP-Volumes in /etc/netatalk/AppleVolumes.default ist als Option lediglich der Parameter tm anzuhängen, danach taucht das Volume automatisch in der Auswahl der möglichen Time Machine Volumes auf:
Die im vorherigen Artikel zu diesem Thema beschriebenen Schritte zur Einrichtung von netatalk und avahi sind weiterhin gültig.
Diese Variante läuft jetzt schon ein paar Tage problemlos mit Mac OS X 10.6.2 und netatalk 2.0.5 auf CentOS 5.4 x64, die USB-Platte hat damit als Backupmedium ausgedient. Passendes Paket für CentOS gibt’s diesmal vorerst keins, ich habe netatalk am Paketmanagement vorbei aus den Sourcen kompiliert und installiert. Bei Gelegenheit werde ich mich mal mit der Paketierung auseinandersetzen.
Zum Ersetzen einer richtigen Time Capsule fehlt damit nur noch der Wireless- und der Router-Teil. Wer’s braucht kann das aber auch noch von CentOS mit erledigen lassen. Oder eine Time Capsule kaufen.
[Update 6. Januar 2009]
Nach einer Rekonfiguration meiner Backup-Implementierung und Neueinbindung des Time Machine Volumes stellte sich leider raus, dass dieses nicht mehr als Time Capsule gefunden wurde. An der netatalk-Konfiguration hat sich zwischenzeitlich nichts geändert, sodass diese Situation einigermaßen stinkt. Lösen konnte ich das Problem durch Spezifikation des Time Machine Volumes als Avahi-Service. Dazu wurde in /etc/avahi/services/afpd.service ein weiterer Service definiert:
<type>_adisk._tcp</type>
<port>9</port>
<txt-record>sys=waMA=de:ad:be:ef:00:42</txt-record>
<txt-record>dk2=adVF=0x83,adVN=TimeMachine,adVU=8f8e20e6-f027-4e45-9a7c-e090c89da36d</txt-record>
</service>
Dabei enthalten die Parameter waMA die MAC-Adresse des Servers und adVN den Namen des Time Machine Volumes (siehe AppleVolumes.default). Danach wurde das netatalk Volume wieder freudig als Time Machine akzeptiert und ist seitdem in Verwendung.
Einen kleinen Haken hat die Sache dennoch: Beim Durchsuchen des CentOS-Servers nach Volumes mit dem Finder werden nur das Time Machine Volume und das Home Volume angezeigt, weitere Volumes aus AppleVolumes.default jedoch nicht. Das ist zwar unschön, aber kein Beinbruch: Meine benötigten Volumes werden permanent und automatisch verbunden, das Verbinden mit CMD-K klappt auch noch. Vielleicht werde ich mich der Sache auch mal annehmen oder auch der Bequemlichkeit erliegen und eine richtige Time Capsule erwerben.
| Artikel drucken | Dieser Beitrag wurde von Roger am 23. Dezember 2009 um 11:45 veröffentlicht und unter Software abgelegt. Du kannst allen Antworten zu diesem Beitrag durch RSS 2.0 folgen. Du kannst eine Antwort schreiben oder einen Trackback von deiner eigenen Seite hinterlassen. |
vor 6 Monaten
um dem “kleinen Haken” entgegenzuwirken:
es ist moeglich, mit weiteren
dk2=adVF=0×83,adVN=foobar…
…
die share “foobar” und andere zu veroeffentlichen.
vor 6 Monaten
Danke für den Hinweis! Funktioniert prima, kein “kleiner Haken” mehr in diesem Bereich.
vor 4 Monaten
Hallo!
Wirklich eine super Anleitung.
Habe allerdings ein Problem, was muss ich machen, wenn ich 2 Server einsetzen will?
Werden beide gezeigt, auch die unterschiedlichen Freigaben, allerdings kann ich mich immer nur an einem anmelden. Sobald ich mich am 2ten anmelde zeigt dieser die Freigaben des Ersten und umgekehrt. Trenne ich den Ersten bekomme ich die Freigaben des 2ten.
Danke Guido
vor 4 Monaten
ok, habe es gefunden:
in der afpd.conf folgendes eintragen:
first -signature user:HOSTNAME
vor 3 Monaten
Hoi!, ich schon wieder.
Was vielleicht noch in die Anleitung sollte, damit die Freigaben noch interessanter werden:
- bei allow können problemlos auch Gruppen in der Form allow:@GRUPPE genutzt werden
- es können der Freigabe rechte mitgegeben werden:
/data Daten allow:roger,simone cnidscheme:cdb options:upriv dperm:0770 fperm:0660
Möglichkeiten: perm für Ordner und Dateien, dperm für Ordner, fperm für Dateien
vor 3 Monaten
Salve, vielen Dank für dieses schöne HowTo, es funktioniert bei mir mit (jetzt) aktuellem CentOS 5.5 problemlos.
Allerdings habe ich ein seltsames Problem: TimeMachine und Shares funktionieren reibungslos mit 3 Clients im Netzwerk (alle Schneeleopard). Allerdings haben wir noch ein älteres Macbook Pro (Leopard 10.5.8) im Netzwerk, welches exakt das gleiche Problem wie bei diesem User hier zeigt: http://www.kremalicious.com/2008/06/ubuntu-as-mac-file-server-and-time-machine-volume/#comment-22081
Ich kann keine TimeMachine auswählen, wenn ich auf den Knopf “Volume auswählen” klicke, passiert einfach nix. Es geht nicht mal das Auswahlfenster auf. Ist der CentOS Server aber aus, funktioniert das Auswahlfenster zumindest. Als würde der Server das Macbook stören oder blockieren. Verdacht liegt eventuell bei Avahi.
Im Systemprotokoll des Macbooks erscheint folgender Eintrag wenn ich auf “Volume Auswählen” klicke:
*** -[NSCFString substringFromIndex:]: Range or index out of bounds
Und das wars. Ich kriege es einfach nicht hin, dieses Leopard-Macbook auf meinen CentOS Server zu sichern.
vor 3 Monaten
[Update]
Hmm.
Ich habe jetzt einfach mal den Eintrag des 2. Service entfernt.
_adisk._tcp
9
sys=waMA=meineMAC Adresse
dk2=adVF=0×83,adVN=TimeMachine,adVU=8f8e20e6-f027-4e45-9a7c-e090c89da36d
und siehe da, es funktioniert. Verdammt.
vor 3 Monaten
Seltsam. Kann ich nix zu sagen. Habe nur einen Mac unter Snow Leopard hier und der läuft in dieser Konstellation.
Gibt’s CentOS-seitig Logeinträge die weiterhelfen könnten?