We need to reformat the smb.conf man page as HTML with a label for each parameter. Anyone want to write a perl script? Currently I've just done a quick hack with an emacs macro to get something in place. Or maybe the SGML conversion will be the way to go?
This is a list of users who will be granted administrative privileges on the share. This means that they will do all file operations as the super-user (root).
You should use this option very carefully, as any user in this list will be able to do anything they like on the share, irrespective of file permissions.
.B Default: no admin users
.B Example: admin users = jason
This specifies what type of server nmbd will announce itself as in
browse lists. By default this is set to Windows NT. The valid options
are "NT", "Win95" or "WfW" meaining Windows NT, Windows 95 and
Windows for Workgroups respectively. Do not change this parameter
unless you have a specific need to stop Samba appearing as an NT
server as this may prevent Samba servers from participating as
browser servers correctly.
.B Default:
announce as = NT
.B Example
announce as = Win95
This specifies the major and minor version numbers that nmbd
will use when announcing itself as a server. The default is 4.2.
Do not change this parameter unless you have a specific need to
set a Samba server to be a downlevel server.
.B Default:
announce version = 4.2
.B Example:
announce version = 2.0
Note that if you just want all printers in your printcap file loaded
then the "load printers" option is easier.
.B Default:
no auto services
.B Example:
auto services = fred lp colorlp
This parameter is a comma delimited set of hosts which are permitted to access
a service.
If specified in the [global] section then it will apply to all
services, regardless of whether the individual service has a different
setting.
You can specify the hosts by name or IP number. For example, you could
restrict access to only the hosts on a Class C subnet with something like
"allow hosts = 150.203.5.". The full syntax of the list is described in
the man page
.BR hosts_access (5).
You can also specify hosts by network/netmask pairs and by netgroup
names if your system supports netgroups. The EXCEPT keyword can also
be used to limit a wildcard list. The following examples may provide
some help:
Example 1: allow all IPs in 150.203.*.* except one
hosts allow = 150.203. EXCEPT 150.203.6.66
Example 2: allow hosts that match the given network/netmask
hosts allow = 150.203.15.0/255.255.255.0
Example 3: allow a couple of hosts
hosts allow = lapland, arvidsjaur
Example 4: allow only hosts in netgroup "foonet" or localhost, but
deny access from one particular host
hosts allow = @foonet, localhost
hosts deny = pirate
Note that access still requires suitable user-level passwords.
See
.BR testparm (1)
for a way of testing your host access to see if it
does what you expect.
.B Default:
none (i.e., all hosts permitted access)
.B Example:
allow hosts = 150.203.5. myhost.mynet.edu.au
This option affects the way the "read only" DOS attribute is produced
for UNIX files. If this is false then the read only bit is set for
files on writeable shares which the user cannot write to.
If this is true then it is set for files whos user write bit is not set.
The latter behaviour is useful for when users copy files from each
others directories, and use a file manager that preserves
permissions. Without this option they may get annoyed as all copied
files will have the "read only" bit set.
.B Default:
alternate permissions = no
.B Example:
alternate permissions = yes
.B Default:
available = yes
.B Example:
available = no
For name service it causes nmbd to bind to ports 137 and 138 on
the interfaces listed in the 'interfaces' parameter. nmbd also binds
to the 'all addresses' interface (0.0.0.0) on ports 137 and 138
for the purposes of reading broadcast messages. If this option is
not set then nmbd will service name requests on all of these
sockets. If "bind interfaces only" is set then nmbd will check
the source address of any packets coming in on the broadcast
sockets and discard any that don't match the broadcast addresses
of the interfaces in the 'interfaces' parameter list. As unicast
packets are received on the other sockets it allows nmbd to
refuse to serve names to machines that send packets that arrive
through any interfaces not listed in the 'interfaces' list.
IP Source address spoofing does defeat this simple check, however
so it must not be used seriously as a security feature for nmbd.
For file service it causes smbd to bind only to the interface
list given in the 'interfaces' parameter. This restricts the
networks that smbd will serve to packets coming in those interfaces.
Note that you should not use this parameter for machines that
are serving ppp or other intermittant or non-broadcast network
interfaces as it will not cope with non-permanent interfaces.
.B Default:
bind interfaces only = False
.B Example:
bind interfaces only = True
.B Default:
browseable = Yes
.B Example:
browseable = No
.B Default:
browse list = Yes
.B Default
character set =
.B Example
character set = iso8859-1
This parameter co-operates with the "valid chars" parameter in
determining what characters are valid in filenames and how
capitalization is done. It has been added as a convenience for
clients whose code page is either 437 or 850 so a convoluted
"valid chars" string does not have to be determined. If you
set both this parameter and the "valid chars" parameter the
"client code page" parameter MUST be set before the "valid chars"
in the smb.conf file. The "valid chars" string will then augment
the character settings in the "client code page" parameter.
If "client code page" is set to a value other than 850 or 437
it will default to 850.
See also : "valid chars".
.B Default
client code page = 850
.B Example
client code page = 437
If you want to set the string that is displayed next to the machine
name then see the server string command.
.B Default:
No comment string
.B Example:
comment = Fred's Files
This allows you to override the config file to use, instead of the
default (usually smb.conf). There is a chicken and egg problem here as
this option is set in the config file!
For this reason, if the name of the config file has changed when the
parameters are loaded then it will reload them from the new config
file.
This option takes the usual substitutions, which can be very useful.
If the config file doesn't exist then it won't be loaded (allowing
you to special case the config files of just a few clients).
.B Example:
config file = /usr/local/samba/lib/smb.conf.%m
This feature lets you set up a 'template' service and create similar
services easily. Note that the service being copied must occur earlier
in the configuration file than the service doing the copying.
.B Default:
none
.B Example:
copy = otherservice
When a file is created, the neccessary permissions are calculated
according to the mapping from DOS modes to UNIX permissions, and
the resulting UNIX mode is then bit-wise 'AND'ed with this parameter.
This parameter may be thought of as a bit-wise MASK for the UNIX
modes of a file. Any bit *not* set here will be removed from the
modes set on a file when it is created.
The default value of this parameter removes the 'group' and 'other'
write and execute bits from the UNIX modes.
Following this Samba will bit-wise 'OR' the UNIX mode created from
this parameter with the value of the "force create mode" parameter
which is set to 000 by default.
For Samba 1.9.17 and above this parameter no longer affects directory
modes. See the parameter 'directory mode' for details.
See also the "force create mode" parameter for forcing particular
mode bits to be set on created files.
See also the "directory mode" parameter for masking mode bits on created
directories.
.B Default:
create mask = 0744
.B Example:
create mask = 0775
This is useful to stop a server's resources being exhausted by a large
number of inactive connections.
Most clients have an auto-reconnect feature when a connection is broken so
in most cases this parameter should be transparent to users.
Using this parameter with a timeout of a few minutes is recommended
for most systems.
A deadtime of zero indicates that no auto-disconnection should be performed.
.B Default:
dead time = 0
.B Example:
dead time = 15
The default will be the debug level specified on the command line.
.B Example:
debug level = 3
See the section on "NAME MANGLING" Also note the addition of "short
preserve case"
This parameter specifies the name of a service which will be connected to
if the service actually requested cannot be found. Note that the square
brackets are NOT given in the parameter value (see example below).
There is no default value for this parameter. If this parameter is not given,
attempting to connect to a nonexistent service results in an error.
Typically the default service would be a public, read-only service.
Also note that as of 1.9.14 the apparent service name will be changed to
equal that of the requested service, this is very useful as it allows
you to use macros like %S to make a wildcard service.
Note also that any _ characters in the name of the service used in the
default service will get mapped to a /. This allows for interesting
things.
.B Example:
default service = pub
[pub]
path = /%S
This option may be useful for running applications such as rcs, where UNIX
file ownership prevents changing file permissions, and DOS semantics prevent
deletion of a read only file.
.B Default:
delete readonly = No
.B Example:
delete readonly = Yes
The opposite of 'allow hosts' - hosts listed here are NOT permitted
access to services unless the specific services have their own lists to
override this one. Where the lists conflict, the 'allow' list takes precedence.
.B Default:
none (i.e., no hosts specifically excluded)
.B Example:
deny hosts = 150.203.4. badhost.mynet.edu.au
This option is used when Samba is attempting to delete a directory
that contains one or more vetoed directories (see the 'veto files' option).
If this option is set to False (the default) then if a vetoed directory
contains any non-vetoed files or directories then the directory delete
will fail. This is usually what you want.
If this option is set to True, then Samba will attempt
to recursively delete any files and directories within the vetoed
directory. This can be useful for integration with file serving
systems such as Netatalk, which create meta-files within directories
you might normally veto DOS/Windows users from seeing (eg. .AppleDouble)
Setting 'delete veto files = True' allows these directories to be
transparently deleted when the parent directory is deleted (so long
as the user has permissions to do so).
.B Default:
delete veto files = False
.B Example:
delete veto files = True
See
.B veto files
This setting allows the replacement of the internal routines to
calculate the total disk space and amount available with an external
routine. The example below gives a possible script that might fulfill
this function.
The external program will be passed a single parameter indicating a
directory in the filesystem being queried. This will typically consist
of the string "./". The script should return two integers in ascii. The
first should be the total disk space in blocks, and the second should
be the number of available blocks. An optional third return value
can give the block size in bytes. The default blocksize is 1024 bytes.
Note: Your script should NOT be setuid or setgid and should be owned by
(and writable only by) root!
.B Default:
By default internal routines for determining the disk capacity
and remaining space will be used.
.B Example:
dfree command = /usr/local/samba/bin/dfree
Where the script dfree (which must be made executable) could be
.nf
#!/bin/sh
df $1 | tail -1 | awk '{print $2" "$4}'
.fi
or perhaps (on Sys V)
.nf
#!/bin/sh
/usr/bin/df -k $1 | tail -1 | awk '{print $3" "$5}'
.fi
Note that you may have to replace the command names with full
path names on some systems.
This parameter is the octal modes which are used when converting DOS modes
to UNIX modes when creating UNIX directories.
When a directory is created, the neccessary permissions are calculated
according to the mapping from DOS modes to UNIX permissions, and
the resulting UNIX mode is then bit-wise 'AND'ed with this parameter.
This parameter may be thought of as a bit-wise MASK for the UNIX
modes of a directory. Any bit *not* set here will be removed from the
modes set on a directory when it is created.
The default value of this parameter removes the 'group' and 'other'
write bits from the UNIX mode, allowing only the user who owns the
directory to modify it.
Following this Samba will bit-wise 'OR' the UNIX mode created from
this parameter with the value of the "force directory mode" parameter.
This parameter is set to 000 by default (ie. no extra mode bits are added).
See the "force directory mode" parameter to cause particular mode
bits to always be set on created directories.
See also the "create mode" parameter for masking mode bits on created
files.
.B Default:
directory mask = 0755
.B Example:
directory mask = 0775
Specifies that nmbd should (as a WINS server), on finding that a NetBIOS
name has not been registered, treat the NetBIOS name word-for-word as
a DNS name.
Note that the maximum length for a NetBIOS name is 15
characters, so the DNS name (or DNS alias) can likewise only be 15
characters, maximum.
Note also that nmbd will block completely until the DNS name is resolved.
This will result in temporary loss of browsing and WINS services.
Enable this option only if you are certain that DNS resolution is fast,
or you can live with the consequences of periodic pauses in nmbd service.
.B Default:
dns proxy = yes
Specifies the DNS name or IP address of the machine to refer domain
logons from Win95 machines to. You should never need to set this parameter.
.B Default:
domain controller = no
If set to true, the Samba server will serve Windows 95 domain logons
for the workgroup it is in. For more details on setting up this feature
see the file DOMAINS.txt in the Samba source documentation directory.
.B Default:
domain logons = no
Enable WAN-wide browse list collation. Local master browsers on
broadcast-isolated subnets will give samba their local browse lists, and
ask for a complete copy of the browse list for the whole wide area network.
Browser clients will then contact their local master browser, and will
receive the domain-wide browse list, instead of just the list for their
broadcast-isolated subnet.
.B Default:
domain master = no
Note that Samba can be very fussy about the exact format of the "dont
descend" entries. For example you may need "./proc" instead of just
"/proc". Experimentation is the best policy :-)
.B Default:
none (i.e., all directories are OK to descend)
.B Example:
dont descend = /proc,/dev
.B Default:
dos filetimes = False
.B Example:
dos filetimes = True
This option is mainly used as a compatibility option for Visual C++
when used against Samba shares. If oplocks are enabled on a share,
Visual C++ uses two different time reading calls to check if a file
has changed since it was last read. One of these calls uses a one-second
granularity, the other uses a two second granularity. As the two second
call rounds any odd second down, then if the file has a timestamp of an
odd number of seconds then the two timestamps will not match and Visual
C++ will keep reporting the file has changed. Setting this option causes
the two timestamps to match, and Visual C++ is happy.
.B Default:
dos filetime resolution = False
.B Example:
dos filetime resolution = True
This boolean controls whether encrypted passwords will be negotiated
with the client. Note that this option has no effect if you haven't
compiled in the necessary des libraries and encryption code. It
defaults to no.
This is an alias for preexec
Oplocks are the way that SMB clients get permission from a server to
locally cache file operations. If a server grants an oplock
(opportunistic lock) then the client is free to assume that it is the
only one accessing the file and it will aggressively cache file
data. With some oplock types the client may even cache file open/close
operations. This can give enormous performance benefits.
When you set "fake oplocks = yes" Samba will always grant oplock
requests no matter how many clients are using the file.
By enabling this option on all read-only shares or shares that you know
will only be accessed from one client at a time you will see a big
performance improvement on many operations. If you enable this option
on shares where multiple clients may be accessing the files read-write
at the same time you can get data corruption. Use this option
carefully!
It is generally much better to use the real oplock support except for
physically read-only media such as CDROMs.
This option is disabled by default.
This parameter allows the Samba administrator to stop smbd from
following symbolic links in a particular share. Setting this
parameter to "No" prevents any file or directory that is a
symbolic link from being followed (the user will get an error).
This option is very useful to stop users from adding a symbolic
link to /etc/pasword in their home directory for instance.
However it will slow filename lookups down slightly.
This option is enabled (ie. smbd will follow symbolic links)
by default.
See also the parameter "create mask" for details on masking mode
bits on created files.
.B Default:
force create mode = 000
.B Example:
force create mode = 0755
would force all created files to have read and execute permissions
set for 'group' and 'other' as well as the read/write/execute bits
set for the 'user'.
See also the parameter "directory mask" for details on masking mode
bits on created directories.
.B Default:
force directory mode = 000
.B Example:
force directory mode = 0755
would force all created directories to have read and execute permissions
set for 'group' and 'other' as well as the read/write/execute bits
set for the 'user'.
.B Default:
no forced group
.B Example:
force group = agroup
This user name only gets used once a connection is established. Thus
clients still need to connect as a valid user and supply a valid
password. Once connected, all file operations will be performed as the
"forced user", not matter what username the client connected as.
.B Default:
no forced user
.B Example:
force user = auser
.B Default:
getwd cache = No
.B Example:
getwd cache = Yes
One some systems the account "nobody" may not be able to print. Use
another account in this case. You should test this by trying to log in
as your guest user (perhaps by using the "su \-" command) and trying to
print using
.BR lpr .
Note that as of version 1.9 of Samba this option may be set
differently for each service.
.B Default:
specified at compile time
.B Example:
guest account = nobody
See the section below on user/password validation for more information about
this option.
.B Default:
guest only = no
.B Example:
guest only = yes
.B Default:
hide dot files = yes
.B Example:
hide dot files = no
Each entry in the list must be separated by a "/", which allows spaces
to be included in the entry. '*' and '?' can be used to specify multiple
files or directories as in DOS wildcards.
Each entry must be a unix path, not a DOS path and must not include the
unix directory separator "/".
Note that the case sensitivity option is applicable in hiding files.
Setting this parameter will affect the performance of Samba, as
it will be forced to check all files and directories for a match
as they are scanned.
See also "hide dot files", "veto files" and "case sensitive"
.B Default
No files or directories are hidden by this option (dot files are
hidden by default because of the "hide dot files" option).
.B Example
hide files = /.*/DesktopFolderDB/TrashFor%m/resource.frk/
The above example is based on files that the Macintosh client (DAVE)
creates for internal use, and also still hides all files beginning with
a dot.
username server:/some/file/system
and the program will extract the servername from before the first ':'.
There should probably be a better parsing system that copes with different
map formats and also Amd (another automounter) maps.
NB: The -DNETGROUP option is required in the Makefile for option to work
and on some architectures the line -lrpcsvc needs to be added to the
LIBSM variable. This is required for Solaris 2, FreeBSD and HPUX.
See also "nis homedir"
.B Default:
homedir map = auto.home
.B Example:
homedir map = amd.homedir
This is not be confused with
.B allow hosts
which is about hosts access to services and is more useful for guest services.
.B hosts equiv
may be useful for NT clients which will not supply passwords to samba.
NOTE: The use of hosts.equiv can be a major security hole. This is
because you are trusting the PC to supply the correct username. It is
very easy to get a PC to supply a false username. I recommend that the
hosts.equiv option be only used if you really know what you are doing,
or perhaps on a home network where you trust your wife and kids :-)
.B Default
No host equivalences
.B Example
hosts equiv = /etc/hosts.equiv
This allows you to include one config file inside another. The file is
included literally, as though typed in place.
It takes the standard substitutions, except %u, %P and %S
This option allows you to setup multiple network interfaces, so that
Samba can properly handle browsing on all interfaces.
The option takes a list of ip/netmask pairs. The netmask may either be
a bitmask, or a bitlength.
For example, the following line:
interfaces = 192.168.2.10/24 192.168.3.10/24
would configure two network interfaces with IP addresses 192.168.2.10
and 192.168.3.10. The netmasks of both interfaces would be set to
255.255.255.0.
You could produce an equivalent result by using:
interfaces = 192.168.2.10/255.255.255.0 192.168.3.10/255.255.255.0
if you prefer that format.
If this option is not set then Samba will attempt to find a primary
interface, but won't attempt to configure more than one interface.
A name starting with @ is interpreted as a UNIX group.
The current servicename is substituted for %S. This is useful in the
[homes] section.
See also "valid users"
.B Default
No invalid users
.B Example
invalid users = root fred admin @wheel
Keepalives should, in general, not be needed if the socket being used
has the SO_KEEPALIVE attribute set on it (see "socket
options"). Basically you should only use this option if you strike
difficulties.
.B Default:
keep alive = 0
.B Example:
keep alive = 60
This parameter determines if Samba will produce Lanman announce
broadcasts that are needed by OS/2 clients in order for them to
see the Samba server in their browse list. This parameter can
have three values, true, false, or auto. The default is auto.
If set to False Samba will never produce these broadcasts. If
set to true Samba will produce Lanman announce broadcasts at
a frequency set by the parameter 'lm interval'. If set to auto
Samba will not send Lanman announce broadcasts by default but
will listen for them. If it hears such a broadcast on the wire
it will then start sending them at a frequency set by the parameter
'lm interval'.
See also "lm interval".
.B Default:
lm announce = auto
.B Example:
lm announce = true
If Samba is set to produce Lanman announce broadcasts needed
by OS/2 clients (see the "lm announce" parameter) this parameter
defines the frequency in seconds with which they will be made.
If this is set to zero then no Lanman announcements will be
made despite the setting of the "lm announce" parameter.
See also "lm announce".
.B Default:
lm interval = 60
.B Example:
lm interval = 120
.B Default:
load printers = yes
.B Example:
load printers = no
.B Default:
local master = yes
.B Default:
lock directory = /tmp/samba
.B Example:
lock directory = /usr/local/samba/var/locks
If "locking = no", all lock and unlock requests will appear to succeed and
all lock queries will indicate that the queried lock is clear.
If "locking = yes", real locking will be performed by the server.
This option may be particularly useful for read-only filesystems which
do not need locking (such as cdrom drives).
Be careful about disabling locking either globally or in a specific
service, as lack of locking may result in data corruption.
.B Default:
locking = yes
.B Example:
locking = no
This options allows you to override the name of the Samba log file
(also known as the debug file).
This option takes the standard substitutions, allowing you to have
separate log files for each user or machine.
.B Example:
log file = /usr/local/samba/var/log.%m
This parameter specifies the local path to which the home directory
will be connected (see "logon home") and is only used by NT Workstations.
.B Example:
logon drive = h:
This parameter specifies the home directory location when a Win95 or
NT Workstation logs into a Samba PDC. It allows you to do "NET USE
H: /HOME" from a command prompt, for example.
.B
This option takes the standard substitutions, allowing you to have
separate logon scripts for each user or machine.
.B Example:
logon home = "\\\\remote_smb_server\\%U"
.B Default:
logon home = "\\\\%N\\%U"
This parameter specifies the home directory where roaming profiles
(USER.DAT / USER.MAN files for Windows 95) are stored.
This option takes the standard substitutions, allowing you to have
separate logon scripts for each user or machine. It also specifies
the directory from which the "desktop", "start menu", "nethood" and
"programs" folders, and their contents, are loaded and displayed
on your Windows 95 client.
The share and the path must be readable by the user for the preferences
and directories to be loaded onto the Windows 95 client. The share
must be writeable when the logs in for the first time, in order that
the Windows 95 client can create the user.dat and other directories.
Thereafter, the directories and any of contents can, if required,
be made read-only. It is not adviseable that the USER.DAT file be made
read-only - rename it to USER.MAN to achieve the desired effect
(a MANdatory profile).
Windows clients can sometimes maintain a connection to the [homes]
share, even though there is no user logged in. Therefore, it is
vital that the logon path does not include a reference to the
homes share (i.e \\\\%N\\HOMES\profile_path will cause problems).
.B
This option takes the standard substitutions, allowing you to have
separate logon scripts for each user or machine.
.B Default:
logon path = \\\\%N\\%U\\profile
.B Example:
logon path = \\\\PROFILESERVER\\HOME_DIR\\%U\\PROFILE
This parameter specifies the batch file (.bat) or NT command file (.cmd)
to be downloaded and run on a machine when a user successfully logs in.
The file must contain the DOS style cr/lf line endings. Using a DOS-style
editor to create the file is recommended.
The script must be a relative path to the [netlogon] service. If the
[netlogon] service specifies a path of /usr/local/samba/netlogon, and
logon script = STARTUP.BAT, then file that will be downloaded is:
.B /usr/local/samba/netlogon/STARTUP.BAT
The contents of the batch file is entirely your choice. A suggested
command would be to add NET TIME \\\\SERVER /SET /YES, to force every
machine to synchronise clocks with the same time server. Another use
would be to add NET USE U: \\\\SERVER\\UTILS for commonly used utilities,
or NET USE Q: \\\\SERVER\\ISO9001_QA.
Note that it is particularly important not to allow write access to
the [netlogon] share, or to grant users write permission on the
batch files in a secure environment, as this would allow the batch
files to be arbitrarily modified.
.B
This option takes the standard substitutions, allowing you to have
separate logon scripts for each user or machine.
.B Example:
logon script = scripts/%U.bat
This command should be a program or script which takes a printer name and
job number to pause the print job. Currently I don't know of any print
spooler system that can do this with a simple option, except for the PPR
system from Trinity College (ppr\-dist.trincoll.edu/pub/ppr). One way
of implementing this is by using job priorities, where jobs having a too
low priority won't be sent to the printer. See also the
.B lppause
command.
If a %p is given then the printername is put in its place. A %j is
replaced with the job number (an integer).
On HPUX (see printing=hpux), if the -p%p option is added to the lpq
command, the job will show up with the correct status, i.e. if the job
priority is lower than the set fence priority it will have the PAUSED
status, whereas if the priority is equal or higher it will have the
SPOOLED or PRINTING status.
Note that it is good practice to include the absolute path in the lppause
command as the PATH may not be available to the server.
.B Default:
Currently no default value is given to this string
.B Example for HPUX:
lppause command = /usr/bin/lpalt %p-%j -p0
This controls how long lpq info will be cached for to prevent the lpq
command being called too often. A separate cache is kept for each
variation of the lpq command used by the system, so if you use
different lpq commands for different users then they won't share cache
information.
The cache files are stored in /tmp/lpq.xxxx where xxxx is a hash
of the lpq command in use.
The default is 10 seconds, meaning that the cached results of a
previous identical lpq command will be used if the cached data is less
than 10 seconds old. A large value may be advisable if your lpq
command is very slow.
A value of 0 will disable cacheing completely.
.B Default:
lpq cache time = 10
.B Example:
lpq cache time = 30
This command should be a program or script which takes a printer name
as its only parameter and outputs printer status information.
Currently six styles of printer status information are supported; BSD,
SYSV, AIX, HPUX, QNX, LPRNG and PLP. This covers most UNIX systems. You
control which type is expected using the "printing =" option.
Some clients (notably Windows for Workgroups) may not correctly send the
connection number for the printer they are requesting status information
about. To get around this, the server reports on the first printer service
connected to by the client. This only happens if the connection number sent
is invalid.
If a %p is given then the printername is put in its place. Otherwise
it is placed at the end of the command.
Note that it is good practice to include the absolute path in the lpq
command as the PATH may not be available to the server.
.B Default:
depends on the setting of "printing ="
.B Example:
lpq command = /usr/bin/lpq %p
This command should be a program or script which takes a printer name and
job number to resume the print job. See also the lppause command.
If a %p is given then the printername is put in its place. A %j is
replaced with the job number (an integer).
Note that it is good practice to include the absolute path in the lpresume
command as the PATH may not be available to the server.
.B Default:
Currently no default value is given to this string
.B Example for HPUX:
lpresume command = /usr/bin/lpalt %p-%j -p2
This command should be a program or script which takes a printer name
and job number, and deletes the print job.
Currently seven styles of printer control are supported; BSD, SYSV, AIX
HPUX, QNX, LPRNG and PLP. This covers most UNIX systems. You control
which type is expected using the "printing =" option.
If a %p is given then the printername is put in its place. A %j is
replaced with the job number (an integer).
Note that it is good practice to include the absolute path in the lprm
command as the PATH may not be available to the server.
.B Default:
depends on the setting of "printing ="
.B Example 1:
lprm command = /usr/bin/lprm -P%p %j
.B Example 2:
lprm command = /usr/bin/cancel %p-%j
Warning: If two clients use the same magic script in the same directory the
output file content is undefined.
.B Default:
magic output =
.B Example:
magic output = myfile.txt
Scripts executed in this way will be deleted upon completion, permissions
permitting.
If the script generates output, output will be sent to the file specified by
the
.I magic output
parameter (see above).
Note that some shells are unable to interpret scripts containing
carriage-return-linefeed instead of linefeed as the end-of-line
marker. Magic scripts must be executable "as is" on the host, which
for some hosts and some shells will require filtering at the DOS end.
Magic scripts are EXPERIMENTAL and should NOT be relied upon.
.B Default:
None. Magic scripts disabled.
.B Example:
magic script = user.csh
See the section on "NAME MANGLING"
So to map 'html' to 'htm' you put:
mangled map = (*.html *.htm)
One very useful case is to remove the annoying ;1 off the ends of
filenames on some CDROMS (only visible under some UNIXes). To do this
use a map of (*;1 *)
.B default:
no mangled map
.B Example:
mangled map = (*;1 *)
See the section on "NAME MANGLING" for details on how to control the
mangling process.
If mangling is used then the mangling algorithm is as follows:
.RS
- the first (up to) five alphanumeric characters before the rightmost dot of
the filename are preserved, forced to upper case, and appear as the first (up
to) five characters of the mangled name.
- a tilde ("~") is appended to the first part of the mangled name, followed
by a two-character unique sequence, based on the original root name
(i.e., the original filename minus its final extension). The final
extension is included in the hash calculation only if it contains any upper
case characters or is longer than three characters.
Note that the character to use may be specified using the "mangling
char" option, if you don't like ~.
- the first three alphanumeric characters of the final extension are preserved,
forced to upper case and appear as the extension of the mangled name. The
final extension is defined as that part of the original filename after the
rightmost dot. If there are no dots in the filename, the mangled name will
have no extension (except in the case of hidden files - see below).
- files whose UNIX name begins with a dot will be presented as DOS hidden
files. The mangled name will be created as for other filenames, but with the
leading dot removed and "___" as its extension regardless of actual original
extension (that's three underscores).
.RE
The two-digit hash value consists of upper case alphanumeric characters.
This algorithm can cause name collisions only if files in a directory share
the same first five alphanumeric characters. The probability of such a clash
is 1/1300.
The name mangling (if enabled) allows a file to be copied between UNIX
directories from DOS while retaining the long UNIX filename. UNIX files can
be renamed to a new extension from DOS and will retain the same basename.
Mangled names do not change between sessions.
.B Default:
mangled names = yes
.B Example:
mangled names = no
.B Default:
mangling char = ~
.B Example:
mangling char = ^
This stack is a list of recently mangled base names (extensions are only
maintained if they are longer than 3 characters or contains upper case
characters).
The larger this value, the more likely it is that mangled names can be
successfully converted to correct long UNIX names. However, large stack
sizes will slow most directory access. Smaller stacks save memory in the
server (each stack element costs 256 bytes).
It is not possible to absolutely guarantee correct long file names, so
be prepared for some surprises!
.B Default:
mangled stack = 50
.B Example:
mangled stack = 100
Note that this requires the 'create mask' to be set such that owner
execute bit is not masked out (ie. it must include 100). See the
parameter "create mask" for details.
.B Default:
map archive = yes
.B Example:
map archive = no
Note that this requires the 'create mask' to be set such that the world
execute bit is not masked out (ie. it must include 001).
See the parameter "create mask" for details.
.B Default:
map hidden = no
.B Example:
map hidden = yes
Note that this requires the 'create mask' to be set such that the group
execute bit is not masked out (ie. it must include 010). See the parameter
"create mask" for details.
.B Default:
map system = no
.B Example:
map system = yes
Record lock files are used to implement this feature. The lock files
will be stored in the directory specified by the "lock directory" option.
.B Default:
max connections = 0
.B Example:
max connections = 10
Note that this option does not limit the amount of data you can put on
the disk. In the above case you could still store much more than 100
MB on the disk, but if a client ever asks for the amount of free disk
space or the total disk size then the result will be bounded by the
amount specified in "max disk size".
This option is primarily useful to work around bugs in some pieces of
software that can't handle very large disks, particularly disks over
1GB in size.
A "max disk size" of 0 means no limit.
.B Default:
max disk size = 0
.B Example:
max disk size = 1000
This option (an integer in kilobytes) specifies the max size the log
file should grow to. Samba periodically checks the size and if it is
exceeded it will rename the file, adding a .old extension.
A size of 0 means no limit.
.B Default:
max log size = 5000
.B Example:
max log size = 1000
This option controls the maximum number of outstanding simultaneous SMB
operations that samba tells the client it will allow. You should never need
to set this parameter.
.B Default:
max mux = 50
A synonym for this parameter is 'packet size'.
This option tells nmbd what the default 'time to live' of NetBIOS
names should be (in seconds) when nmbd is requesting a name using
either a broadcast or from a WINS server. You should never need to
change this parameter.
.B Default:
max ttl = 14400
This option tells nmbd when acting as a WINS server (wins support = true)
what the maximum 'time to live' of NetBIOS names that nmbd will grant will
be (in seconds). You should never need to change this parameter.
The default is 3 days (259200 seconds).
.B Default:
max wins ttl = 259200
This option controls the maximum packet size that will be negotiated
by Samba. The default is 65535, which is the maximum. In some cases
you may find you get better performance with a smaller value. A value
below 2048 is likely to cause problems.
.B Default:
max xmit = 65535
.B Example:
max xmit = 8192
This specifies what command to run when the server receives a WinPopup
style message.
This would normally be a command that would deliver the message
somehow. How this is to be done is up to your imagination.
What I use is:
message command = csh -c 'xedit %s;rm %s' &
This delivers the message using xedit, then removes it
afterwards. NOTE THAT IT IS VERY IMPORTANT THAT THIS COMMAND RETURN
IMMEDIATELY. That's why I have the & on the end. If it doesn't return
immediately then your PCs may freeze when sending messages (they
should recover after 30secs, hopefully).
All messages are delivered as the global guest user. The command takes
the standard substitutions, although %u won't work (%U may be better
in this case).
Apart from the standard substitutions, some additional ones apply. In
particular:
%s = the filename containing the message
%t = the destination that the message was sent to (probably the server
name)
%f = who the message is from
You could make this command send mail, or whatever else takes your
fancy. Please let me know of any really interesting ideas you have.
Here's a way of sending the messages as mail to root:
message command = /bin/mail -s 'message from %f on %m' root < %s; rm %s
If you don't have a message command then the message won't be
delivered and Samba will tell the sender there was an
error. Unfortunately WfWg totally ignores the error code and carries
on regardless, saying that the message was delivered.
If you want to silently delete it then try "message command = rm %s".
For the really adventurous, try something like this:
message command = csh -c 'csh < %s |& /usr/local/samba/bin/smbclient \e
-M %m; rm %s' &
this would execute the command as a script on the server, then give
them the result in a WinPopup message. Note that this could cause a
loop if you send a message from the server using smbclient! You better
wrap the above in a script that checks for this :-)
.B Default:
no message command
.B Example:
message command = csh -c 'xedit %s;rm %s' &
This sets the minimum amount of free disk space that must be available
before a user will be able to spool a print job. It is specified in
kilobytes. The default is 0, which means no limit.
.B Default:
min print space = 0
.B Example:
min print space = 2000
This option tells nmbd when acting as a WINS server (wins support = true)
what the minimum 'time to live' of NetBIOS names that nmbd will grant will
be (in seconds). You should never need to change this parameter.
The default is 6 hours (21600 seconds).
.B Default:
min wins ttl = 21600
This is a list of names that nmbd will advertise as additional
names by which the Samba server is known. This allows one machine
to appear in browse lists under multiple names. If a machine is
acting as a browse server or logon server none of these names
will be advertised as either browse server or logon servers, only
the primary name of the machine will be advertised with these
capabilities.
See also 'netbios name'.
.B Example:
netbios aliases = TEST TEST1 TEST2
This sets the NetBIOS name by which a Samba server is known. By
default it is the same as the first component of the host's DNS name.
If a machine is a browse server or logon server this name (or the
first component of the hosts DNS name) will be the name that these
services are advertised under.
See also 'netbios aliases'.
.B Example:
netbios name = MYNAME
.B Default:
nis homedir = false
.B Example:
nis homedir = true
.B Default:
networkstation user login = yes
.B Example:
networkstation user login = no
.B Default:
null passwords = no
.B Example:
null passwords = yes
Note that this also means Samba won't try to deduce usernames from the
service name. This can be annoying for the [homes] section. To get
around this you could use "user = %S" which means your "user" list
will be just the service name, which for home directories is the name
of the user.
.B Default:
only user = False
.B Example:
only user = True
Oplocks may be selectively turned off on certain files on a per share basis.
See the 'veto oplock files' parameter.
.B Default:
oplocks = True
.B Example:
oplocks = False
This chat sequence is often quite site specific, depending on what
local methods are used for password control (such as NIS+ etc).
The string can contain the macros %o and %n which are substituted for
the old and new passwords respectively. It can also contain the
standard macros \en \er \et and \es to give line-feed, carriage-return,
tab and space.
The string can also contain a * which matches any sequence of
characters.
Double quotes can be used to collect strings with spaces in them into
a single string.
If the send string in any part of the chat sequence is a fullstop "."
then no string is sent. Similarly, is the expect string is a fullstop
then no string is expected.
.B Example:
passwd chat = "*Enter OLD password*" %o\en "*Enter NEW password*" %n\en \e
"*Reenter NEW password*" %n\en "*Password changed*"
.B Default:
passwd chat = *old*password* %o\en *new*password* %n\en *new*password* %n\en *changed*
This is only necessary if you have enabled remote password changing at
compile time. Any occurrences of %u will be replaced with the user
name.
Also note that many passwd programs insist in "reasonable" passwords,
such as a minimum length, or the inclusion of mixed case chars and
digits. This can pose a problem as some clients (such as Windows for
Workgroups) uppercase the password before sending it.
.B Default:
passwd program = /bin/passwd
.B Example:
passwd program = /sbin/passwd %u
This parameter defines the maximum number of characters that may be upper case
in passwords.
For example, say the password given was "FRED". If
.B password level
is set to 1 (one), the following combinations would be tried if "FRED" failed:
"Fred", "fred", "fRed", "frEd", "freD". If
.B password level was set to 2 (two), the following combinations would also be
tried: "FRed", "FrEd", "FreD", "fREd", "fReD", "frED". And so on.
The higher value this parameter is set to the more likely it is that a mixed
case password will be matched against a single case password. However, you
should be aware that use of this parameter reduces security and increases the
time taken to process a new connection.
A value of zero will cause only two attempts to be made - the password as is
and the password in all-lower case.
If you find the connections are taking too long with this option then
you probably have a slow crypt() routine. Samba now comes with a fast
"ufc crypt" that you can select in the Makefile. You should also make
sure the PASSWORD_LENGTH option is correct for your system in local.h
and includes.h. On most systems only the first 8 chars of a password
are significant so PASSWORD_LENGTH should be 8, but on some longer
passwords are significant. The includes.h file tries to select the
right length for your system.
.B Default:
password level = 0
.B Example:
password level = 4
By specifying the name of another SMB server (such as a WinNT box)
with this option, and using "security = server" you can get Samba to
do all its username/password validation via a remote server.
This options sets the name of the password server to use. It must be a
netbios name, so if the machine's netbios name is different from its
internet name then you may have to add its netbios name to
/etc/hosts.
The password server much be a machine capable of using the "LM1.2X002"
or the "LM NT 0.12" protocol, and it must be in user level security
mode.
NOTE: Using a password server means your UNIX box (running Samba) is
only as secure as your password server. DO NOT CHOOSE A PASSWORD
SERVER THAT YOU DON'T COMPLETELY TRUST.
Never point a Samba server at itself for password serving. This will
cause a loop and could lock up your Samba server!
The name of the password server takes the standard substitutions, but
probably the only useful one is %m, which means the Samba server will
use the incoming client as the password server. If you use this then
you better trust your clients, and you better restrict them with hosts
allow!
If you list several hosts in the "password server" option then smbd
will try each in turn till it finds one that responds. This is useful
in case your primary server goes down.
If you are using a WindowsNT server as your password server then you
will have to ensure that your users are able to login from the Samba
server, as the network logon will appear to come from there rather
than from the users workstation.
This parameter specifies a directory to which the user of the service is to
be given access. In the case of printable services, this is where print data
will spool prior to being submitted to the host for printing.
For a printable service offering guest access, the service should be readonly
and the path should be world-writable and have the sticky bit set. This is not
mandatory of course, but you probably won't get the results you expect if you
do otherwise.
Any occurrences of %u in the path will be replaced with the username
that the client is connecting as. Any occurrences of %m will be
replaced by the name of the machine they are connecting from. These
replacements are very useful for setting up pseudo home directories
for users.
Note that this path will be based on 'root dir' if one was specified.
.B Default:
none
.B Example:
path = /home/fred+
This option specifies a command to be run whenever the service is
disconnected. It takes the usual substitutions. The command may be run
as the root on some systems.
An interesting example may be do unmount server resources:
postexec = /etc/umount /cdrom
See also preexec
.B Default:
none (no command executed)
.B Example:
postexec = echo \e"%u disconnected from %S from %m (%I)\e" >> /tmp/log
This is most useful when you have lots of PCs that persist in putting
a control-D at the start of print jobs, which then confuses your
printer.
.B Default:
postscript = False
.B Example:
postscript = True
This option specifies a command to be run whenever the service is
connected to. It takes the usual substitutions.
An interesting example is to send the users a welcome message every
time they log in. Maybe a message of the day? Here is an example:
preexec = csh -c 'echo \e"Welcome to %S!\e" | \e
/usr/local/samba/bin/smbclient -M %m -I %I' &
Of course, this could get annoying after a while :-)
See also postexec
.B Default:
none (no command executed)
.B Example:
preexec = echo \e"%u connected to %S from %m (%I)\e" >> /tmp/log
Use this option with caution, because if there are several hosts
(whether samba servers, Windows 95 or NT) that are preferred master
browsers on the same subnet, they will each periodically and continuously
attempt to become the local master browser. This will result in
unnecessary broadcast traffic and reduced browsing capabilities.
See
.B os level = nn
.B Default:
preferred master = no
This controls if new filenames are created with the case that the
client passes, or if they are forced to be the "default" case.
.B Default:
preserve case = no
See the section on "NAME MANGLING" for a fuller discussion.
The print command is simply a text string. It will be used verbatim,
with two exceptions: All occurrences of "%s" will be replaced by the
appropriate spool file name, and all occurrences of "%p" will be
replaced by the appropriate printer name. The spool file name is
generated automatically by the server, the printer name is discussed
below.
The full path name will be used for the filename if %s is not preceded
by a /. If you don't like this (it can stuff up some lpq output) then
use %f instead. Any occurrences of %f get replaced by the spool
filename without the full path at the front.
The print command MUST contain at least one occurrence of "%s" or %f -
the "%p" is optional. At the time a job is submitted, if no printer
name is supplied the "%p" will be silently removed from the printer
command.
If specified in the [global] section, the print command given will be used
for any printable service that does not have its own print command specified.
If there is neither a specified print command for a printable service nor a
global print command, spool files will be created but not processed and (most
importantly) not removed.
Note that printing may fail on some UNIXes from the "nobody"
account. If this happens then create an alternative guest account that
can print and set the "guest account" in the [global] section.
You can form quite complex print commands by realising that they are
just passed to a shell. For example the following will log a print
job, print the file, then remove it. Note that ; is the usual
separator for command in shell scripts.
print command = echo Printing %s >> /tmp/print.log; lpr -P %p %s; rm %s
You may have to vary this command considerably depending on how you
normally print files on your system.
.B Default:
print command = lpr -r -P %p %s
.B Example:
print command = /usr/local/samba/bin/myprintscript %p %s
If this parameter is 'yes', then clients may open, write to and submit spool
files on the directory specified for the service.
Note that a printable service will ALWAYS allow writing to the service path
(user privileges permitting) via the spooling of print data. The 'read only'
parameter controls only non-printing access to the resource.
.B Default:
printable = no
.B Example:
printable = yes
On SystemV systems that use lpstat to list available printers you
can use "printcap name = lpstat" to automatically obtain lists of
available printers. This is the default for systems that define
SYSV at compile time in Samba (this includes most SystemV based
systems). If "printcap name" is set to lpstat on these systems then
Samba will launch "lpstat -v" and attempt to parse the output to
obtain a printer list.
A minimal printcap file would look something like this:
print1|My Printer 1
.br
print2|My Printer 2
.br
print3|My Printer 3
.br
print4|My Printer 4
.br
print5|My Printer 5
where the | separates aliases of a printer. The fact that the second
alias has a space in it gives a hint to Samba that it's a comment.
NOTE: Under AIX the default printcap name is "/etc/qconfig". Samba
will assume the file is in AIX "qconfig" format if the string
"/qconfig" appears in the printcap filename.
.B Default:
printcap name = /etc/printcap
.B Example:
printcap name = /etc/myprintcap
This parameter specifies the name of the printer to which print jobs spooled
through a printable service will be sent.
If specified in the [global] section, the printer name given will be used
for any printable service that does not have its own printer name specified.
.B Default:
none (but may be 'lp' on many systems)
.B Example:
printer name = laserwriter
You need to set this parameter to the exact string (case sensitive)
that describes the appropriate printer driver for your system.
If you don't know the exact string to use then you should first try
with no "printer driver" option set and the client will give you a
list of printer drivers. The appropriate strings are shown in a
scrollbox after you have chosen the printer manufacturer.
.B Example:
printer driver = HP LaserJet 4L
SAMBA_INSTALL_DIRECTORY/lib/printers.def
This file is created from Windows 95 'msprint.def' files found on the
Windows 95 client system. For more details on setting up serving of
printer drivers to Windows 95 clients, see the documentation file
docs/PRINTER_DRIVER.txt.
.B Default:
None (set in compile).
.B Example:
printer driver file = /usr/local/samba/printers/drivers.def
Related parameters.
.B printer driver location
\e\eMACHINE\ePRINTER$
Where MACHINE is the NetBIOS name of your Samba server, and PRINTER$
is a share you set up for serving printer driver files. For more
details on setting this up see the documentation file
docs/PRINTER_DRIVER.txt.
.B Default:
None
.B Example:
printer driver location = \e\eMACHINE\ePRINTER$
Related paramerers.
.B printer driver fileannounce as (G)
announce version (G)
auto services (G)
This is a list of services that you want to be automatically added to
the browse lists. This is most useful for homes and printers services
that would otherwise not be visible.allow hosts (S)
A synonym for this parameter is 'hosts allow'.alternate permissions (S)
available (S)
This parameter lets you 'turn off' a service. If 'available = no', then
ALL attempts to connect to the service will fail. Such failures are logged.bind interfaces only (G)
This global parameter (new for 1.9.18) allows the Samba admin to limit
what interfaces on a machine will serve smb requests. If affects file service
(smbd) and name service (nmbd) in slightly different ways.browseable (S)
This controls whether this share is seen in the list of available
shares in a net view and in the browse list.browse list(G)
This controls whether the smbd will serve a browse list to a client
doing a NetServerEnum call. Normally set to true. You should never
need to change this.case sensitive (G)
See the discussion on NAME MANGLING.case sig names (G)
See "case sensitive"character set (G)
This allows a smbd to map incoming characters from a DOS 850 Code page
to either a Western European (ISO8859-1) or Easter European (ISO8859-2)
code page. Normally not set, meaning no filename translation is done.client code page (G)
Currently (Samba 1.9.17 and above) this may be set to one of two
values, 850 or 437. It specifies the base DOS code page that the
clients accessing Samba are using. To determine this, open a DOS
command prompt and type the command "chcp". This will output the
code page. The default for USA MS-DOS, Windows 95, and Windows NT
releases is code page 437. The default for western european
releases of the above operating systems is code page 850.comment (S)
This is a text field that is seen next to a share when a client does a
net view to list what shares are available.config file (G)
copy (S)
This parameter allows you to 'clone' service entries. The specified
service is simply duplicated under the current service's name. Any
parameters specified in the current section will override those in the
section being copied.create mask (S)
A synonym for this parameter is 'create mode'.create mode (S)
See
.B create mask.dead time (G)
The value of the parameter (a decimal integer) represents the number of
minutes of inactivity before a connection is considered dead, and it
is disconnected. The deadtime only takes effect if the number of open files
is zero.debug level (G)
The value of the parameter (an integer) allows the debug level
(logging level) to be specified in the
.B smb.conf
file. This is to give
greater flexibility in the configuration of the system.default (G)
See
.B default service.
default case (S)
default service (G)
A synonym for this parameter is 'default'.delete readonly (S)
This parameter allows readonly files to be deleted. This is not normal DOS
semantics, but is allowed by UNIX.deny hosts (S)
A synonym for this parameter is 'hosts deny'.delete veto files (S)
dfree command (G)
The dfree command setting should only be used on systems where a
problem occurs with the internal disk space calculations. This has
been known to happen with Ultrix, but may occur with other operating
systems. The symptom that was seen was an error of "Abort Retry
Ignore" at the end of each directory listing.directory (S)
See
.B path.directory mask (S)
A synonym for this parameter is 'directory mode'.directory mode (S)
See
.B directory mask.dns proxy (G)
domain controller (G)
domain logons (G)
domain master (G)
dont descend (S)
There are certain directories on some systems (eg., the /proc tree under
Linux) that are either not of interest to clients or are infinitely deep
(recursive). This parameter allows you to specify a comma-delimited list
of directories that the server should always show as empty.dos filetimes (S)
Under DOS and Windows, if a user can write to a file they can change
the timestamp on it. Under POSIX semantics, only the owner of the file
or root may change the timestamp. By default, Samba runs with POSIX
semantics and refuses to change the timestamp on a file if the user
smbd is acting on behalf of is not the file owner. Setting this option
to True allows DOS semantics and smbd will change the file timstamp as
DOS requires. This is a correct implementation of a previous compile-time
options (UTIME_WORKAROUND) which was broken and is now removed.dos filetime resolution (S)
Under the DOS and Windows FAT filesystem, the finest granulatity on
time resolution is two seconds. Setting this parameter for a share
causes Samba to round the reported time down to the nearest two
second boundary when a query call that requires one second resolution
is made to smbd. encrypt passwords (G)
exec (S)
fake oplocks (S)
follow symlinks (S)
force create mode (S)
This parameter specifies a set of UNIX mode bit permissions that
will *always* be set on a file created by Samba. This is done
by bitwise 'OR'ing these bits onto the mode bits of a file that
is being created. The default for this parameter is (in octel)
000. The modes in this parameter are bitwise 'OR'ed onto the
file mode after the mask set in the "create mask" parameter
is applied.force directory mode (S)
This parameter specifies a set of UNIX mode bit permissions that
will *always* be set on a directory created by Samba. This is done
by bitwise 'OR'ing these bits onto the mode bits of a directory that
is being created. The default for this parameter is (in octel)
0000 which will not add any extra permission bits to a created
directory. This operation is done after the mode mask in the parameter
"directory mask" is applied.force group (S)
This specifies a group name that all connections to this service
should be made as. This may be useful for sharing files.force user (S)
This specifies a user name that all connections to this service
should be made as. This may be useful for sharing files. You should
also use it carefully as using it incorrectly can cause security
problems.getwd cache (G)
This is a tuning option. When this is enabled a cacheing algorithm will
be used to reduce the time taken for getwd() calls. This can have a
significant impact on performance, especially when widelinks is False.group (S)
This is an alias for "force group" and is only kept for compatibility
with old versions of Samba. It may be removed in future versions.guest account (S)
This is a username which will be used for access to services which are
specified as 'guest ok' (see below). Whatever privileges this user has
will be available to any client connecting to the guest
service. Typically this user will exist in the password file, but will
not have a valid login. If a username is specified in a given service,
the specified username overrides this one.guest ok (S)
See
.B public.
guest only (S)
If this parameter is 'yes' for a service, then only guest connections to the
service are permitted. This parameter will have no affect if "guest ok" or
"public" is not set for the service.hide dot files (S)
This is a boolean parameter that controls whether files starting with
a dot appear as hidden files.hide files(S)
This is a list of files or directories that are not visible but are
accessible. The DOS 'hidden' attribute is applied to any files or
directories that match.homedir map (G)
If "nis homedir" is true, this parameter specifies the NIS (or YP) map
from which the server for the user's home directory should be extracted.
At present, only the Sun auto.home map format is understood. The form of
the map is:hosts allow (S)
See
.B allow hosts.
hosts deny (S)
See
.B deny hosts.hosts equiv (G)
If this global parameter is a non-null string, it specifies the name of
a file to read for the names of hosts and users who will be allowed access
without specifying a password.include (G)
interfaces (G)
invalid users (S)
This is a list of users that should not be allowed to login to this
service. This is really a "paranoid" check to absolutely ensure an
improper setting does not breach your security.keepalive (G)
The value of the parameter (an integer) represents the number of seconds
between 'keepalive' packets. If this parameter is zero, no keepalive packets
will be sent. Keepalive packets, if sent, allow the server to tell whether a
client is still present and responding.lm announce (G)
lm interval (G)
load printers (G)
A boolean variable that controls whether all printers in the printcap
will be loaded for browsing by default. local master (G)
This option allows the nmbd to become a local master browser on a
subnet. If set to False then nmbd will not attempt to become a local
master browser on a subnet and will also lose in all browsing elections.
By default this value is set to true. Setting this value to true doesn't
mean that Samba will become the local master browser on a subnet, just
that the nmbd will participate in elections for local master browser.lock directory (G)
This option specifies the directory where lock files will be placed.
The lock files are used to implement the "max connections" option.locking (S)
This controls whether or not locking will be performed by the server in
response to lock requests from the client.log file (G)
log level (G)
see "debug level"logon drive (G)
logon home (G)
logon path (G)
logon script (G)
lppause command (S)
This parameter specifies the command to be executed on the server host in
order to stop printing or spooling a specific print job.lpq cache time (G)
lpq command (S)
This parameter specifies the command to be executed on the server host in
order to obtain "lpq"-style printer status information. lpresume command (S)
This parameter specifies the command to be executed on the server host in
order to restart or continue printing or spooling a specific print job.lprm command (S)
This parameter specifies the command to be executed on the server host in
order to delete a print job.magic output (S)
This parameter specifies the name of a file which will contain output
created by a magic script (see
.I magic script
below).magic script (S)
This parameter specifies the name of a file which, if opened, will be
executed by the server when the file is closed. This allows a UNIX script
to be sent to the Samba host and executed on behalf of the connected user.mangle case (S)
mangled map (S)
This is for those who want to directly map UNIX file names which are
not representable on DOS. The mangling of names is not always what is
needed. In particular you may have documents with file extensions
that differ between DOS and UNIX. For example, under UNIX it is common
to use .html for HTML files, whereas under DOS .htm is more commonly
used.mangled names (S)
This controls whether non-DOS names under UNIX should be mapped to
DOS-compatible names ("mangled") and made visible, or whether non-DOS names
should simply be ignored.mangling char (S)
This controls what character is used as the "magic" character in name
mangling. The default is a ~ but this may interfere with some
software. Use this option to set it to whatever you prefer.mangled stack (G)
This parameter controls the number of mangled names that should be cached in
the Samba server.map archive (S)
This controls whether the DOS archive attribute should be mapped to the
UNIX owner execute bit. The DOS archive bit is set when a file has been modified
since its last backup. One motivation for this option it to keep Samba/your
PC from making any file it touches from becoming executable under UNIX.
This can be quite annoying for shared source code, documents, etc...map hidden (S)
This controls whether DOS style hidden files should be mapped to the
UNIX world execute bit.map system (S)
This controls whether DOS style system files should be mapped to the
UNIX group execute bit.max connections (S)
This option allows the number of simultaneous connections to a
service to be limited. If "max connections" is greater than 0 then
connections will be refused if this number of connections to the
service are already open. A value of zero mean an unlimited number of
connections may be made.max disk size (G)
This option allows you to put an upper limit on the apparent size of
disks. If you set this option to 100 then all shares will appear to be
not larger than 100 MB in size.max log size (G)
max mux (G)
max packet (G)
max ttl (G)
max wins ttl (G)
max xmit (G)
message command (G)
min print space (S)
min wins ttl (G)
netbios aliases (G)
netbios name (G)
nis homedir (G)
Get the home share server from a NIS (or YP) map. For unix systems that
use an automounter, the user's home directory will often be mounted on
a workstation on demand from a remote server. When the Samba logon server
is not the actual home directory server, two network hops are required
to access the home directory and this can be very slow especially with
writing via Samba to an NFS mounted directory. This option allows samba
to return the home share as being on a different server to the logon
server and as long as a samba daemon is running on the home directory
server, it will be mounted on the Samba client directly from the directory
server. When Samba is returning the home share to the client, it will
consult the NIS (or YP) map specified in "homedir map" and return the
server listed there.networkstation user login (G)
This global parameter (new for 1.9.18p3) affects server level security.
With this set (recommended) samba will do a full NetWkstaUserLogon to
confirm that the client really should have login rights. This can cause
problems with machines in trust relationships in which case you can
disable it here, but be warned, we have heard that some NT machines
will then allow anyone in with any password! Make sure you test it.null passwords (G)
Allow or disallow access to accounts that have null passwords. only guest (S)
A synonym for this command is 'guest only'.only user (S)
This is a boolean option that controls whether connections with
usernames not in the user= list will be allowed. By default this
option is disabled so a client can supply a username to be used by
the server.oplocks (S)
This boolean option tells smbd whether to issue oplocks (opportunistic
locks) to file open requests on this share. The oplock code was introduced in
Samba 1.9.18 and can dramatically (approx 30% or more) improve the speed
of access to files on Samba servers. It allows the clients to agressively
cache files locally and you may want to disable this option for unreliable
network environments (it is turned on by default in Windows NT Servers).
For more information see the file Speed.txt in the Samba docs/ directory.os level (G)
This integer value controls what level Samba advertises itself as for
browse elections. See BROWSING.txt for details.packet size (G)
The maximum transmit packet size during a raw read. This option is no
longer implemented as of version 1.7.00, and is kept only so old
configuration files do not become invalid.passwd chat (G)
This string controls the "chat" conversation that takes places
between smbd and the local password changing program to change the
users password. The string describes a sequence of response-receive
pairs that smbd uses to determine what to send to the passwd program
and what to expect back. If the expected output is not received then
the password is not changed.passwd program (G)
The name of a program that can be used to set user passwords.password level (G)
Some client/server combinations have difficulty with mixed-case passwords.
One offending client is Windows for Workgroups, which for some reason forces
passwords to upper case when using the LANMAN1 protocol, but leaves them alone
when using COREPLUS!password server (G)
path (S)
A synonym for this parameter is 'directory'.postexec (S)
postscript (S)
This parameter forces a printer to interpret the print files as
postscript. This is done by adding a %! to the start of print output. preexec (S)
preferred master (G)
This boolean parameter controls if Samba is a preferred master browser
for its workgroup.
If this is set to true, on startup, samba will force an election,
and it will have a slight advantage in winning the election.
It is recommended that this parameter is used in conjunction
with domain master = yes, so that samba can guarantee becoming
a domain master. preload
This is an alias for "auto services"preload
This is an alias for "auto services"preserve case (S)
print command (S)
After a print job has finished spooling to a service, this command will be
used via a system() call to process the spool file. Typically the command
specified will submit the spool file to the host's printing subsystem, but
there is no requirement that this be the case. The server will not remove the
spool file, so whatever command you specify should remove the spool file when
it has been processed, otherwise you will need to manually remove old spool
files.print ok (S)
See
.B printable.
printable (S)
A synonym for this parameter is 'print ok'.printcap name (G)
This parameter may be used to override the compiled-in default printcap
name used by the server (usually /etc/printcap). See the discussion of the
[printers] section above for reasons why you might want to do this.printer (S)
A synonym for this parameter is 'printer name'.printer driver (S)
This option allows you to control the string that clients receive when
they ask the server for the printer driver associated with a
printer. If you are using Windows95 or WindowsNT then you can use this
to automate the setup of printers on your system.printer name (S)
See
.B printer.printer driver file (G)
This parameter tells Samba where the printer driver definition file,
used when serving drivers to Windows 95 clients, is to be found. If
this is not set, the default is :printer driver location (S)
This parameter tells clients of a particular printer share where
to find the printer driver files for the automatic installation
of drivers for Windows 95 machines. If Samba is set up to serve
printer drivers to Windows 95 machines, this should be set to