Inhaltsverzeichnis

Samba Setup

Expose one shared dir

Tested setup on Slack 12.2.

First create a simple Samba configuration file /etc/samba/smb.conf:

[global]
    workgroup = testgroup
    follow symlinks = no
[mytest]
    path = /smb
    read only = no
    guest ok = no

Test Your Config File, create a directory for the [mytest] samba share above, start samba server and check if server responds (all as root):

testparm /etc/samba/smb.conf # test config file
mkdir /smb                   # create samba share
chmod 777 /smb
chomd +x /etc/rc.d/rc.samba  # start server
/etc/rc.d/rc.samba start
smbclient -U% -L localhost   # check (just press return at password promt)

Enable access for a normal user (eg „sandy“). Note that the user must already have a normal login on the machine (adduser sandy).

smbpasswd -a sandy

Check if samba share is accessable as normal user sandy on the server:

smbclient //localhost/mytest

Check if samba share is accessable as normal user sandy on a windows client:

M:\>net use j: \\etb-111\mytest

Other documentation: Using Samba, 2nd Edition, Samba-3 by Example, Samba man pages

Expose home dirs per user

[global]
    workgroup = testgroup
    follow symlinks = no
[user]
    path = /home/%U
    read only = no
M:\>net use j: \\etb-111\user
Username: sandy
Password: ***

%U was found here

Set file mode creation mask

As default a remote Win client creates a file on the server 744 = rwxr–r–. The mask can be changed with in smb.conf to e.g. the linux default 644 = rw-r–r–:

[global]
    create mask = 0644

List Users in Smb Database

pdbedit -L [-v]

Import User Accounts from other Smb Server

Just copy /etc/samba/private/passdb.tdb form old server to new server. This doesn't work any more. They user account/password file is now at /var/lib/samba/private

Because the new location of the password file is obviously not mentioned in man pages of pdbedit and smbpasswd i suppose it is not meant to simply copy it over. Instead on the old server we export all samba users to a textfile and import that file into the new samba server:

# On old server:
pdbedit -e smbpasswd:smbusers.txt
# Now copy smbusers.txt to new server and on the new server:
pdbedit -i smbpasswd:smbusers.txt