summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--howto.txt45
-rwxr-xr-xsource4/setup/provision.pl10
2 files changed, 32 insertions, 23 deletions
diff --git a/howto.txt b/howto.txt
index 6e31869656..de315dadbb 100644
--- a/howto.txt
+++ b/howto.txt
@@ -26,8 +26,8 @@ Note that the above rsync command will give you a checked out svn
repository. So if you also have svn you can update it to the latest
version at some future date using:
- cd samba4
- svn up
+ $ cd samba4
+ $ svn up
Step 2: compile Samba4
@@ -35,10 +35,10 @@ Step 2: compile Samba4
Run this:
- cd samba4/source
- ./autogen.sh
- ./configure.developer -C
- make
+ $ cd samba4/source
+ $ ./autogen.sh
+ $ ./configure.developer -C
+ $ make
If you have gcc 3.4 or newer, then run "make pch" before "make" to
greatly speed up the compile process (about 5x faster).
@@ -51,7 +51,7 @@ Run this as a user who have permission to write to the install
directory (defaults to /usr/local/samba). Use --prefix option to
configure above to change this.
- make install
+ # make install
Step 4: provision Samba4
@@ -59,14 +59,14 @@ Step 4: provision Samba4
The "provision" step sets up a basic user database.
- cd source
- ./script/provision.pl --realm=YOUR.REALM --domain=YOURDOM --adminpass=SOMEPASSWORD
+ $ 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/
+ # mv newdb.123/*.ldb /usr/local/samba/private/
Step 5: Create a simple smb.conf
@@ -91,12 +91,16 @@ 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 -d3
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.
+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
+they need to be stopped before starting smbd from Samba 4.
+
Make sure you put the bin and sbin directories from your new install
in your $PATH. Make sure you run the right version!
@@ -106,9 +110,9 @@ Step 7: testing Samba4
try these commands:
- smbclient //localhost/test -Uadministrator%SOMEPASSWORD
+ $ smbclient //localhost/test -Uadministrator%SOMEPASSWORD
or
- ./script/tests/test_posix.sh //localhost/test administrator SOMEPASSWORD
+ $ ./script/tests/test_posix.sh //localhost/test administrator SOMEPASSWORD
NOTE about filesystem support
@@ -128,6 +132,11 @@ options for your filesystem. For ext3 that means you need:
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_SECURITY=y
+If you are running a Linux 2.6 kernel with CONFIG_IKCONFIG_PROC
+defined you can check this with the following command:
+
+ $ zgrep CONFIG_EXT3_FS /proc/config.gz
+
If you don't have a filesystem with xattr support, then you can
simulate it by using the option:
@@ -143,11 +152,11 @@ Testing your filesystem
To test your filesystem support, install the 'attr' package and run
the following 4 commands as root:
- touch test.txt
- setfattr -n user.test -v test test.txt
- setfattr -n security.test -v test2 test.txt
- getfattr -d test.txt
- getfattr -n security.test -d test.txt
+ # touch test.txt
+ # setfattr -n user.test -v test test.txt
+ # setfattr -n security.test -v test2 test.txt
+ # getfattr -d test.txt
+ # getfattr -n security.test -d test.txt
You should see output like this:
diff --git a/source4/setup/provision.pl b/source4/setup/provision.pl
index 4000ac3bde..6d42b967a7 100755
--- a/source4/setup/provision.pl
+++ b/source4/setup/provision.pl
@@ -369,7 +369,7 @@ $dnsdomain = lc($opt_realm);
$dnsname = lc($opt_hostname).".".$dnsdomain;
$basedn = "DC=" . join(",DC=", split(/\./, $opt_realm));
-my $data = FileLoad("provision.ldif") || die "Unable to load provision.ldif\n";
+my $data = FileLoad("setup/provision.ldif") || die "Unable to load provision.ldif\n";
$data .= add_foreign("S-1-5-7", "Anonymous", "\${NOBODY}");
$data .= add_foreign("S-1-1-0", "World", "\${NOGROUP}");
@@ -400,7 +400,7 @@ print "creating $newdb/sam.ldb ...\n";
system("ldbadd -H $newdb/sam.ldb $newdb/sam.ldif") == 0 || die "Failed to create sam.ldb\n";
-$data = FileLoad("rootdse.ldif") || die "Unable to load rootdse.ldif\n";
+$data = FileLoad("setup/rootdse.ldif") || die "Unable to load rootdse.ldif\n";
$res = apply_substitutions($data);
@@ -410,7 +410,7 @@ print "creating $newdb/rootdse.ldb ...\n";
system("ldbadd -H $newdb/rootdse.ldb $newdb/rootdse.ldif") == 0 || die "Failed to create rootdse.ldb\n";
-$data = FileLoad("secrets.ldif") || die "Unable to load secrets.ldif\n";
+$data = FileLoad("setup/secrets.ldif") || die "Unable to load secrets.ldif\n";
$res = apply_substitutions($data);
@@ -420,7 +420,7 @@ print "creating $newdb/secrets.ldb ...\n";
system("ldbadd -H $newdb/secrets.ldb $newdb/secrets.ldif") == 0 || die "Failed to create secrets.ldb\n";
-$data = FileLoad("provision.zone") || die "Unable to load provision.zone\n";
+$data = FileLoad("setup/provision.zone") || die "Unable to load provision.zone\n";
$res = apply_substitutions($data);
@@ -430,7 +430,7 @@ FileSave("$newdb/$dnsdomain.zone", $res);
print "creating $newdb/hklm.ldb ... \n";
-system("ldbadd -H $newdb/hklm.ldb hklm.ldif") == 0 || die "Failed to create hklm.ldb\n";
+system("ldbadd -H $newdb/hklm.ldb setup/hklm.ldif") == 0 || die "Failed to create hklm.ldb\n";
print "