Univention Bugzilla – Bug 28205
Userlogon-Skripte in SysVol-Freigabe werden auf alle Systeme repliziert
Last modified: 2013-02-15 17:51:11 CET
Die Userlogon-Skripte werden von unserem Listener-Modul auch unterhalb von /var/lib/samba/sysvol/ angelegt. Das führt bei aktivierter SysVol-Replikation dazu, dass die Userlogon-Skripte zunächst alle zum S4-"Master" und dann an alle anderen S4-Systeme repliziert werden. Im UCS@school-Umgebungen, die die GPOs zentral pflegen wollen, wird dies zu einem Problem für domänenweite Benutzer, da die Logonskripte z.B. den Hostnamen des jeweiligen SchulDCs enthalten, der nicht an jedem Standort erreichbar sein muss. Bei den OU-spezifischen Benutzern ist es eher ein optisches Problem, da jeder Benutzername nur in einer OU verwendet werden kann. Möglicher Lösungsansatz: Die SysVol-Replikation ähnlich wie bei der Samba3-Netlogon-Replikation aufbauen. Das Verzeichnis für die Netlogonskripte wird vom normalen Sync an alle ausgenommen. Stattdessen kann per UCR für das Verzeichnis angegeben werden, ob - kein Sync - nur ein Download (ohne Löschen) oder - ein vollständiger Sync mit Löschen von Dateien, die Upstream nicht mehr vorhanden sind.
Die Netlogon-Freigabe unter Samba4 muss nicht zwingenderweise unterhalb der sysvol-Freigabe liegen. Aktuell ist der Pfad fest in der Samba-Config auf /var/lib/samba/sysvol/KERBEROS_REALM/scripts verknüpft. Idee: Es wird eine zusätzliche UCR-Variable samba/share/netlogon/path eingeführt, die den Pfad zur netlogon-Freigabe angibt. Ist sie nicht definiert, werden die aktuellen Pfade (S3/S4) verwendet (siehe angehängter Patch). Das Listener-Modul für die Userlogon-Skripte wird ebenfalls um eine UCR-Variable ucsschool/userlogon/netlogon/path erweitert. Sind samba/share/netlogon/path und ucsschool/userlogon/netlogon/path nicht gesetzt, bleibt das alte Verhalten und die Logonskripte werden in beide Pfade (S3/S4) geschrieben. Ist samba/share/netlogon/path gesetzt und ucsschool/userlogon/netlogon/path nicht, werden die Logonskripte nur dort geschrieben. Ist ucsschool/userlogon/netlogon/path gesetzt, werden die Logonskripte nur dort geschrieben. In großen UCS@school-Umgebungen kann dann leicht über zwei UCR-Variablen die Generierung der Loginskripte auf die alten Pfade beschränkt werden. Vorhandene S3-Skripte müssten dann auch nicht angepasst werden.
Created attachment 4914 [details] Patchvorschlag für univention-samba(4)
(In reply to comment #2) > Created an attachment (id=4914) [details] > Patchvorschlag für univention-samba(4) Ja, können wir gerne in 3.1-1 oder im nächsten errata integrieren.
Die Anpassung von univention-samba(4) wurde in Bug 29801 ausgelagert. An diesem Bug sollte die Anpassung der Netlogonskript-Generierung sowie die abschließenden Tests behandelt werden.
Die Anpassung wurde, wie in Comment 1 beschrieben, umgesetzt. Changelogeintrag: done ucs-school-netlogon-user-logonscripts (8.0.1-1) unstable; urgency=low
(In reply to comment #5) > Die Anpassung wurde, wie in Comment 1 beschrieben, umgesetzt. OK, solange die beiden neuen UCR-Variablen nicht gesetzt sind werden die scripte am alten Pfad erstellt. Code-review OK. > Changelogeintrag: done OK > ucs-school-netlogon-user-logonscripts (8.0.1-1) unstable; urgency=low OK
UCS@school 3.1 has been released: http://forum.univention.de/viewtopic.php?f=26&t=2364 If this error occurs again, please use "Clone This Bug".