Univention Bugzilla – Bug 23929
Samba4 Paket aktualisieren
Last modified: 2011-12-13 15:49:25 CET
Das Samba4 Paket sollte auf einen aktuellen Status aktualisiert werden. Ich denke bis alpha18 sollten wir nicht warten. Wichtig ist, dass die Anpassungen vom Plugfest bzgl. Forrest und Multidomain integriert werden und die Patches von Stefan Metzmacher für Bug #22865.
*** Bug 23733 has been marked as a duplicate of this bug. ***
Die folgende Meldung sehe ich beim aktuellen Samba 4 Paket (4.0.0~alpha17~git201110100928-5.99.2011101...) + samba-tool join deadlock9.local DC -U% --realm=DEADLOCK9.LOCAL Traceback (most recent call last): File "/usr/sbin/samba-tool", line 30, in <module> from samba.netcmd.domain import cmd_domain File "/usr/lib/python2.6/dist-packages/samba/netcmd/domain.py", line 44, in <module> from samba.samba3 import Samba3 File "/usr/lib/python2.6/dist-packages/samba/samba3/__init__.py", line 29, in <module> import passdb ImportError: libccan.so.0: cannot open shared object file: No such file or directory
Aus /var/log/univention/samba4-provision.log: ldb: unable to stat module /usr/lib/samba/ldb : No such file or directory Setting up share.ldb ldb: unable to stat module /usr/lib/samba/ldb : No such file or directory Setting up secrets.ldb ldb: unable to stat module /usr/lib/samba/ldb : No such file or directory ldb: unable to stat module /usr/lib/samba/ldb : No such file or directory WARNING: Module [samba_secrets] not found - do you need to set LDB_MODULES_PATH? Unable to load modules for /var/lib/samba/private/secrets.ldb: (null) Traceback (most recent call last): File "/usr/share/samba/setup/provision", line 270, in <module> useeadb=eadb, next_rid=opts.next_rid, lp=lp) File "/usr/lib/python2.6/dist-packages/samba/provision/__init__.py", line 1856, in provision backend_credentials=provision_backend.secrets_credentials, lp=lp) File "/usr/lib/python2.6/dist-packages/samba/provision/__init__.py", line 976, in setup_secretsdb lp=lp) File "/usr/lib/python2.6/dist-packages/samba/__init__.py", line 113, in __init__ self.connect(url, flags, options) _ldb.LdbError: (80, None)
Es gab noch mehr Probleme, nachdem ich cp -a ~/samba4-4.0.0~alpha17~git201110100928/debian/tmp/usr/lib/samba/* /usr/lib/samba/ ausgeführt habe, konnte ich die Dienste erfolgreich starten.
Die Libraries unter /usr/lib/samba werden jetzt mit installiert per samb4.install. Die Binärpakete sind jetzt analog zu dem debian/sid/4.0.0~alpha17-3 Paket, andere Anpassungen dort (Multi-Arch etc.) wurden erstmal nicht übernommen. Zusätzlich wird jetzt /usr/sbin/smbd mit installiert. Die Konfiguration wird über Bug 22865 erfolgen. Zusammen funktioniert dann "smbclient -L localhost" über samba4 gegen den smbd, weitere Tests mit dem sysvol etc. stehen noch aus. Im neuen Samba4-Paket finden die ldb-tools jetzt auch ohne weiteres die samba4 module, was die Arbeit mit ldbsearch/ldbedit deutlich angenehmer macht.
Ich habe noch die loadparm Warnungen auf Debug Level 4 gesetzt und in /usr/lib/samba einen Link auf /usr/lib/ldb angelegt, ansonsten schlug bei mir das Provision bei der Neuinstallation immer fehl: 18_loadparm_debug_level.patch 19_ldb_link.patch
(In reply to comment #6) > 19_ldb_link.patch Das hat nicht funktioniert, damit bekomme ich bei der Neuinstallation in /var/log/univention/samba4-provision.log: Restarting Univention Management Console Server. done. Setting samba/autostart Setting winbind/autostart Multifile: /etc/samba/smb.conf Setting kerberos/autostart lpcfg_load: refreshing parameters from /etc/samba/smb.conf Looking up IPv4 addresses Looking up IPv6 addresses No IPv6 address will be assigned Setting up secrets.ldb WARNING: Module [samba_secrets] not found - do you need to set LDB_MODULES_PATH? Unable to load modules for /var/lib/samba/private/secrets.ldb: (null) Traceback (most recent call last): File "/usr/share/samba/setup/provision", line 270, in <module> useeadb=eadb, next_rid=opts.next_rid, lp=lp) File "/usr/lib/python2.6/dist-packages/samba/provision/__init__.py", line 1856, in provision backend_credentials=provision_backend.secrets_credentials, lp=lp) File "/usr/lib/python2.6/dist-packages/samba/provision/__init__.py", line 976, in setup_secretsdb lp=lp) File "/usr/lib/python2.6/dist-packages/samba/__init__.py", line 113, in __init__ self.connect(url, flags, options) _ldb.LdbError: (80, None)
Lösung war das Paket samba-dsdb-modules mit zu installieren. Das Paket wird jetzt von univention-samba4 benötigt.
Das Installieren von weiteren UCS S4 DCs scheint derzeit nicht zu funktionieren: Configure 96univention-samba4.inst Multifile: /etc/samba/smb.conf Setting samba/quota/command Multifile: /etc/samba/smb.conf Stopping Heimdal password server: kpasswdd. Stopping Heimdal KDC: heimdal-kdc. Setting kerberos/autostart Setting samba4/autostart Multifile: /etc/samba/smb.conf Not updating samba4/autostart Create samba4/role File: /etc/samba/base.conf Multifile: /etc/samba/smb.conf Create samba4/ldap/base Multifile: /etc/samba/smb.conf Stopping Samba 4 daemon: samba. Setting slapd/port Multifile: /etc/ldap/slapd.conf File: /etc/init.d/slapd Setting slapd/port/ldaps Multifile: /etc/ldap/slapd.conf File: /etc/init.d/slapd Restarting ldap server(s). Stopping ldap server(s): slapd. done. Check database: done Starting ldap server(s): slapd. . finddcs: No matching CLDAP server found ERROR(exception): uncaught exception - Failed to find a writeable DC for domain 'deadlock5.local' File "/usr/lib/python2.6/dist-packages/samba/netcmd/__init__.py", line 135, in _run return self.run(*args, **kwargs) File "/usr/lib/python2.6/dist-packages/samba/netcmd/domain.py", line 121, in run domain_critical_only=domain_critical_only) File "/usr/lib/python2.6/dist-packages/samba/join.py", line 898, in join_DC ctx = dc_join(server, creds, lp, site, netbios_name, targetdir, domain) File "/usr/lib/python2.6/dist-packages/samba/join.py", line 66, in __init__ ctx.server = ctx.find_dc(domain) File "/usr/lib/python2.6/dist-packages/samba/join.py", line 202, in find_dc raise Exception("Failed to find a writeable DC for domain '%s'" % domain) Finding a writeable DC for domain 'deadlock5.local' Samba4 does not seem to be provisioned, exiting /usr/share/univention-samba4/scripts/setup-dns-in-ucsldap.sh ERR: (No such object) "No such object (32)" on DN CN=backup52,OU=Domain Controllers,DC=DEADLOCK5,DC=LOCAL Modified 0 records with 1 failures Create samba4/sysvol/sync/host Multifile: /etc/samba/smb.conf Starting Samba 4 daemon: samba. Create samba4/sysvol/sync/cron File: /etc/cron.d/sysvol-sync Multifile: /etc/samba/smb.conf Object modified: zoneName=deadlock5.local,cn=dns,dc=deadlock5,dc=local ERR: (No such object) "No such object (32)" on DN flatname=DEADLOCK5,cn=Primary Domains Modified 0 records with 1 failures ERR: (No such object) "No such object (32)" on DN flatname=DEADLOCK5,cn=Primary Domains Modified 0 records with 1 failures Stopping Samba 4 daemon: samba. Starting Samba 4 daemon: samba. Object exists: cn=services,cn=univention,dc=deadlock5,dc=local Object exists: cn=Samba 4,cn=services,cn=univention,dc=deadlock5,dc=local Object modified: cn=backup52,cn=dc,cn=computers,dc=deadlock5,dc=local Wenn ich den Join mit Debug starte, dann sehe ich: /usr/sbin/samba-tool domain join deadlock5.local DC -UAdministrator%univention --realm=DEADLOCK5.LOCAL [...] finddcs: searching for a DC by DNS domain deadlock5.local finddcs: looking for SRV records for _ldap._tcp.deadlock5.local finddcs: DNS SRV response 0 at '10.201.5.1' finddcs: DNS SRV response 1 at '10.201.5.3' finddcs: DNS SRV response 2 at '10.201.5.4' finddcs: DNS SRV response 3 at '10.201.5.1' finddcs: DNS SRV response 4 at '10.201.5.2' finddcs: performing CLDAP query on 10.201.5.1 finddcs: performing CLDAP query on 10.201.5.3 finddcs: performing CLDAP query on 10.201.5.4 finddcs: performing CLDAP query on 10.201.5.1 finddcs: performing CLDAP query on 10.201.5.2 finddcs: No matching CLDAP server found ERROR(exception): uncaught exception - Failed to find a writeable DC for domain 'deadlock5.local' File "/usr/lib/python2.6/dist-packages/samba/netcmd/__init__.py", line 135, in _run return self.run(*args, **kwargs) File "/usr/lib/python2.6/dist-packages/samba/netcmd/domain.py", line 121, in run domain_critical_only=domain_critical_only) File "/usr/lib/python2.6/dist-packages/samba/join.py", line 898, in join_DC ctx = dc_join(server, creds, lp, site, netbios_name, targetdir, domain) File "/usr/lib/python2.6/dist-packages/samba/join.py", line 66, in __init__ ctx.server = ctx.find_dc(domain) File "/usr/lib/python2.6/dist-packages/samba/join.py", line 202, in find_dc raise Exception("Failed to find a writeable DC for domain '%s'" % domain)
Die Join Probleme lagen an der neuen Firewall in UCS 3.0. Ich habe jetzt im postinst von univention-samba4 noch ein paar Ports freigeschaltet, damit funktioniert der Join von Samba 3 und Samba 4 Systemen in die Samba 4 Domäne.
Das Samba4 Paket ist aktualisiert und grundsätzlich funktioniert es. GPOs, File und Print läuft über Extra Bugs.
UCS 3.0-0 wurde veröffentlicht. Sollte der hier beschriebene Bug mit einer neueren Version von UCS erneut auftreten, so sollte dieser Bug dupliziert werden: "Clone This Bug"