[Samba] need help cleaning up my smb3 databases to complete smb4 classic upgrade

Adam Wojnarski adam.wojnarski at gmail.com
Mon May 19 02:53:03 MDT 2014


Hi,
Getting straight to the point:
/usr/local/samba/bin/samba-tool domain classicupgrade
--dbdir=/root/elara/samba/ --use-xattrs=yes
--realm=mycompanyname.com.pl/root/elara.smb.conf
After cleaning up all duplicate names and sutch I end up with:

ldb: ldb_trace_request: (tdb)->search
ldb: ldb_trace_response: ENTRY
dn: CN=CONFIG
cn: CONFIG
upperBound: 4000000
lowerBound: None
xidNumber: None
distinguishedName: CN=CONFIG



ldb: cancel ldb transaction (nesting: 0)
ldb: ldb_trace_request: (tdb)->del_transaction
idmapping sid_to_xid failed for
id[0]=S-1-5-21-1275545348-4294519683-4007804651-512: NT_STATUS_NONE_MAPPED
ERROR(<class 'passdb.error'>): uncaught exception - Unable to get id for sid
  File
"/usr/local/samba/lib64/python2.6/site-packages/samba/netcmd/__init__.py",
line 175, in _run
    return self.run(*args, **kwargs)
  File
"/usr/local/samba/lib64/python2.6/site-packages/samba/netcmd/domain.py",
line 1448, in run
    useeadb=eadb, dns_backend=dns_backend, use_ntvfs=use_ntvfs)
  File "/usr/local/samba/lib64/python2.6/site-packages/samba/upgrade.py",
line 851, in upgrade_from_samba3
    result.names.domaindn, result.lp, use_ntvfs)
  File
"/usr/local/samba/lib64/python2.6/site-packages/samba/provision/__init__.py",
line 1612, in setsysvolacl
    set_gpos_acl(sysvol, dnsdomain, domainsid, domaindn, samdb, lp,
use_ntvfs, passdb=s4_passdb)
  File
"/usr/local/samba/lib64/python2.6/site-packages/samba/provision/__init__.py",
line 1517, in set_gpos_acl
    passdb=passdb)
  File
"/usr/local/samba/lib64/python2.6/site-packages/samba/provision/__init__.py",
line 1480, in set_dir_acl
    setntacl(lp, path, acl, domsid, use_ntvfs=use_ntvfs,
skip_invalid_chown=True, passdb=passdb, service=service)
  File "/usr/local/samba/lib64/python2.6/site-packages/samba/ntacls.py",
line 104, in setntacl
    (owner_id, owner_type) = passdb.sid_to_id(sd.owner_sid)


I have medium size environment ~60windows PCs, ~60users and ~200registered
servers (many old ones were just disbanded and not removed from the domain,
about 1/3 active) so it's not a big issue if I'll have to delete one of
them and re-register it or check

I already know that smb3 has no consistancy checks or other sanity checks
so I know why is this happening.

My issue is:
How do i find the offending sid in my old dbs and get rid of it?


I got my samba 4 from git://git.samba.org/samba.git samba-master
my smb3 server is a an ancient fedora build samba-3.2.15-0.36.fc10.x86_64 -
am I right to think that upgrading it to a current 3.x line version might
help things or will the db's collect even more garbage with the upgrade? A
few people managed it before me so I don't know it's full history.

Any help will be greatly appreciated.


Best Regards
Adam


More information about the samba mailing list