Wir hatten nach einem AD-Takeover das Problem, dass etliche User zwar im Samba existieren und sich anmelden können, die User aber im LDAP fehlen und wir sie somit nicht über die Univention-GUI administrieren können.
In den Logs fanden wir dazu:
04.07.2021 06:25:13.198 LDAP (PROCESS): sync to ucs: Resync rejected dn: CN=Max Mustermann,OU=Benutzer,OU=RND,OU=Abteilungen,OU=mustergmbh,DC=mustergmbh,DC=local
04.07.2021 06:25:13.206 LDAP (PROCESS): sync to ucs: [ user] [ add] u’uid=mmustermann,OU=Benutzer,OU=RND,OU=Abteilungen,OU=mustergmbh,dc=mustergmbh,dc=local‘
04.07.2021 06:25:13.290 LDAP (WARNING): __set_values: The attributes for uidNumber have not been removed as it represents a mandatory attribute
04.07.2021 06:25:13.419 LDAP (ERROR ): InvalidSyntax: Unix home directory: Not an absolute path! (u’uid=jMustermann,OU=Benutzer,OU=RND,OU=Abteilungen,OU=mustergmbh,dc=mustergmbh,dc=local‘)
Ein Blick in Samba zeigt:
root@ucs0:~# pdbedit -Lv -u mmustermann | grep Home
Home Directory: \\ADM-OLDSERVER\Home\Mustermann_M
HomeDir Drive: H:
Allen fehlenden Usern gemein ist, dass diese ein Home-Directory gesetzt haben.
Der Wert sieht aber für mich absolut aus.
Ändere ich den Wert testweise, ändert dies nichts an der Fehlermeldung:
pdbedit -r -u mmustermann –homedir=none
root@adm-ucs0:~# pdbedit -Lv -u mmustermann | grep Home
Home Directory: none
Durch https://forge.univention.org/bugzilla/show_bug.cgi?id=51807 bin ich auf die Idee gekommen, das HomeDir manuell pro Benutzer zu entfernen. Und sofort wird der Benutzer korrekt synchronisiert.
Wie?
ldbedit -H /var/lib/samba/private/sam.ldb cn=“Max Mustermann“
Batchmäßig um alle Benutzer zu identifieren als Vorbereitung zur Editierung:
pdbedit -Lv | egrep „Home Directory“ | sort | uniq
Abschließend /var/log/univention/connector-s4.log kontrollieren. Die Fehlermeldungen bleiben jetzt aus.
Notfalls muss im UCS jetzt manuell, das HomeVerzeichnis für den Benutzer gesetzt werden.