Netatalk 3 und ZFS
eigentlich wird ja Netatalk mit ZFS als dream-Team bezeichnet. Eigentlich. Ich hatte jedenfalls riesige Probleme, ein Share via SMB und AFP Freizugeben.
Das Problem bei mir war folgendes: ich konnte via SMB Daten schreiben und löschen – ACLs konnten also nicht das Problem sein – via AFP nur Daten anlegen.
Nach langer suche im Internet bin ich dann auf die ZFS-Option nbmand gestoßen, die ja eigentlich aktiviert sein sollte, wenn man über mehrere Protokolle ein Share freigibt. Bei mir war genau das gegenteil der Fall.
zfs set nbmand=off pool/share
Danach einen reboot nicht vergessen!
Der User wird mir im Finder nicht angezeigt: da steht immer (unbekannt) – Funktionieren tut es aber trotzdem auch wenn ich zuerst dachte da sei das Problem begraben.
Beispielconfiguration:
;
; Netatalk 3.x configuration file
;
[Global]
; Global server settings
log file = /var/log/netatalk.log
mimic model = Xserve3,1
[TimeMachine]
path = /pool/tm/
valid users = ich
time machine = yes
umask = 077
[oliver]
path = /pool/ich
allow = ich
umask = 077
mimic model = Xserver
ist nur eine Spielerei, sieht aber ganz nett aus, wenn der Server im Finder als Xserve auftaucht.
Man soll laut Netatalk auch die ZFS-Optionen aclinherit = passthrough
und aclmode = passthrough
aktivieren. Sonst gibts wohl Probleme weil Rechte nicht durchvererbt werden.
Meine Configure-Zeile sieht so aus:
./configure --prefix=/opt/netatalk3 --with-init-style=solaris --with-bdb=/opt/bdb --enable-krbV-uam -with-dbus-sysconf-dir=/etc/dbus-1/system.d
Wichtig ist hier das richtige dbus-directory anzugeben, da das normalerweise nicht gefunden wird. Ist es gesetzt konfiguriert Netatalk den Avahi-Daemon automatisch und gibt sich selbst als AFP-Server mit den Shares aus. Wird außerdem zum setzen des Mimic Model gebraucht. Die entsprechenden Dienste müssen natürlich gestartet werden:
svcadm enable svc:/network/dns/multicast:default
svcadm enable svc:/system/avahi-bridge-dsd:default