$ cd samba4
$ svn up
-Step 1a: Use Lorikeet/Heimdal
------------------------------
-
-If you want to use Kerberos in Samba4, you must use
-'Lorikeet/heimdal', and place a checkout into samba4/source/heimdal
-
-There are 2 methods of doing this:
-
- method 1:
- $ cd samba4/source
- $ rsync -avz samba.org::ftp/unpacked/lorikeet-heimdal heimdal
-
- method 2:
-
- $ cd samba4/source
- $ svn co svn://svnanon.samba.org/lorikeet/trunk/heimdal heimdal
-
-both methods will create a directory called "heimdal" in the samba4/source
-directory.
-
-(Long-term, we will either import Heimdal from 'lorikeet', or setup a
-reference between the repositories, so this and svn update works
-automaticly. In the short term, you must manually update this directory).
-
Step 2: compile Samba4
----------------------
$ cd samba4/source
$ ./autogen.sh
- $ ./configure.developer -C
-
-If you did not include heimdal, run this:
- $ make
+ $ ./configure.developer
+ $ make proto all
-If you did include Heimdal, a different step is required:
- $ make HEIMDAL_EXTERNAL all
-
-If you have gcc 3.4 or newer, then run "make pch" before "make" to
+If you have gcc 3.4 or newer, then substitue "pch" for "proto" to
greatly speed up the compile process (about 5x faster).
Step 4: provision Samba4
------------------------
-The "provision" step sets up a basic user database.
+The "provision" step sets up a basic user database. Make sure your smbscript
+binary is installed in a directory listed in your PATH environment variable.
+It is presumed it's available just like any other commands from your shell.
$ cd source
- $ ./setup/provision.pl --realm=YOUR.REALM --domain=YOURDOM --adminpass=SOMEPASSWORD
-
-This will create a number of new 'ldb' database files in a directory
-newdb.XXX. You need to move these to the "private" subdirectory of
-your install. For example:
-
- # mv newdb.123/*.ldb /usr/local/samba/private/
-
+ $ ./setup/provision --realm=YOUR.REALM --domain=YOURDOM --adminpass=SOMEPASSWORD
Step 5: Create a simple smb.conf
--------------------------------
-You need to create a smb.conf file in the lib/ directory of your
-install. The default is /usr/local/samba/lib/smb.conf. A minimal
-smb.conf would be:
-
- workgroup = YOURDOM
+The provisioning will create a very simple smb.conf with no shares by
+default. You will need to update it to add at least one share. For
+example:
[test]
path = /data/test
read only = no
-The workgroup must exactly match the --domain argument you gave to provision.pl
-
Step 6: starting Samba4
-----------------------
The simplest is to just run "smbd", but as a developer you may find
the following more useful:
- # smbd -i -M single -d3
+ # smbd -i -M single
that means "start smbd without messages in stdout, and running a
-single process, with level 3 debugging". That mode of operation makes
-debugging smbd with gdb particularly easy.
+single process. That mode of operation makes debugging smbd with gdb
+particularly easy.
Note that now it is no longer necessary to have an instance of nmbd
from Samba 3 running. If you are running any smbd or nmbd processes