Netatalk nach Mac OS Lion Update
Mit dem Erscheinen von Lion funktionierte mein Ubuntu-Atom-NAS (wie in der Presse angekündigt) nicht mehr, da Timemachine neue Funktionen des Apple Fileprotokolls benötigt, die in der aktuellen Netatalk-Version nicht enthalten waren. Kurz darauf wurde eine kostenpflichtige Version angekündigt, die diese Fähigkeiten unterstützt. Zur Freude vieler Macbenutzer wurden diese Funktionen dann doch kostenlos zur Verfügung gestellt. Einziges "Problem": Die neue Version ist nicht in den Ubuntu-Repositories gelistet und muss daher selbst kompiliert werden. Hier ein paar Tipps, falls es nicht auf Anhieb funktioniert.
Gefrustet von Fehlermeldungen? Z.B.
- "Something wrong with the volume's CNID DB, using temporary CNID DB instead"
- "The network backup disk does not support the required AFP features"
- "The version of the server you are trying to connect to is not supported"
- "DHX2: PAM_Error: Authentication failure"
- "uam: uam not found"
Dann helfen vielleicht folgende Tipps weiter...
- Benötigt wird Netatalk 2.2. Runterladen und entpacken.
- Vorab noch ein Hinweis: Hier gibt es eine gute Anleitung zur Konfiguration
- Es sollte beachtet werden, dass VOR dem Kompilieren folgende Pakete installiert sind (weiß jetzt nicht mehr 100%ig, ob die ALLE benötigt werden; dies ist der entsprechende Auszug aus meiner History):
- libgcrypt11-dev
- libcrack2-dev
- llibcrack2
- lcracklib2-dev
- llibgcrypt
- llibssl-dev
- llibpam
- llibpam-modules
- llibpam-cracklib
- llibpam0g
- llibwrap0
- llibpam-runtime
- llibc6
- llibslp1
- lnetbase
- lperl
- llibwrap0
- llibdb4.2
- llibpam-modules
- llibgcrypt
- llibtool
- Die oben genannte Anleitung realisiert das über
sudo apt-get build-dep netatalk sudo apt-get install cracklib2-dev fakeroot libssl-devSprich Originalabhängigkeiten installieren und noch ein paar dazu... Hab ich selbst aber nicht ausprobiert. - Anschließend kann laut Anleitung verfahren werden, d.h. configure, make, und make install. Dabei sollte beachtet werden, dass configure die folgende Ausgabe beinhaltet, ansonsten fehlt noch ein Paket.
UAMS:
DHX (SHADOW) DHX2 (SHADOW) - Nach der Installation sollte beachtet werden, dass die Konfigurationsdateien sich unter /usr/local/etc/netatalk befinden und NICHT unter /etc/netatalk wie es bei der Installation über apt-get der Fall ist
- Dies kann zu Fehlern führen, falls noch das alte Startup-Skript existiert. Hier müssen unbedingt die Pfadangaben angepasst werden, da sonst trotz der Neuinstallation die alte Netatalk-Version geladen wird!
- Um ein manuell installiertes netatalk starten und beenden zu können, empfiehlt sich ein Startupskript, das auch gleich die anderen benötigten Dienste startet (afpd benötigt cnid_metad)
- Hier eine von mir gekürzte und modifizierte Version (eigentlich müssen nur die Pfade geändert werden, wenn man schon das alte netatalk per apt-get installiert hatte und noch über das Original-Startupskript verfügt):
#!/bin/sh ### BEGIN INIT INFO # Provides: netatalk # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 1 ### END INIT INFO # # netatalk Netatalk 2.x initscript # Author: Thomas Kaiser# Version: $Id: rc.atalk.debian.tmpl,v 1.6 2009-06-09 11:58:49 franklahm Exp $ set -e PATH=/usr/local/sbin:/usr/local/bin:/sbin DESC="Netatalk" NAME=netatalk SCRIPTNAME=/etc/init.d/$NAME # Guard to prevent execution if netatalk was removed. test -x /usr/local/sbin/afpd || exit 0 # Read in netatalk configuration. if [ -f /usr/local/etc/netatalk/netatalk.conf ]; then . /usr/local/etc/netatalk/netatalk.conf fi # Start Netatalk servers. atalk_startup() { # prepare startup of file services if [ "x$CNID_METAD_RUN" = "xyes" -a -x /usr/local/sbin/cnid_metad ] ; then echo -n " cnid_metad" /usr/local/sbin/cnid_metad $CNID_CONFIG fi if [ x"$AFPD_RUN" = x"yes" ]; then /usr/local/sbin/afpd $AFPD_UAMLIST -g $AFPD_GUEST -c $AFPD_MAX_CLIENTS \ -n "$ATALK_NAME$ATALK_ZONE" echo -n " afpd" fi } case "$1" in start) echo -n "Starting Netatalk services (this will take a while): " atalk_startup echo "." ;; stop) echo -n "Stopping Netatalk Daemons:" echo -n " afpd" start-stop-daemon --stop --quiet --oknodo --exec /usr/local/sbin/afpd echo -n " cnid_metad" start-stop-daemon --stop --quiet --oknodo --exec /usr/local/sbin/cnid_metad echo "." ;; restart) $0 force-reload ;; force-reload) echo -n "Restarting Netatalk Daemons (this will take a while)" $0 stop echo -n "." sleep 2 echo -n "." if $0 start; then echo "done." fi ;; *) echo "Usage: $0 {start|stop|restart|force-reload}" >&2 exit 1 ;; esac - start-stop-deamon installieren
- Danach noch
update-rc.d netatalk defaultsausführen und dann sollte man über/etc/init.d/netatalk start|stop|restartden Dienst steuern können. - In meiner AppleVolumes.default steht folgendes:
/pfad/zum/backupdir BackupName cnidscheme:dbd allow:tm options:usedots,upriv,tm - Bei meinen Versuchen habe ich festgestellt, dass der Benutzer nicht "timemachine" heißen und einen anderen Namen als das Backupverzeichnis haben sollte...
- Wenn der Fehler "volume xyz does not support Extended Attributes, using ea:ad instead" auftritt, sollte die /etc/fstab angepasst werden (user_xattr):
UUID=abc123...... /path ext4 defaults,user_xattr 0 0
Kommentare
Noch keine Kommentare.
