Simplifying the OpenChange setup process

Clement Wong cw at
Sun Apr 6 19:07:35 MDT 2014

Speaking of OpenChange, is there a git branch or wiki or something that I can follow or test on exchange schema replication between windows and samba?


On Apr 7, 2014, at 2:00 AM, Andrew Bartlett <abartlet at> wrote:

> On Sun, 2014-04-06 at 20:24 +0200, Jelmer Vernooij wrote:
>> (re-sending from an address that is signed up to the samba-technical@
>> mailing list - this was originally cross-posted to
>> devel at and samba-technical at
>> At the moment, the process for setting up OpenChange on a new machine
>> is fairly involved. It requires building and installing the software,
>> and then various provisioning steps:
>> 1) Provisioning Samba
>> 2) Provisioning the OpenChange integration in Samba/AD (schemas, etc)
>> 3) Editing smb.conf to add the various OpenChange services
>> 4) Provisioning the OpenChange database
>> 5) Possibly tweaking the ocsmanager settings, and setting up proxies
>> for ocsmanager/tcp_proxy
>> I'm working on two changes that should help simplify this process,
>> combining steps 1 through 4:
>> loadparm_context creation hooks
>> ===============================
>> loadparm_init() creates a loadparm context and then sets a whole heap
>> of defaults. These defaults can then be overwritten when a smb.conf
>> file is loaded that has explicit settings.
>> I'd like to allow modules to register a hook that gets run at the end
>> of this function, so they can tweak the default values in lp_ctx.
>> OpenChange could use this to add its own services to the "server
>> services" list, something that currently requires manual editing of
>> smb.conf by the user.
>> Users will still be able to disable openchange by explicitly setting a
>> 'server services' line, just as they are able to set it at the moment.
>> hooks for setting up additional schemas in 'samba-tool domain provision'
>> ========================================================================
>> It should be possible to extend the functionality of the provisioning
>> code in Samba. In particular I'm thinking of the ability to setup more
>> schemas.
>> This can be done by allowing a Python file that provides a certain
>> interface to be dropped in a magic directory somewhere. OpenChange can
>> then install such a file.
>> Thoughts?
> This all sounds pretty reasonable.  In terms of loadparm changes, these
> would be best done once Garming's changes to loadparm are merged, as we
> are getting close to having much of the processing logic in common. 
> I'm a little concerned that having openchange binaries present means
> wanting these hooks run, but that's just a matter of working out how to
> enable this at the right times. 
> Andrew Bartlett
> -- 
> Andrew Bartlett
> Authentication Developer, Samba Team
> Samba Developer, Catalyst IT

More information about the samba-technical mailing list