/usr/home

just some random thoughts

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