Samba: kernel oplocks und Windows-Synchronisation von Offlinedateien

Wir haben festgestellt, dass die Windows-Synchronisation von Offlinedateien nicht richtig funktioniert, wenn kernel oplocks = yes in Samba konfiguriert ist (Standard in UCS). Es sieht in Windows so aus, als würde richtig synchronisiert, aber es werden zufällig Dateien ausgelassen, was erst beim Offlinezugriff auf diese Dateien auffällt.

Eigentlich sollte beim Synchronisieren kein anderer Prozess außer smbd auf die Dateien zugreifen, was auch lsof bestätigt. Wenn man das Samba Loglevel auf 3 erhöht, sieht man dort jedoch einige got kernel oplock on file mit anschließendem NT_STATUS_ACCESS_DENIED.

Als Workaround und weil wir nach meinem Verständnis die kernel oplocks gar nicht brauchen, haben wir ucr set samba/kernel_oplocks=no eingegeben. Nun können wir keine Probleme mehr feststellen.