Samba4/OSX

Revision as of 18:48, 21 March 2012 by Bradskins (talk | contribs)

A brief howto on installing Samba 4 alpha18 on OS X Lion (non-server). **Incomplete**

Dependencies

Install MacPorts using the instructions on macports.org. Once your MacPorts system is set up how you like it, type in the following command to install the dependencies.

Bind 9 with Dynamic Updates

Edit the Portfile in MacPorts to build Bind 9.9.0 for Samba 4 dynamic updates

configure.args          --mandir=${prefix}/share/man \
                                --with-openssl=${prefix} \
                                --with-libxml2=${prefix} \
                                --enable-threads \
                                --enable-ipv6 \
                                --with-dlopen=yes

Then install bind9 and other dependencies

# port install bind9 gnutls readline talloc

Compiling, Installing and Provisioning

You can use Git as in general guide, or you may prefer to use releases:

$ curl http://download.samba.org/samba/ftp/samba4/samba-4.0.0alpha18.tar.gz -o samba-4.0.0alpha18.tar.gz
$ tar -xvjf samba-4.0.0alpha14.tar.gz
$ cd samba-4.0.0alpha14/source4
$ export PKG_CONFIG_PATH=/opt/local/lib/pkgconfig1
$ ./configure2
$ make
# make install
# ./setup/provision --realm=samdom.example.com --domain=SAMDOM --adminpass=SOMEPASSWORD --server-role='domain controller'

Management with Launchd

First, we need to disable the built-in Samba 3 services using LaunchCtl. You might want to disable Kerberos.

# launchctl
launchd% unload -w /System/Library/LaunchDaemons/smbd.plist 
launchd% unload -w /System/Library/LaunchDaemons/nmbd.plist
launchd% unload -w /System/Library/LaunchDaemons/edu.mit.Kerberos.krb5kdc.plist 
launchd% quit

Configuration with Server Admin

Building a PortFile

Notes

  1. This was a hack to help autotools find talloc in MacPorts. TODO: Gather more info and build a bug report, if it is still required on alpha15.
  2. Configure.developer build fails when compiling pam_winbind.c. TODO: Investigate and file a bug report.