<< GPRS/UMTS Verbindung bei Symbian Telefonen aktiv halten | Home | Piratenpartei erhält den Politikaward 2009 >> | Kontakt

Samba unter FreeBSD mit FAM

Änderungen sofort mitteilen

Die Einrichtung von Samba unter FreeBSD ist ja sicher kein Problem. Da ich aber keine richtige Dokumentation für die FAM Einrichtung fand, hier einige Hinweise dazu.

FAM

Dieser Begriff steht für File Alteration Monitor, also ein System, das über Änderungen im Dateisystem informiert. Wenn dieses von Samba genutzt wird, kann Samba interessierte Clients über Dateiänderungen sofort informieren. Das bedeutet, eine Verzeichnisansicht im Windows-Explorer wird automatisch und sofort aktualisiert, auch wenn die Änderungen nicht über den Samba-Server initiiert werden.

Gamin

Gamin ist die FAM-Implementierung, die unter FreeBSD für Samba standardmäßig verwendet wird - insofern man das als Option konfiguriert (dazu unten mehr). Normalerweise müßte man das nicht extra erwähnen, da die Übersetzung und Installation autmatisch erfolgen wenn man Samba übersetzt. Die derzeit aktuelle Version 0.1.10 enthält jedoch noch einen Fehler, der die Nutzung unter Samba verhindert. Grund ist, daß Samba zwar mit root-Rechten startet, später aber auf den Nutzer umschaltet, der vom Client die Freigabe öffnet. Damit kommt Gamin nicht ganz klar und verweigert die Arbeit mit Fehlermeldungen wie
Socket directory /tmp/fam-root has different owner
Failed to remove unsafe path /tmp/fam-root
Das ist aber inzwischen bekannt, deshalb sollten die folgenden Patches bei der Übersetzung von /devel/gamin verwendet werden:
https://bugzilla.gnome.org/attachment.cgi?id=128300
https://bugzilla.gnome.org/attachment.cgi?id=128301

Samba übersetzen und installieren

Der Samba port net/samba33 wird wie üblich übersetzt und installiert, es ist jedoch darauf zu achten, daß die Unterstätzung für FAM mit eingebaut wird:
FAM_SUPPORT=on "With File Alteration Monitor"

Samba konfigurieren

Die Samba-Unterstützung für FAM wird nicht global, sondern pro Freigabe (share) konfiguriert. Bei den gewünschten Freigaben wird das entsprechende vfs-Modul geladen:
[data]
  comment = Data
  path = /usr/data
  fstype = UFS2
  vfs objects = notify_fam

Fertig

Nach einem Neustart des smbd sollten alle Dateisystemänderungen sofort an interessierte Clients gemeldet werden.




Kommentar hinzufügen Trackback senden