Univention Bugzilla – Attachment 4154 Details for
Bug 25991
Standort-Konfiguration für Samba4
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
univention-samba4-site-tool.py --site BranchSite1 --createsite --subnet "10.200.8.0/24" --createsubnet
univention-samba4-site-tool.py (text/plain), 5.55 KB, created by
Arvid Requate
on 2012-02-07 16:42 CET
(
hide
)
Description:
univention-samba4-site-tool.py --site BranchSite1 --createsite --subnet "10.200.8.0/24" --createsubnet
Filename:
MIME Type:
Creator:
Arvid Requate
Created:
2012-02-07 16:42 CET
Size:
5.55 KB
patch
obsolete
>#!/usr/bin/python2.6 >from samba.samdb import SamDB >import ldb >import optparse >import sys >from samba.param import LoadParm >from samba.auth import system_session >from univention import config_registry > > >parser = optparse.OptionParser("$prog [options] <host>") >parser.add_option("-v", "--verbose", action="store_true", dest="verbose") >parser.add_option("--createsite", action="store_true", dest="createsite") >parser.add_option("--createsitelink", action="store_true", dest="createsitelink") >parser.add_option("--createsubnet", action="store_true", dest="createsubnet") >parser.add_option("--modifysubnet", action="store_true", dest="modifysubnet") >parser.add_option("--site", dest="site") >parser.add_option("--sitelink", dest="sitelink", default="DEFAULTIPSITELINK") >parser.add_option("--subnet", dest="subnet") >opts, args = parser.parse_args() > >if opts.createsitelink: > if not opts.sitelink: > print >> sys.stderr, "Option --sitelink needed for sitelink creation" > sys.exit(1) > >if opts.createsite: > if not opts.site: > print >> sys.stderr, "Option --site needed for site creation" > sys.exit(1) > if not opts.sitelink: > print >> sys.stderr, "Option --sitelink needed for site creation" > sys.exit(1) > >if opts.createsubnet or opts.modifysubnet: > if not opts.subnet: > print >> sys.stderr, "Option --subnet needed for subnet creation" > sys.exit(1) > if not opts.site: > print >> sys.stderr, "Option --site needed for subnet creation" > sys.exit(1) > >if not (opts.createsitelink or opts.createsite or opts.createsubnet or opts.modifysubnet): > parser.print_help() > >lp = LoadParm() >lp.load('/etc/samba/smb.conf') >samdb = SamDB('/var/lib/samba/private/sam.ldb', session_info=system_session(lp), lp=lp) ># samdb = SamDB('ldapi:///var/lib/samba/private/ldap_priv/ldapi') > >configRegistry = config_registry.ConfigRegistry() >configRegistry.load() > >ldap_base = configRegistry.get('ldap/base') >ldif_dict = { >'branchsite_name': opts.site, >'sitelink': opts.sitelink, >'branchsite_subnet': opts.subnet, >'ldap/base': ldap_base >} > >if opts.createsite: > if not opts.createsitelink: > res = samdb.search("CN=Configuration,%s" % ldap_base, scope=ldb.SCOPE_SUBTREE, expression="(&(objectClass=siteLink)(cn=%s))" % opts.sitelink) > if not res: > print >> sys.stderr, "sitelink %s not found" % opts.sitelink > sys.exit(1) > > site_add_ldif=''' >dn: CN=%(branchsite_name)s,CN=Sites,CN=Configuration,%(ldap/base)s >objectClass: site >cn: %(branchsite_name)s >showInAdvancedViewOnly: TRUE >name: %(branchsite_name)s >systemFlags: 1107296256 >objectCategory: CN=Site,CN=Schema,CN=Configuration,%(ldap/base)s > >dn: CN=NTDS Site Settings,CN=%(branchsite_name)s,CN=Sites,CN=Configuration,%(ldap/base)s >objectClass: nTDSSiteSettings >cn: NTDS Site Settings >showInAdvancedViewOnly: TRUE >name: NTDS Site Settings >objectCategory: CN=NTDS-Site-Settings,CN=Schema,CN=Configuration,%(ldap/base)s > >dn: CN=Servers,CN=%(branchsite_name)s,CN=Sites,CN=Configuration,%(ldap/base)s >objectClass: serversContainer >cn: Servers >showInAdvancedViewOnly: TRUE >name: Servers >systemFlags: 33554432 >objectCategory: CN=Servers-Container,CN=Schema,CN=Configuration,%(ldap/base)s >''' % ldif_dict > samdb.add_ldif(site_add_ldif) > print "created site %s" % opts.site > > if not opts.createsitelink: > ## and add it to the sitelink > sitelink_modify_ldif=''' >dn: CN=%(sitelink)s,CN=IP,CN=Inter-Site Transports,CN=Sites,CN=Configuration,%(ldap/base)s >changetype: modify >add: siteList >siteList: CN=%(branchsite_name)s,CN=Sites,CN=Configuration,%(ldap/base)s >''' % ldif_dict > samdb.modify_ldif(sitelink_modify_ldif) > print "added site %s to sitelink %s" % (opts.site, opts.sitelink) > >elif opts.site: > res = samdb.search("CN=Configuration,%s" % ldap_base, scope=ldb.SCOPE_SUBTREE, expression="(&(objectClass=site)(cn=%s))" % opts.site) > if not res: > print >> sys.stderr, "site %s not found" % opts.site > sys.exit(1) > >if opts.createsitelink: > sitelink_add_ldif=''' >dn: CN=%(sitelink)s,CN=IP,CN=Inter-Site Transports,CN=Sites,CN=Configuration,%(ldap/base)s >objectClass: siteLink >cn: %(sitelink)s >cost: 100 >showInAdvancedViewOnly: TRUE >name: %(sitelink)s >systemFlags: 1073741824 >objectCategory: CN=Site-Link,CN=Schema,CN=Configuration,%(ldap/base)s >replInterval: 180 >siteList: CN=%(branchsite_name)s,CN=Sites,CN=Configuration,%(ldap/base)s >''' % ldif_dict > samdb.add_ldif(sitelink_add_ldif) > print "created sitelink %s" % opts.sitelink > >if opts.createsubnet: > subnet_add_ldif=''' >dn: CN=%(branchsite_subnet)s,CN=Subnets,CN=Sites,CN=Configuration,%(ldap/base)s >objectClass: subnet >cn: %(branchsite_subnet)s >showInAdvancedViewOnly: TRUE >name: %(branchsite_subnet)s >systemFlags: 1073741824 >siteObject: CN=%(branchsite_name)s,CN=Sites,CN=Configuration,%(ldap/base)s >objectCategory: CN=Subnet,CN=Schema,CN=Configuration,%(ldap/base)s >''' % ldif_dict > samdb.add_ldif(subnet_add_ldif) > print "created subnet %s for site %s" % (opts.subnet, opts.site) > >elif opts.modifysubnet: > res = samdb.search("CN=Configuration,%s" % ldap_base, scope=ldb.SCOPE_SUBTREE, expression="(&(objectClass=subnet)(cn=%s))" % opts.subnet) > if not res: > print >> sys.stderr, "subnet %s not found" % opts.subnet > sys.exit(1) > > res = samdb.search("CN=Configuration,%s" % ldap_base, scope=ldb.SCOPE_SUBTREE, expression="(&(objectClass=site)(cn=%s))" % opts.site) > if not res: > print >> sys.stderr, "site %s not found" % opts.site > sys.exit(1) > > site_dn = res[0]['dn'] > subnet_dn = "CN=$(branchsite_subnet)s,CN=Subnets,CN=Sites,CN=Configuration,%(ldap/base)s" % ldif_dict > > subnet_modify_ldif=''' >dn: %s >changetype: modify >replace: siteObject >siteObject: %s >''' % (subnet_dn, site_dn) > samdb.modify_ldif(subnet_modify_ldif) > print "associated subnet %s with site %s" % (opts.subnet, opts.site) >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
Actions:
View
Attachments on
bug 25991
: 4154 |
4237