7 CONTENT=
"Modular DocBook HTML Stylesheet Version 1.57"></HEAD
27 >smb.conf
--
The configuration file for the Samba suite
</DIV
39 > file is a configuration
40 file for the Samba suite.
<TT
44 runtime configuration information for the Samba programs. The
48 > file is designed to be configured and
49 administered by the
<A
57 > program. The complete description of the file format and
58 possible parameters held within are here for reference purposes.
</P
68 >The file consists of sections and parameters. A section
69 begins with the name of the section in square brackets and continues
70 until the next section begins. Sections contain parameters of the
86 >The file is line-based - that is, each newline-terminated
87 line represents either a comment, a section name or a parameter.
</P
89 >Section and parameter names are not case sensitive.
</P
91 >Only the first equals sign in a parameter is significant.
92 Whitespace before or after the first equals sign is discarded.
93 Leading, trailing and internal whitespace in section and parameter
94 names is irrelevant. Leading and trailing whitespace in a parameter
95 value is discarded. Internal whitespace within a parameter value
96 is retained verbatim.
</P
98 >Any line beginning with a semicolon (';') or a hash ('#')
99 character is ignored, as are lines containing only whitespace.
</P
101 >Any line ending in a '\' is continued
102 on the next line in the customary UNIX fashion.
</P
104 >The values following the equals sign in parameters are all
105 either a string (no quotes needed) or a boolean, which may be given
106 as yes/no,
0/
1 or true/false. Case is not significant in boolean
107 values, but is preserved in string values. Some items such as
108 create modes are numeric.
</P
116 >SECTION DESCRIPTIONS
</H2
118 >Each section in the configuration file (except for the
119 [global] section) describes a shared resource (known
120 as a
"share"). The section name is the name of the
121 shared resource and the parameters within the section define
122 the shares attributes.
</P
124 >There are three special sections, [global],
125 [homes] and [printers], which are
127 >special sections
</EM
129 following notes apply to ordinary section descriptions.
</P
131 >A share consists of a directory to which access is being
132 given plus a description of the access rights which are granted
133 to the user of the service. Some housekeeping options are
136 >Sections are either file share services (used by the
137 client as an extension of their native file systems) or
138 printable services (used by the client to access print services
139 on the host running the server).
</P
141 >Sections may be designated
<EM
144 in which case no password is required to access them. A specified
147 > is used to define access
148 privileges in this case.
</P
150 >Sections other than guest services will require a password
151 to access them. The client provides the username. As older clients
152 only provide passwords and not usernames, you may specify a list
153 of usernames to check against the password using the
"user ="
154 option in the share definition. For modern clients such as
155 Windows
95/
98/ME/NT/
2000, this should not be necessary.
</P
157 >Note that the access rights granted by the server are
158 masked by the access rights granted to the specified or guest
159 UNIX user by the host system. The server does not grant more
160 access than the host system grants.
</P
162 >The following sample section defines a file space share.
163 The user has write access to the path
<TT
167 The share is accessed via the share name
"foo":
</P
177 CLASS=
"COMPUTEROUTPUT"
188 >The following sample section defines a printable share.
189 The share is readonly, but printable. That is, the only write
190 access permitted is via calls to open, write to and close a
194 access will be permitted as the default guest user (specified
205 CLASS=
"COMPUTEROUTPUT"
207 path = /usr/spool/public
224 >SPECIAL SECTIONS
</H2
231 >The [global] section
</H3
233 >parameters in this section apply to the server
234 as a whole, or are defaults for sections which do not
235 specifically define certain items. See the notes
236 under PARAMETERS for more information.
</P
244 >The [homes] section
</H3
246 >If a section called homes is included in the
247 configuration file, services connecting clients to their
248 home directories can be created on the fly by the server.
</P
250 >When the connection request is made, the existing
251 sections are scanned. If a match is found, it is used. If no
252 match is found, the requested section name is treated as a
253 user name and looked up in the local password file. If the
254 name exists and the correct password has been given, a share is
255 created by cloning the [homes] section.
</P
257 >Some modifications are then made to the newly
264 >The share name is changed from homes to
265 the located username.
</P
269 >If no path was given, the path is set to
270 the user's home directory.
</P
274 >If you decide to use a
<EM
277 in your [homes] section then you may find it useful
278 to use the %S macro. For example :
</P
283 >path = /data/pchome/%S
</B
287 >would be useful if you have different home directories
288 for your PCs than for UNIX access.
</P
290 >This is a fast and simple way to give a large number
291 of clients access to their home directories with a minimum
294 >A similar process occurs if the requested section
295 name is
"homes", except that the share name is not
296 changed to that of the requesting user. This method of using
297 the [homes] section works well if different users share
300 >The [homes] section can specify all the parameters
301 a normal service section can specify, though some make more sense
302 than others. The following is a typical and suitable [homes]
313 CLASS=
"COMPUTEROUTPUT"
323 >An important point is that if guest access is specified
324 in the [homes] section, all home directories will be
325 visible to all clients
<EM
326 >without a password
</EM
328 In the very unlikely event that this is actually desirable, it
329 would be wise to also specify
<EM
337 auto home directories will be inherited from the global browseable
338 flag, not the [homes] browseable flag. This is useful as
342 the [homes] section will hide the [homes] share but make
343 any auto home directories visible.
</P
351 >The [printers] section
</H3
353 >This section works like [homes],
356 >If a [printers] section occurs in the
357 configuration file, users are able to connect to any printer
358 specified in the local host's printcap file.
</P
360 >When a connection request is made, the existing sections
361 are scanned. If a match is found, it is used. If no match is found,
362 but a [homes] section exists, it is used as described
363 above. Otherwise, the requested section name is treated as a
364 printer name and the appropriate printcap file is scanned to see
365 if the requested section name is a valid printer share name. If
366 a match is found, a new printer share is created by cloning
367 the [printers] section.
</P
369 >A few modifications are then made to the newly created
376 >The share name is set to the located printer
381 >If no printer name was given, the printer name
382 is set to the located printer name
</P
386 >If the share does not permit guest access and
387 no username was given, the username is set to the located
392 >Note that the [printers] service MUST be
393 printable - if you specify otherwise, the server will refuse
394 to load the configuration file.
</P
396 >Typically the path specified would be that of a
397 world-writeable spool directory with the sticky bit set on
398 it. A typical [printers] entry would look like
409 CLASS=
"COMPUTEROUTPUT"
411 path = /usr/spool/public
420 >All aliases given for a printer in the printcap file
421 are legitimate printer names as far as the server is concerned.
422 If your printing subsystem doesn't work like that, you will have
423 to set up a pseudo-printcap. This is a file consisting of one or
424 more lines like this:
</P
434 CLASS=
"COMPUTEROUTPUT"
435 > alias|alias|alias|alias...
443 >Each alias should be an acceptable printer name for
444 your printing subsystem. In the [global] section, specify
445 the new file as your printcap. The server will then only recognize
446 names found in your pseudo-printcap, which of course can contain
447 whatever aliases you like. The same technique could be used
448 simply to limit access to a subset of your local printers.
</P
450 >An alias, by the way, is defined as any component of the
451 first entry of a printcap record. Records are separated by newlines,
452 components (if there are more than one) are separated by vertical
453 bar symbols ('|').
</P
455 >NOTE: On SYSV systems which use lpstat to determine what
456 printers are defined on the system you may be able to use
457 "printcap name = lpstat" to automatically obtain a list
458 of printers. See the
"printcap name" option
470 >parameters define the specific attributes of sections.
</P
472 >Some parameters are specific to the [global] section
475 >). Some parameters are usable
476 in all sections (e.g.,
<EM
479 are permissible only in normal sections. For the purposes of the
480 following descriptions the [homes] and [printers]
481 sections will be considered normal. The letter
<EM
484 in parentheses indicates that a parameter is specific to the
485 [global] section. The letter
<EM
488 indicates that a parameter can be specified in a service specific
489 section. Note that all
<EM
491 > parameters can also be specified in
492 the [global] section - in which case they will define
493 the default behavior for all services.
</P
495 >parameters are arranged here in alphabetical order - this may
496 not create best bedfellows, but at least you can find them! Where
497 there are synonyms, the preferred synonym is described, others refer
498 to the preferred synonym.
</P
506 >VARIABLE SUBSTITUTIONS
</H2
508 >Many of the strings that are settable in the config file
509 can take substitutions. For example the option
"path =
510 /tmp/%u" would be interpreted as
"path =
511 /tmp/john" if the user connected with the username john.
</P
513 >These substitutions are mostly noted in the descriptions below,
514 but there are some general substitutions which apply whenever they
515 might be relevant. These are:
</P
525 >the name of the current service, if any.
</P
531 >the root directory of the current service,
538 >user name of the current service, if any.
</P
544 >primary group name of %u.
</P
550 >session user name (the user name that the client
551 wanted, not necessarily the same as the one they got).
</P
557 >primary group name of %U.
</P
563 >the home directory of the user given
570 >the Samba version.
</P
576 >the Internet hostname that Samba is running
583 >the NetBIOS name of the client machine
590 >the NetBIOS name of the server. This allows you
591 to change your config based on what the client calls you. Your
592 server can have a
"dual personality".
</P
594 >Note that this paramater is not available when Samba listens
595 on port
445, as clients no longer send this information
</P
601 >the Internet name of the client machine.
608 >the name of your NIS home directory server.
609 This is obtained from your NIS auto.map entry. If you have
610 not compiled Samba with the
<EM
611 >--with-automount
</EM
613 option then this value will be the same as %L.
</P
619 >the path of the service's home directory,
620 obtained from your NIS auto.map entry. The NIS auto.map entry
621 is split up as
"%N:%p".
</P
627 >the selected protocol level after
628 protocol negotiation. It can be one of CORE, COREPLUS,
629 LANMAN1, LANMAN2 or NT1.
</P
635 >The process id of the current server
642 >the architecture of the remote
643 machine. Only some are recognized, and those may not be
644 100% reliable. It currently recognizes Samba, WfWg, Win95,
645 WinNT and Win2k. Anything else will be known as
646 "UNKNOWN". If it gets it wrong then sending a level
648 HREF=
"mailto:samba@samba.org"
652 > should allow it to be fixed.
</P
658 >The IP address of the client machine.
</P
664 >the current date and time.
</P
675 >The value of the environment variable
686 >There are some quite creative things that can be done
687 with these substitutions and other smb.conf options.
</P
697 >Samba supports
"name mangling" so that DOS and
698 Windows clients can use files that don't conform to the
8.3 format.
699 It can also be set to adjust the case of
8.3 format filenames.
</P
701 >There are several options that control the way mangling is
702 performed, and they are grouped here rather than listed separately.
703 For the defaults look at the output of the testparm program.
</P
705 >All of these options can be set separately for each service
706 (or globally, of course).
</P
708 >The options are:
</P
715 >mangle case = yes/no
</DT
718 > controls if names that have characters that
719 aren't of the
"default" case are mangled. For example,
720 if this is yes then a name like
"Mail" would be mangled.
726 >case sensitive = yes/no
</DT
729 >controls whether filenames are case sensitive. If
730 they aren't then Samba must do a filename search and match on passed
736 >default case = upper/lower
</DT
739 >controls what the default case is for new
740 filenames. Default
<EM
745 >preserve case = yes/no
</DT
748 >controls if new files are created with the
749 case that the client passes, or if they are forced to be the
750 "default" case. Default
<EM
756 >short preserve case = yes/no
</DT
759 >controls if new files which conform to
8.3 syntax,
760 that is all in upper case and of suitable length, are created
761 upper case, or if they are forced to be the
"default"
762 case. This option can be use with
"preserve case = yes"
763 to permit long filenames to retain their case, while short names
764 are lowercased. Default
<EM
771 >By default, Samba
2.2 has the same semantics as a Windows
772 NT server, in that it is case insensitive but case preserving.
</P
780 >NOTE ABOUT USERNAME/PASSWORD VALIDATION
</H2
782 >There are a number of ways in which a user can connect
783 to a service. The server uses the following steps in determining
784 if it will allow a connection to a specified service. If all the
785 steps fail, then the connection request is rejected. However, if one of the
786 steps succeeds, then the following steps are not checked.
</P
788 >If the service is marked
"guest only = yes" then
789 steps
1 to
5 are skipped.
</P
796 >If the client has passed a username/password
797 pair and that username/password pair is validated by the UNIX
798 system's password programs then the connection is made as that
799 username. Note that this includes the
810 >If the client has previously registered a username
811 with the system and now supplies a correct password for that
812 username then the connection is allowed.
</P
816 >The client's NetBIOS name and any previously
817 used user names are checked against the supplied password, if
818 they match then the connection is allowed as the corresponding
823 >If the client has previously validated a
824 username/password pair with the server and the client has passed
825 the validation token then that username is used.
</P
829 >If a
"user = " field is given in the
833 > file for the service and the client
834 has supplied a password, and that password matches (according to
835 the UNIX system's password checking) with one of the usernames
836 from the
"user =" field then the connection is made as
837 the username in the
"user =" line. If one
838 of the username in the
"user =" list begins with a
839 '@' then that name expands to a list of names in
840 the group of the same name.
</P
844 >If the service is a guest service then a
845 connection is made as the username given in the
"guest
846 account =" for the service, irrespective of the
847 supplied password.
</P
857 >COMPLETE LIST OF GLOBAL PARAMETERS
</H2
859 >Here is a list of all global parameters. See the section of
860 each parameter for details. Note that some are synonyms.
</P
867 HREF=
"#ABORTSHUTDOWNSCRIPT"
871 >abort shutdown script
</I
879 HREF=
"#ADDPRINTERCOMMAND"
883 >add printer command
</I
891 HREF=
"#ADDSHARECOMMAND"
895 >add share command
</I
903 HREF=
"#ADDUSERSCRIPT"
915 HREF=
"#ADDMACHINESCRIPT"
919 >add machine script
</I
927 HREF=
"#ALLOWTRUSTEDDOMAINS"
931 >allow trusted domains
</I
951 HREF=
"#ANNOUNCEVERSION"
987 HREF=
"#BINDINTERFACESONLY"
991 >bind interfaces only
</I
1011 HREF=
"#CHANGENOTIFYTIMEOUT"
1015 >change notify timeout
</I
1023 HREF=
"#CHANGESHARECOMMAND"
1027 >change share command
</I
1059 HREF=
"#DEBUGHIRESTIMESTAMP"
1063 >debug hires timestamp
</I
1083 HREF=
"#DEBUGTIMESTAMP"
1131 HREF=
"#DEFAULTSERVICE"
1143 HREF=
"#DELETEPRINTERCOMMAND"
1147 >delete printer command
</I
1155 HREF=
"#DELETESHARECOMMAND"
1159 >delete share command
</I
1167 HREF=
"#DELETEUSERSCRIPT"
1171 >delete user script
</I
1179 HREF=
"#DFREECOMMAND"
1191 HREF=
"#DISABLESPOOLSS"
1215 HREF=
"#DOMAINADMINGROUP"
1219 >domain admin group
</I
1227 HREF=
"#DOMAINGUESTGROUP"
1231 >domain guest group
</I
1239 HREF=
"#DOMAINLOGONS"
1251 HREF=
"#DOMAINMASTER"
1263 HREF=
"#ENCRYPTPASSWORDS"
1267 >encrypt passwords
</I
1275 HREF=
"#ENHANCEDBROWSING"
1279 >enhanced browsing
</I
1287 HREF=
"#ENUMPORTSCOMMAND"
1291 >enumports command
</I
1311 HREF=
"#HIDELOCALUSERS"
1315 >hide local users
</I
1323 HREF=
"#HIDEUNREADABLE"
1395 HREF=
"#KERNELOPLOCKS"
1419 HREF=
"#LARGEREADWRITE"
1527 HREF=
"#LOADPRINTERS"
1563 HREF=
"#LOCKDIRECTORY"
1647 HREF=
"#LPQCACHETIME"
1659 HREF=
"#MACHINEPASSWORDTIMEOUT"
1663 >machine password timeout
</I
1671 HREF=
"#MANGLEDSTACK"
1731 HREF=
"#MAXOPENFILES"
1755 HREF=
"#MAXSMBDPROCESSES"
1759 >max smbd processes
</I
1803 HREF=
"#MESSAGECOMMAND"
1815 HREF=
"#MINPASSWDLENGTH"
1819 >min passwd length
</I
1827 HREF=
"#MINPASSWORDLENGTH"
1831 >min password length
</I
1863 HREF=
"#NAMERESOLVEORDER"
1867 >name resolve order
</I
1875 HREF=
"#NETBIOSALIASES"
1899 HREF=
"#NETBIOSSCOPE"
1923 HREF=
"#NONUNIXACCOUNTRANGE"
1927 >non unix account range
</I
1935 HREF=
"#NTPIPESUPPORT"
1947 HREF=
"#NULLPASSWORDS"
1959 HREF=
"#OBEYPAMRESTRICTIONS"
1963 >obey pam restrictions
</I
1971 HREF=
"#OPLOCKBREAKWAITTIME"
1975 >oplock break wait time
</I
1995 HREF=
"#OS2DRIVERMAP"
2007 HREF=
"#PAMPASSWORDCHANGE"
2011 >pam password change
</I
2031 HREF=
"#PASSDBBACKEND"
2055 HREF=
"#PASSWDCHATDEBUG"
2059 >passwd chat debug
</I
2067 HREF=
"#PASSWDPROGRAM"
2079 HREF=
"#PASSWORDLEVEL"
2091 HREF=
"#PASSWORDSERVER"
2103 HREF=
"#PREFEREDMASTER"
2115 HREF=
"#PREFERREDMASTER"
2119 >preferred master
</I
2151 HREF=
"#PRINTCAPNAME"
2163 HREF=
"#PRINTERDRIVERFILE"
2167 >printer driver file
</I
2235 HREF=
"#REMOTEANNOUNCE"
2247 HREF=
"#REMOTEBROWSESYNC"
2251 >remote browse sync
</I
2259 HREF=
"#RESTRICTANONYMOUS"
2263 >restrict anonymous
</I
2295 HREF=
"#ROOTDIRECTORY"
2319 HREF=
"#SERVERSTRING"
2331 HREF=
"#SHOWADDPRINTERWIZARD"
2335 >show add printer wizard
</I
2343 HREF=
"#SHUTDOWNSCRIPT"
2355 HREF=
"#SMBPASSWDFILE"
2367 HREF=
"#SOCKETADDRESS"
2379 HREF=
"#SOCKETOPTIONS"
2391 HREF=
"#SOURCEENVIRONMENT"
2395 >source environment
</I
2415 HREF=
"#SSLCACERTDIR"
2427 HREF=
"#SSLCACERTFILE"
2451 HREF=
"#SSLCLIENTCERT"
2463 HREF=
"#SSLCLIENTKEY"
2475 HREF=
"#SSLCOMPATIBILITY"
2479 >ssl compatibility
</I
2487 HREF=
"#SSLEGDSOCKET"
2499 HREF=
"#SSLENTROPYBYTES"
2503 >ssl entropy bytes
</I
2511 HREF=
"#SSLENTROPYFILE"
2515 >ssl entropy file
</I
2535 HREF=
"#SSLHOSTSRESIGN"
2539 >ssl hosts resign
</I
2547 HREF=
"#SSLREQUIRECLIENTCERT"
2551 >ssl require clientcert
</I
2559 HREF=
"#SSLREQUIRESERVERCERT"
2563 >ssl require servercert
</I
2571 HREF=
"#SSLSERVERCERT"
2583 HREF=
"#SSLSERVERKEY"
2619 HREF=
"#STATCACHESIZE"
2667 HREF=
"#TEMPLATEHOMEDIR"
2671 >template homedir
</I
2679 HREF=
"#TEMPLATESHELL"
2715 HREF=
"#TIMESTAMPLOGS"
2727 HREF=
"#TOTALPRINTJOBS"
2731 >total print jobs
</I
2739 HREF=
"#UNIXEXTENSIONS"
2751 HREF=
"#UNIXPASSWORDSYNC"
2755 >unix password sync
</I
2763 HREF=
"#UPDATEENCRYPTED"
2767 >update encrypted
</I
2799 HREF=
"#USERNAMELEVEL"
2835 HREF=
"#UTMPDIRECTORY"
2847 HREF=
"#WINBINDCACHETIME"
2851 >winbind cache time
</I
2859 HREF=
"#WINBINDENUMUSERS"
2863 >winbind enum users
</I
2871 HREF=
"#WINBINDENUMGROUPS"
2875 >winbind enum groups
</I
2895 HREF=
"#WINBINDSEPARATOR"
2899 >winbind separator
</I
2919 HREF=
"#WINBINDUSEDEFAULTDOMAIN"
2923 >winbind use default domain
</I
3008 >COMPLETE LIST OF SERVICE PARAMETERS
</H2
3010 >Here is a list of all service parameters. See the section on
3011 each parameter for details. Note that some are synonyms.
</P
3054 HREF=
"#BLOCKINGLOCKS"
3090 HREF=
"#CASESENSITIVE"
3102 HREF=
"#CASESIGNAMES"
3174 HREF=
"#DEFAULTDEVMODE"
3186 HREF=
"#DELETEREADONLY"
3198 HREF=
"#DELETEVETOFILES"
3202 >delete veto files
</I
3234 HREF=
"#DIRECTORYMASK"
3246 HREF=
"#DIRECTORYMODE"
3258 HREF=
"#DIRECTORYSECURITYMASK"
3262 >directory security mask
</I
3294 HREF=
"#DOSFILETIMERESOLUTION"
3298 >dos filetime resolution
</I
3306 HREF=
"#DOSFILETIMES"
3330 HREF=
"#FAKEDIRECTORYCREATETIMES"
3334 >fake directory create times
</I
3354 HREF=
"#FOLLOWSYMLINKS"
3366 HREF=
"#FORCECREATEMODE"
3370 >force create mode
</I
3378 HREF=
"#FORCEDIRECTORYMODE"
3382 >force directory mode
</I
3390 HREF=
"#FORCEDIRECTORYSECURITYMODE"
3394 >force directory security mode
</I
3414 HREF=
"#FORCESECURITYMODE"
3418 >force security mode
</I
3462 HREF=
"#GUESTACCOUNT"
3498 HREF=
"#HIDEDOTFILES"
3558 HREF=
"#INHERITPERMISSIONS"
3562 >inherit permissions
</I
3570 HREF=
"#INVALIDUSERS"
3582 HREF=
"#LEVEL2OPLOCKS"
3606 HREF=
"#LPPAUSECOMMAND"
3630 HREF=
"#LPRESUMECOMMAND"
3634 >lpresume command
</I
3702 HREF=
"#MANGLEDNAMES"
3714 HREF=
"#MANGLINGCHAR"
3762 HREF=
"#MAXCONNECTIONS"
3774 HREF=
"#MAXPRINTJOBS"
3786 HREF=
"#MINPRINTSPACE"
3810 HREF=
"#NTACLSUPPORT"
3846 HREF=
"#OPLOCKCONTENTIONLIMIT"
3850 >oplock contention limit
</I
3882 HREF=
"#POSIXLOCKING"
3930 HREF=
"#PREEXECCLOSE"
3942 HREF=
"#PRESERVECASE"
3954 HREF=
"#PRINTCOMMAND"
4002 HREF=
"#PRINTERADMIN"
4014 HREF=
"#PRINTERDRIVER"
4026 HREF=
"#PRINTERDRIVERLOCATION"
4030 >printer driver location
</I
4074 HREF=
"#QUEUEPAUSECOMMAND"
4078 >queuepause command
</I
4086 HREF=
"#QUEUERESUMECOMMAND"
4090 >queueresume command
</I
4122 HREF=
"#ROOTPOSTEXEC"
4146 HREF=
"#ROOTPREEXECCLOSE"
4150 >root preexec close
</I
4158 HREF=
"#SECURITYMASK"
4170 HREF=
"#SETDIRECTORY"
4182 HREF=
"#SHORTPRESERVECASE"
4186 >short preserve case
</I
4206 HREF=
"#STRICTALLOCATE"
4218 HREF=
"#STRICTLOCKING"
4254 HREF=
"#USECLIENTDRIVER"
4258 >use client driver
</I
4326 HREF=
"#VETOOPLOCKFILES"
4330 >veto oplock files
</I
4398 HREF=
"#WRITECACHESIZE"
4402 >write cache size
</I
4451 >EXPLANATION OF EACH PARAMETER
</H2
4455 CLASS=
"VARIABLELIST"
4459 NAME=
"ABORTSHUTDOWNSCRIPT"
4461 >abort shutdown script (G)
</DT
4465 >This parameter only exists in the HEAD cvs branch
</EM
4467 This a full path name to a script called by
4476 should stop a shutdown procedure issued by the
<A
4477 HREF=
"#SHUTDOWNSCRIPT"
4486 >This command will be run as user.
</P
4494 >abort shutdown script = /sbin/shutdown -c
</B
4499 NAME=
"ADDPRINTERCOMMAND"
4501 >add printer command (G)
</DT
4504 >With the introduction of MS-RPC based printing
4505 support for Windows NT/
2000 clients in Samba
2.2, The MS Add
4506 Printer Wizard (APW) icon is now also available in the
4507 "Printers..." folder displayed a share listing. The APW
4508 allows for printers to be add remotely to a Samba or Windows
4509 NT/
2000 print server.
</P
4511 >For a Samba host this means that the printer must be
4512 physically added to the underlying printing system. The
<TT
4518 > defines a script to be run which
4519 will perform the necessary operations for adding the printer
4520 to the print system and to add the appropriate service definition
4524 > file in order that it can be
4538 >add printer command
</I
4541 automatically invoked with the following parameter (in
4596 >Windows
9x driver location
</I
4603 >All parameters are filled in from the PRINTER_INFO_2 structure sent
4604 by the Windows NT/
2000 client with one exception. The
"Windows 9x
4605 driver location" parameter is included for backwards compatibility
4606 only. The remaining fields in the structure are generated from answers
4607 to the APW questions.
</P
4612 >add printer command
</I
4618 > will reparse the
<TT
4621 > to determine if the share defined by the APW
4622 exists. If the sharename is still invalid, then
<B
4626 > will return an ACCESS_DENIED error to the client.
</P
4629 HREF=
"#DELETEPRINTERCOMMAND"
4633 > delete printer command
</I
4646 HREF=
"#SHOWADDPRINTERWIZARD"
4662 >addprinter command = /usr/bin/addprinter
4668 NAME=
"ADDSHARECOMMAND"
4670 >add share command (G)
</DT
4673 >Samba
2.2.0 introduced the ability to dynamically
4674 add and delete shares via the Windows NT
4.0 Server Manager. The
4678 >add share command
</I
4680 > is used to define an
4681 external program or script which will add a new service definition
4685 >. In order to successfully
4689 >add share command
</I
4695 requires that the administrator be connected using a root account (i.e.
4702 > will automatically invoke the
4706 >add share command
</I
4708 > with four parameters.
4734 > - the name of the new
4745 > - path to an **existing**
4756 > - comment string to associate
4762 > This parameter is only used for add file shares. To add printer shares,
4764 HREF=
"#ADDPRINTERCOMMAND"
4776 HREF=
"#CHANGESHARECOMMAND"
4785 HREF=
"#DELETESHARECOMMAND"
4802 >add share command = /usr/local/bin/addshare
</B
4807 NAME=
"ADDMACHINESCRIPT"
4809 >add machine script (G)
</DT
4812 >This is the full pathname to a script that will
4817 > when a machine is added
4818 to it's domain using the administrator username and password method.
</P
4820 >This option is only required when using sam back-ends tied to the
4821 Unix uid method of RID calculation such as smbpasswd. This option is only
4822 available in Samba
3.0.
</P
4826 >add machine script =
<empty string
>
4832 >add machine script = /usr/sbin/adduser -n -g machines -c Machine -d /dev/null -s /bin/false %u
4838 NAME=
"ADDUSERSCRIPT"
4840 >add user script (G)
</DT
4843 >This is the full pathname to a script that will
4851 > under special circumstances described below.
</P
4853 >Normally, a Samba server requires that UNIX users are
4854 created for all users accessing files on this server. For sites
4855 that use Windows NT account databases as their primary user database
4856 creating these users and keeping the user list in sync with the
4857 Windows NT PDC is an onerous task. This option allows
<A
4861 > to create the required UNIX users
4864 > when a user accesses the Samba server.
</P
4866 >In order to use this option,
<A
4876 >security = share
</I
4885 must be set to a full pathname for a script that will create a UNIX
4886 user given one argument of
<TT
4891 >, which expands into
4892 the UNIX user name to create.
</P
4894 >When the Windows user attempts to access the Samba server,
4895 at login (session setup in the SMB protocol) time,
<A
4905 attempts to authenticate the given user with the given password. If the
4906 authentication succeeds then
<B
4910 attempts to find a UNIX user in the UNIX password database to map the
4911 Windows user into. If this lookup fails, and
<TT
4921 call the specified script
<EM
4929 > argument to be the user name to create.
</P
4931 >If this script successfully creates the user then
<B
4935 > will continue on as though the UNIX user
4936 already existed. In this way, UNIX users are dynamically created to
4937 match existing Windows NT accounts.
</P
4948 HREF=
"#PASSWORDSERVER"
4957 HREF=
"#DELETEUSERSCRIPT"
4969 >add user script =
<empty string
>
4975 >add user script = /usr/local/samba/bin/add_user
4983 >admin users (S)
</DT
4986 >This is a list of users who will be granted
4987 administrative privileges on the share. This means that they
4988 will do all file operations as the super-user (root).
</P
4990 >You should use this option very carefully, as any user in
4991 this list will be able to do anything they like on the share,
4992 irrespective of file permissions.
</P
5000 >admin users = jason
</B
5007 >allow hosts (S)
</DT
5022 NAME=
"ALLOWTRUSTEDDOMAINS"
5024 >allow trusted domains (G)
</DT
5027 >This option only takes effect when the
<A
5043 If it is set to no, then attempts to connect to a resource from
5044 a domain or workgroup other than the one which
<A
5049 in will fail, even if that domain is trusted by the remote server
5050 doing the authentication.
</P
5052 >This is useful if you only want your Samba server to
5053 serve resources to users in the domain it is a member of. As
5054 an example, suppose that there are two domains DOMA and DOMB. DOMB
5055 is trusted by DOMA, which contains the Samba server. Under normal
5056 circumstances, a user with an account in DOMB can then access the
5057 resources of a UNIX account with the same account name on the
5058 Samba server even if they do not have an account in DOMA. This
5059 can make implementing a security boundary difficult.
</P
5063 >allow trusted domains = yes
</B
5070 >announce as (G)
</DT
5073 >This specifies what type of server
5082 will announce itself as, to a network neighborhood browse
5083 list. By default this is set to Windows NT. The valid options
5084 are :
"NT Server" (which can also be written as
"NT"),
5085 "NT Workstation",
"Win95" or
"WfW" meaning Windows NT Server,
5086 Windows NT Workstation, Windows
95 and Windows for Workgroups
5087 respectively. Do not change this parameter unless you have a
5088 specific need to stop Samba appearing as an NT server as this
5089 may prevent Samba servers from participating as browser servers
5094 >announce as = NT Server
</B
5099 >announce as = Win95
</B
5104 NAME=
"ANNOUNCEVERSION"
5106 >announce version (G)
</DT
5109 >This specifies the major and minor version numbers
5110 that nmbd will use when announcing itself as a server. The default
5111 is
4.2. Do not change this parameter unless you have a specific
5112 need to set a Samba server to be a downlevel server.
</P
5116 >announce version =
4.5</B
5121 >announce version =
2.0</B
5128 >auto services (G)
</DT
5131 >This is a synonym for the
<A
5145 >auth methods (G)
</DT
5148 >This option allows the administrator to chose what
5149 authentication methods
<B
5152 > will use when authenticating
5153 a user. This option defaults to sensible values based on
<A
5163 Each entry in the list attempts to authenticate the user in turn, until
5164 the user authenticates. In practice only one method will ever actually
5165 be able to complete the authentication.
5170 >auth methods =
<empty string
></B
5175 >auth methods = guest sam ntdomain
</B
5185 >This parameter lets you
"turn off" a service. If
5194 attempts to connect to the service will fail. Such failures are
5204 NAME=
"BINDINTERFACESONLY"
5206 >bind interfaces only (G)
</DT
5209 >This global parameter allows the Samba admin
5210 to limit what interfaces on a machine will serve SMB requests. If
5211 affects file service
<A
5223 >For name service it causes
<B
5227 to ports
137 and
138 on the interfaces listed in the
<A
5234 > also binds to the
"all addresses" interface (
0.0.0.0)
5235 on ports
137 and
138 for the purposes of reading broadcast messages.
5236 If this option is not set then
<B
5240 name requests on all of these sockets. If
<TT
5250 source address of any packets coming in on the broadcast sockets
5251 and discard any that don't match the broadcast addresses of the
5252 interfaces in the
<TT
5258 As unicast packets are received on the other sockets it allows
5262 > to refuse to serve names to machines that
5263 send packets that arrive through any interfaces not listed in the
5269 > list. IP Source address spoofing
5270 does defeat this simple check, however so it must not be used
5271 seriously as a security feature for
<B
5276 >For file service it causes
<A
5281 to bind only to the interface list given in the
<A
5284 > parameter. This restricts the networks that
5288 > will serve to packets coming in those
5289 interfaces. Note that you should not use this parameter for machines
5290 that are serving PPP or other intermittent or non-broadcast network
5291 interfaces as it will not cope with non-permanent interfaces.
</P
5296 >bind interfaces only
</I
5299 unless the network address
<EM
5308 HREF=
"smbpasswd.8.html"
5323 not work as expected due to the reasons covered below.
</P
5325 >To change a users SMB password, the
<B
5329 by default connects to the
<EM
5330 >localhost -
127.0.0.1</EM
5332 address as an SMB client to issue the password change request. If
5336 >bind interfaces only
</I
5338 > is set then unless the
5347 > parameter list then
<B
5350 > will fail to connect in it's default mode.
5354 > can be forced to use the primary IP interface
5355 of the local host by using its
<A
5356 HREF=
"smbpasswd.8.html#minusr"
5370 > parameter, with
<TT
5376 to the IP name of the primary interface of the local host.
</P
5381 > status page tries to connect with
5391 > to determine if they are running.
5401 "not running" even if they really are. This can prevent
<B
5404 > from starting/stopping/restarting
<B
5415 >bind interfaces only = no
</B
5420 NAME=
"BLOCKINGLOCKS"
5422 >blocking locks (S)
</DT
5425 >This parameter controls the behavior of
<A
5429 > when given a request by a client
5430 to obtain a byte range lock on a region of an open file, and the
5431 request has a time limit associated with it.
</P
5433 >If this parameter is set and the lock range requested
5434 cannot be immediately satisfied, Samba
2.2 will internally
5435 queue the lock request, and periodically attempt to obtain
5436 the lock until the timeout period expires.
</P
5438 >If this parameter is set to
<TT
5442 Samba
2.2 will behave as previous versions of Samba would and
5443 will fail the lock request immediately if the lock range
5444 cannot be obtained.
</P
5448 >blocking locks = yes
</B
5472 >browse list (G)
</DT
5475 >This controls whether
<A
5482 > will serve a browse list to
5490 >. You should never need to change
5495 >browse list = yes
</B
5505 >This controls whether this share is seen in
5506 the list of available shares in a net view and in the browse list.
</P
5510 >browseable = yes
</B
5515 NAME=
"CASESENSITIVE"
5517 >case sensitive (S)
</DT
5520 >See the discussion in the section
<A
5527 >case sensitive = no
</B
5534 >casesignames (S)
</DT
5538 HREF=
"#CASESENSITIVE"
5545 NAME=
"CHANGENOTIFYTIMEOUT"
5547 >change notify timeout (G)
</DT
5550 >This SMB allows a client to tell a server to
5551 "watch" a particular directory for any changes and only reply to
5552 the SMB request when a change has occurred. Such constant scanning of
5553 a directory is expensive under UNIX, hence an
<A
5560 > daemon only performs such a scan
5561 on each requested directory once every
<TT
5571 >change notify timeout =
60</B
5576 >change notify timeout =
300</B
5579 >Would change the scan time to every
5 minutes.
</P
5583 NAME=
"CHANGESHARECOMMAND"
5585 >change share command (G)
</DT
5588 >Samba
2.2.0 introduced the ability to dynamically
5589 add and delete shares via the Windows NT
4.0 Server Manager. The
5593 >change share command
</I
5595 > is used to define an
5596 external program or script which will modify an existing service definition
5600 >. In order to successfully
5604 >change share command
</I
5610 requires that the administrator be connected using a root account (i.e.
5617 > will automatically invoke the
5621 >change share command
</I
5623 > with four parameters.
5649 > - the name of the new
5660 > - path to an **existing**
5671 > - comment string to associate
5677 > This parameter is only used modify existing file shares definitions. To modify
5678 printer shares, use the
"Printers..." folder as seen when browsing the Samba host.
5682 HREF=
"#ADDSHARECOMMAND"
5691 HREF=
"#DELETESHARECOMMAND"
5708 >change share command = /usr/local/bin/addshare
</B
5718 >This is a text field that is seen next to a share
5719 when a client does a queries the server, either via the network
5720 neighborhood or via
<B
5723 > to list what shares
5726 >If you want to set the string that is displayed next to the
5727 machine name then see the
<A
5728 HREF=
"#SERVERSTRING"
5738 >No comment string
</EM
5743 >comment = Fred's Files
</B
5750 >config file (G)
</DT
5753 >This allows you to override the config file
5754 to use, instead of the default (usually
<TT
5758 There is a chicken and egg problem here as this option is set
5759 in the config file!
</P
5761 >For this reason, if the name of the config file has changed
5762 when the parameters are loaded then it will reload them from
5763 the new config file.
</P
5765 >This option takes the usual substitutions, which can
5768 >If the config file doesn't exist then it won't be loaded
5769 (allowing you to special case the config files of just a few
5774 >config file = /usr/local/samba/lib/smb.conf.%m
5785 >This parameter allows you to
"clone" service
5786 entries. The specified service is simply duplicated under the
5787 current service's name. Any parameters specified in the current
5788 section will override those in the section being copied.
</P
5790 >This feature lets you set up a 'template' service and
5791 create similar services easily. Note that the service being
5792 copied must occur earlier in the configuration file than the
5793 service doing the copying.
</P
5801 >copy = otherservice
</B
5808 >create mask (S)
</DT
5811 >A synonym for this parameter is
5823 >When a file is created, the necessary permissions are
5824 calculated according to the mapping from DOS modes to UNIX
5825 permissions, and the resulting UNIX mode is then bit-wise 'AND'ed
5826 with this parameter. This parameter may be thought of as a bit-wise
5827 MASK for the UNIX modes of a file. Any bit
<EM
5830 set here will be removed from the modes set on a file when it is
5833 >The default value of this parameter removes the
5834 'group' and 'other' write and execute bits from the UNIX modes.
</P
5836 >Following this Samba will bit-wise 'OR' the UNIX mode created
5837 from this parameter with the value of the
<A
5838 HREF=
"#FORCECREATEMODE"
5842 >force create mode
</I
5846 parameter which is set to
000 by default.
</P
5848 >This parameter does not affect directory modes. See the
5850 HREF=
"#DIRECTORYMODE"
5861 HREF=
"#FORCECREATEMODE"
5869 > parameter for forcing particular mode
5870 bits to be set on created files. See also the
<A
5871 HREF=
"#DIRECTORYMODE"
5878 > parameter for masking
5879 mode bits on created directories. See also the
<A
5880 HREF=
"#INHERITPERMISSIONS"
5884 >inherit permissions
</I
5889 >Note that this parameter does not apply to permissions
5890 set by Windows NT/
2000 ACL editors. If the administrator wishes to enforce
5891 a mask on access control lists also, they need to set the
<A
5892 HREF=
"#SECURITYMASK"
5903 >create mask =
0744</B
5908 >create mask =
0775</B
5915 >create mode (S)
</DT
5918 >This is a synonym for
<A
5935 >The value of the parameter (a decimal integer)
5936 represents the number of minutes of inactivity before a connection
5937 is considered dead, and it is disconnected. The deadtime only takes
5938 effect if the number of open files is zero.
</P
5940 >This is useful to stop a server's resources being
5941 exhausted by a large number of inactive connections.
</P
5943 >Most clients have an auto-reconnect feature when a
5944 connection is broken so in most cases this parameter should be
5945 transparent to users.
</P
5947 >Using this parameter with a timeout of a few minutes
5948 is recommended for most systems.
</P
5950 >A deadtime of zero indicates that no auto-disconnection
5951 should be performed.
</P
5965 NAME=
"DEBUGHIRESTIMESTAMP"
5967 >debug hires timestamp (G)
</DT
5970 >Sometimes the timestamps in the log messages
5971 are needed with a resolution of higher that seconds, this
5972 boolean parameter adds microsecond resolution to the timestamp
5973 message header when turned on.
</P
5975 >Note that the parameter
<A
5976 HREF=
"#DEBUGTIMESTAMP"
5980 > debug timestamp
</I
5983 > must be on for this to have an
5988 >debug hires timestamp = no
</B
5998 >When using only one log file for more then one
6003 >-process there may be hard to follow which process
6004 outputs which message. This boolean parameter is adds the process-id
6005 to the timestamp message headers in the logfile when turned on.
</P
6007 >Note that the parameter
<A
6008 HREF=
"#DEBUGTIMESTAMP"
6012 > debug timestamp
</I
6015 > must be on for this to have an
6025 NAME=
"DEBUGTIMESTAMP"
6027 >debug timestamp (G)
</DT
6030 >Samba
2.2 debug log messages are timestamped
6031 by default. If you are running at a high
<A
6040 can be distracting. This boolean parameter allows timestamping
6041 to be turned off.
</P
6045 >debug timestamp = yes
</B
6055 >Samba is sometimes run as root and sometime
6056 run as the connected user, this boolean parameter inserts the
6057 current euid, egid, uid and gid to the timestamp message headers
6058 in the log file if turned on.
</P
6060 >Note that the parameter
<A
6061 HREF=
"#DEBUGTIMESTAMP"
6065 > debug timestamp
</I
6068 > must be on for this to have an
6101 HREF=
"#DEFAULTSERVICE"
6105 > default service
</I
6114 >default case (S)
</DT
6117 >See the section on
<A
6121 HREF=
"#SHORTPRESERVECASE"
6125 >short preserve case
</I
6132 >default case = lower
</B
6137 NAME=
"DEFAULTDEVMODE"
6139 >default devmode (S)
</DT
6142 >This parameter is only applicable to
<A
6145 > services. When smbd is serving
6146 Printer Drivers to Windows NT/
2k/XP clients, each printer on the Samba
6147 server has a Device Mode which defines things such as paper size and
6148 orientation and duplex settings. The device mode can only correctly be
6149 generated by the printer driver itself (which can only be executed on a
6150 Win32 platform). Because smbd is unable to execute the driver code
6151 to generate the device mode, the default behavior is to set this field
6155 >Most problems with serving printer drivers to Windows NT/
2k/XP clients
6156 can be traced to a problem with the generated device mode. Certain drivers
6157 will do things such as crashing the client's Explorer.exe with a NULL devmode.
6158 However, other printer drivers can cause the client's spooler service
6159 (spoolsv.exe) to die if the devmode was not created by the driver itself
6160 (i.e. smbd generates a default devmode).
6163 >This parameter should be used with care and tested with the printer
6164 driver in question. It is better to leave the device mode to NULL
6165 and let the Windows client set the correct values. Because drivers do not
6166 do this all the time, setting
<B
6168 >default devmode = yes
</B
6170 will instruct smbd to generate a default one.
6173 >For more information on Windows NT/
2k printing and Device Modes,
6175 HREF=
"http://msdn.microsoft.com/"
6177 >MSDN documentation
</A
6183 >default devmode = no
</B
6188 NAME=
"DEFAULTSERVICE"
6190 >default service (G)
</DT
6193 >This parameter specifies the name of a service
6194 which will be connected to if the service actually requested cannot
6195 be found. Note that the square brackets are
<EM
6198 given in the parameter value (see example below).
</P
6200 >There is no default value for this parameter. If this
6201 parameter is not given, attempting to connect to a nonexistent
6202 service results in an error.
</P
6204 >Typically the default service would be a
<A
6222 >Also note that the apparent service name will be changed
6223 to equal that of the requested service, this is very useful as it
6224 allows you to use macros like
<TT
6230 a wildcard service.
</P
6232 >Note also that any
"_" characters in the name of the service
6233 used in the default service will get mapped to a
"/". This allows for
6234 interesting things.
</P
6245 CLASS=
"PROGRAMLISTING"
6247 default service = pub
6259 NAME=
"DELETEPRINTERCOMMAND"
6261 >delete printer command (G)
</DT
6264 >With the introduction of MS-RPC based printer
6265 support for Windows NT/
2000 clients in Samba
2.2, it is now
6266 possible to delete printer at run time by issuing the
6267 DeletePrinter() RPC call.
</P
6269 >For a Samba host this means that the printer must be
6270 physically deleted from underlying printing system. The
<TT
6273 > deleteprinter command
</I
6275 > defines a script to be run which
6276 will perform the necessary operations for removing the printer
6277 from the print system and from
<TT
6286 >delete printer command
</I
6289 automatically called with only one parameter:
<TT
6299 >delete printer command
</I
6305 > will reparse the
<TT
6308 > to associated printer no longer exists.
6309 If the sharename is still valid, then
<B
6313 > will return an ACCESS_DENIED error to the client.
</P
6316 HREF=
"#ADDPRINTERCOMMAND"
6320 > add printer command
</I
6333 HREF=
"#SHOWADDPRINTERWIZARD"
6349 >deleteprinter command = /usr/bin/removeprinter
6355 NAME=
"DELETEREADONLY"
6357 >delete readonly (S)
</DT
6360 >This parameter allows readonly files to be deleted.
6361 This is not normal DOS semantics, but is allowed by UNIX.
</P
6363 >This option may be useful for running applications such
6364 as rcs, where UNIX file ownership prevents changing file
6365 permissions, and DOS semantics prevent deletion of a read only file.
</P
6369 >delete readonly = no
</B
6374 NAME=
"DELETESHARECOMMAND"
6376 >delete share command (G)
</DT
6379 >Samba
2.2.0 introduced the ability to dynamically
6380 add and delete shares via the Windows NT
4.0 Server Manager. The
6384 >delete share command
</I
6386 > is used to define an
6387 external program or script which will remove an existing service
6391 >. In order to successfully
6395 >delete share command
</I
6401 requires that the administrator be connected using a root account (i.e.
6408 > will automatically invoke the
6412 >delete share command
</I
6414 > with two parameters.
6441 the existing service.
6446 > This parameter is only used to remove file shares. To delete printer shares,
6448 HREF=
"#DELETEPRINTERCOMMAND"
6460 HREF=
"#ADDSHARECOMMAND"
6469 HREF=
"#CHANGESHARECOMMAND"
6486 >delete share command = /usr/local/bin/delshare
</B
6491 NAME=
"DELETEUSERSCRIPT"
6493 >delete user script (G)
</DT
6496 >This is the full pathname to a script that will
6506 > under special circumstances
6509 >Normally, a Samba server requires that UNIX users are
6510 created for all users accessing files on this server. For sites
6511 that use Windows NT account databases as their primary user database
6512 creating these users and keeping the user list in sync with the
6513 Windows NT PDC is an onerous task. This option allows
<B
6516 > to delete the required UNIX users
<EM
6519 > when a user accesses the Samba server and the
6520 Windows NT user no longer exists.
</P
6522 >In order to use this option,
<B
6529 >security = domain
</I
6540 >delete user script
</I
6543 must be set to a full pathname for a script
6544 that will delete a UNIX user given one argument of
<TT
6550 which expands into the UNIX user name to delete.
</P
6552 >When the Windows user attempts to access the Samba server,
6555 > (session setup in the SMB protocol)
6560 HREF=
"#PASSWORDSERVER"
6567 > and attempts to authenticate
6568 the given user with the given password. If the authentication fails
6569 with the specific Domain error code meaning that the user no longer
6573 > attempts to find a UNIX user in
6574 the UNIX password database that matches the Windows user account. If
6575 this lookup succeeds, and
<TT
6578 >delete user script
</I
6584 > will all the specified script
6587 >, expanding any
<TT
6593 argument to be the user name to delete.
</P
6595 >This script should delete the given UNIX username. In this way,
6596 UNIX users are dynamically deleted to match existing Windows NT
6600 HREF=
"#SECURITYEQUALSDOMAIN"
6601 >security = domain
</A
6604 HREF=
"#PASSWORDSERVER"
6613 HREF=
"#ADDUSERSCRIPT"
6625 >delete user script =
<empty string
>
6631 >delete user script = /usr/local/samba/bin/del_user
6637 NAME=
"DELETEVETOFILES"
6639 >delete veto files (S)
</DT
6642 >This option is used when Samba is attempting to
6643 delete a directory that contains one or more vetoed directories
6653 option). If this option is set to
<TT
6656 > (the default) then if a vetoed
6657 directory contains any non-vetoed files or directories then the
6658 directory delete will fail. This is usually what you want.
</P
6660 >If this option is set to
<TT
6664 will attempt to recursively delete any files and directories within
6665 the vetoed directory. This can be useful for integration with file
6666 serving systems such as NetAtalk which create meta-files within
6667 directories you might normally veto DOS/Windows users from seeing
6675 >delete veto files = yes
</B
6677 directories to be transparently deleted when the parent directory
6678 is deleted (so long as the user has permissions to do so).
</P
6693 >delete veto files = no
</B
6718 >dfree command (G)
</DT
6727 only be used on systems where a problem occurs with the internal
6728 disk space calculations. This has been known to happen with Ultrix,
6729 but may occur with other operating systems. The symptom that was
6730 seen was an error of
"Abort Retry Ignore" at the end of each
6731 directory listing.
</P
6733 >This setting allows the replacement of the internal routines to
6734 calculate the total disk space and amount available with an external
6735 routine. The example below gives a possible script that might fulfill
6738 >The external program will be passed a single parameter indicating
6739 a directory in the filesystem being queried. This will typically consist
6743 >. The script should return two
6744 integers in ASCII. The first should be the total disk space in blocks,
6745 and the second should be the number of available blocks. An optional
6746 third return value can give the block size in bytes. The default
6747 blocksize is
1024 bytes.
</P
6749 >Note: Your script should
<EM
6752 setgid and should be owned by (and writeable only by) root!
</P
6755 >By default internal routines for
6756 determining the disk capacity and remaining space will be used.
6762 >dfree command = /usr/local/samba/bin/dfree
6766 >Where the script dfree (which must be made executable) could be:
</P
6775 CLASS=
"PROGRAMLISTING"
6778 df $
1 | tail -
1 | awk '{print $
2" "$
4}'
6785 >or perhaps (on Sys V based systems):
</P
6794 CLASS=
"PROGRAMLISTING"
6797 /usr/bin/df -k $
1 | tail -
1 | awk '{print $
3" "$
5}'
6804 >Note that you may have to replace the command names
6805 with full path names on some systems.
</P
6827 NAME=
"DIRECTORYMASK"
6829 >directory mask (S)
</DT
6832 >This parameter is the octal modes which are
6833 used when converting DOS modes to UNIX modes when creating UNIX
6836 >When a directory is created, the necessary permissions are
6837 calculated according to the mapping from DOS modes to UNIX permissions,
6838 and the resulting UNIX mode is then bit-wise 'AND'ed with this
6839 parameter. This parameter may be thought of as a bit-wise MASK for
6840 the UNIX modes of a directory. Any bit
<EM
6843 here will be removed from the modes set on a directory when it is
6846 >The default value of this parameter removes the 'group'
6847 and 'other' write bits from the UNIX mode, allowing only the
6848 user who owns the directory to modify it.
</P
6850 >Following this Samba will bit-wise 'OR' the UNIX mode
6851 created from this parameter with the value of the
<A
6852 HREF=
"#FORCEDIRECTORYMODE"
6856 >force directory mode
6860 > parameter. This parameter is set to
000 by
6861 default (i.e. no extra mode bits are added).
</P
6863 >Note that this parameter does not apply to permissions
6864 set by Windows NT/
2000 ACL editors. If the administrator wishes to enforce
6865 a mask on access control lists also, they need to set the
<A
6866 HREF=
"#DIRECTORYSECURITYMASK"
6870 >directory security mask
</I
6876 HREF=
"#FORCEDIRECTORYMODE"
6884 > parameter to cause particular mode
6885 bits to always be set on created directories.
</P
6896 > parameter for masking mode bits on created files,
6898 HREF=
"#DIRECTORYSECURITYMASK"
6908 >Also refer to the
<A
6909 HREF=
"#INHERITPERMISSIONS"
6913 > inherit permissions
</I
6920 >directory mask =
0755</B
6925 >directory mask =
0775</B
6930 NAME=
"DIRECTORYMODE"
6932 >directory mode (S)
</DT
6936 HREF=
"#DIRECTORYMASK"
6947 NAME=
"DIRECTORYSECURITYMASK"
6949 >directory security mask (S)
</DT
6952 >This parameter controls what UNIX permission bits
6953 can be modified when a Windows NT client is manipulating the UNIX
6954 permission on a directory using the native NT security dialog
6957 >This parameter is applied as a mask (AND'ed with) to
6958 the changed permission bits, thus preventing any bits not in
6959 this mask from being modified. Essentially, zero bits in this
6960 mask may be treated as a set of bits the user is not allowed
6963 >If not set explicitly this parameter is set to
0777
6964 meaning a user is allowed to modify all the user/group/world
6965 permissions on a directory.
</P
6969 > that users who can access the
6970 Samba server through other means can easily bypass this restriction,
6971 so it is primarily useful for standalone
"appliance" systems.
6972 Administrators of most normal systems will probably want to leave
6973 it as the default of
<TT
6979 HREF=
"#FORCEDIRECTORYSECURITYMODE"
6983 > force directory security mode
</I
6987 HREF=
"#SECURITYMASK"
6996 HREF=
"#FORCESECURITYMODE"
7000 >force security mode
7008 >directory security mask =
0777</B
7013 >directory security mask =
0700</B
7018 NAME=
"DISABLESPOOLSS"
7020 >disable spoolss (G)
</DT
7023 >Enabling this parameter will disables Samba's support
7024 for the SPOOLSS set of MS-RPC's and will yield identical behavior
7025 as Samba
2.0.x. Windows NT/
2000 clients will downgrade to using
7026 Lanman style printing commands. Windows
9x/ME will be uneffected by
7027 the parameter. However, this will also disable the ability to upload
7028 printer drivers to a Samba server via the Windows NT Add Printer
7029 Wizard or by using the NT printer properties dialog window. It will
7030 also disable the capability of Windows NT/
2000 clients to download
7031 print drivers from the Samba host upon demand.
7033 >Be very careful about enabling this parameter.
</EM
7038 HREF=
"#USECLIENTDRIVER"
7039 >use client driver
</A
7045 >disable spoolss = no
</B
7060 when acting as a WINS server and finding that a NetBIOS name has not
7061 been registered, should treat the NetBIOS name word-for-word as a DNS
7062 name and do a lookup with the DNS server for that name on behalf of
7063 the name-querying client.
</P
7065 >Note that the maximum length for a NetBIOS name is
15
7066 characters, so the DNS name (or DNS alias) can likewise only be
7067 15 characters, maximum.
</P
7072 > spawns a second copy of itself to do the
7073 DNS name lookup requests, as doing a name lookup is a blocking
7076 >See also the parameter
<A
7093 NAME=
"DOMAINADMINGROUP"
7095 >domain admin group (G)
</DT
7098 >This parameter is intended as a temporary solution
7099 to enable users to be a member of the
"Domain Admins" group when
7100 a Samba host is acting as a PDC. A complete solution will be provided
7101 by a system for mapping Windows NT/
2000 groups onto UNIX groups.
7102 Please note that this parameter has a somewhat confusing name. It
7103 accepts a list of usernames and of group names in standard
7111 HREF=
"#DOMAINGUESTGROUP"
7120 HREF=
"#DOMAINLOGONS"
7132 >no domain administrators
</EM
7137 >domain admin group = root @wheel
</B
7142 NAME=
"DOMAINGUESTGROUP"
7144 >domain guest group (G)
</DT
7147 >This parameter is intended as a temporary solution
7148 to enable users to be a member of the
"Domain Guests" group when
7149 a Samba host is acting as a PDC. A complete solution will be provided
7150 by a system for mapping Windows NT/
2000 groups onto UNIX groups.
7151 Please note that this parameter has a somewhat confusing name. It
7152 accepts a list of usernames and of group names in standard
7160 HREF=
"#DOMAINADMINGROUP"
7169 HREF=
"#DOMAINLOGONS"
7181 >no domain guests
</EM
7186 >domain guest group = nobody @guest
</B
7193 >domain logons (G)
</DT
7199 >, the Samba server will serve
7200 Windows
95/
98 Domain logons for the
<A
7208 > it is in. Samba
2.2 also
7209 has limited capability to act as a domain controller for Windows
7210 NT
4 Domains. For more details on setting up this feature see
7211 the Samba-PDC-HOWTO included in the
<TT
7215 directory shipped with the source code.
</P
7219 >domain logons = no
</B
7226 >domain master (G)
</DT
7236 > to enable WAN-wide browse list
7237 collation. Setting this option causes
<B
7241 claim a special domain specific NetBIOS name that identifies
7242 it as a domain master browser for its given
<A
7250 >. Local master browsers
7256 > on broadcast-isolated
7257 subnets will give this
<B
7260 > their local browse lists,
7269 for a complete copy of the browse list for the whole wide area
7270 network. Browser clients will then contact their local master browser,
7271 and will receive the domain-wide browse list, instead of just the list
7272 for their broadcast-isolated subnet.
</P
7274 >Note that Windows NT Primary Domain Controllers expect to be
7275 able to claim this
<TT
7281 NetBIOS name that identifies them as domain master browsers for
7287 > by default (i.e. there is no
7288 way to prevent a Windows NT PDC from attempting to do this). This
7289 means that if this parameter is set and
<B
7293 the special name for a
<TT
7299 NT PDC is able to do so then cross subnet browsing will behave
7300 strangely and may fail.
</P
7303 HREF=
"#DOMAINLOGONS"
7306 >domain logons = yes
</B
7309 >, then the default behavior is to enable the
<TT
7321 not enabled (the default setting), then neither will
<TT
7327 > be enabled by default.
</P
7331 >domain master = auto
</B
7338 >dont descend (S)
</DT
7341 >There are certain directories on some systems
7345 > tree under Linux) that are either not
7346 of interest to clients or are infinitely deep (recursive). This
7347 parameter allows you to specify a comma-delimited list of directories
7348 that the server should always show as empty.
</P
7350 >Note that Samba can be very fussy about the exact format
7351 of the
"dont descend" entries. For example you may need
<TT
7354 > instead of just
<TT
7358 Experimentation is the best policy :-)
</P
7361 >none (i.e., all directories are OK
7367 >dont descend = /proc,/dev
</B
7374 >dos filemode (S)
</DT
7377 > The default behavior in Samba is to provide
7378 UNIX-like behavior where only the owner of a file/directory is
7379 able to change the permissions on it. However, this behavior
7380 is often confusing to DOS/Windows users. Enabling this parameter
7381 allows a user who has write access to the file (by whatever
7382 means) to modify the permissions on it. Note that a user
7383 belonging to the group owning the file will not be allowed to
7384 change permissions if the group is only granted read access.
7385 Ownership of the file/directory is not changed, only the permissions
7390 >dos filemode = no
</B
7395 NAME=
"DOSFILETIMERESOLUTION"
7397 >dos filetime resolution (S)
</DT
7400 >Under the DOS and Windows FAT filesystem, the finest
7401 granularity on time resolution is two seconds. Setting this parameter
7402 for a share causes Samba to round the reported time down to the
7403 nearest two second boundary when a query call that requires one second
7404 resolution is made to
<A
7414 >This option is mainly used as a compatibility option for Visual
7415 C++ when used against Samba shares. If oplocks are enabled on a
7416 share, Visual C++ uses two different time reading calls to check if a
7417 file has changed since it was last read. One of these calls uses a
7418 one-second granularity, the other uses a two second granularity. As
7419 the two second call rounds any odd second down, then if the file has a
7420 timestamp of an odd number of seconds then the two timestamps will not
7421 match and Visual C++ will keep reporting the file has changed. Setting
7422 this option causes the two timestamps to match, and Visual C++ is
7427 >dos filetime resolution = no
</B
7434 >dos filetimes (S)
</DT
7437 >Under DOS and Windows, if a user can write to a
7438 file they can change the timestamp on it. Under POSIX semantics,
7439 only the owner of the file or root may change the timestamp. By
7440 default, Samba runs with POSIX semantics and refuses to change the
7441 timestamp on a file if the user
<B
7445 on behalf of is not the file owner. Setting this option to
<TT
7448 > allows DOS semantics and
<A
7452 > will change the file
7453 timestamp as DOS requires.
</P
7457 >dos filetimes = no
</B
7462 NAME=
"ENCRYPTPASSWORDS"
7464 >encrypt passwords (G)
</DT
7467 >This boolean controls whether encrypted passwords
7468 will be negotiated with the client. Note that Windows NT
4.0 SP3 and
7469 above and also Windows
98 will by default expect encrypted passwords
7470 unless a registry entry is changed. To use encrypted passwords in
7471 Samba see the file ENCRYPTION.txt in the Samba documentation
7475 > shipped with the source code.
</P
7477 >In order for encrypted passwords to work correctly
7486 have access to a local
<A
7487 HREF=
"smbpasswd.5.html"
7495 HREF=
"smbpasswd.8.html"
7501 > program for information on how to set up
7502 and maintain this file), or set the
<A
7504 >security = [server|domain|ads]
</A
7509 > to authenticate against another
7514 >encrypt passwords = yes
</B
7519 NAME=
"ENHANCEDBROWSING"
7521 >enhanced browsing (G)
</DT
7524 >This option enables a couple of enhancements to
7525 cross-subnet browse propagation that have been added in Samba
7526 but which are not standard in Microsoft implementations.
7529 >The first enhancement to browse propagation consists of a regular
7530 wildcard query to a Samba WINS server for all Domain Master Browsers,
7531 followed by a browse synchronization with each of the returned
7532 DMBs. The second enhancement consists of a regular randomised browse
7533 synchronization with all currently known DMBs.
</P
7535 >You may wish to disable this option if you have a problem with empty
7536 workgroups not disappearing from browse lists. Due to the restrictions
7537 of the browse protocols these enhancements can cause a empty workgroup
7538 to stay around forever which can be annoying.
</P
7540 >In general you should leave this option enabled as it makes
7541 cross-subnet browse propagation much more reliable.
</P
7545 >enhanced browsing = yes
</B
7550 NAME=
"ENUMPORTSCOMMAND"
7552 >enumports command (G)
</DT
7555 >The concept of a
"port" is fairly foreign
7556 to UNIX hosts. Under Windows NT/
2000 print servers, a port
7557 is associated with a port monitor and generally takes the form of
7558 a local port (i.e. LPT1:, COM1:, FILE:) or a remote port
7559 (i.e. LPD Port Monitor, etc...). By default, Samba has only one
7562 >"Samba Printer Port"</TT
7564 Windows NT/
2000, all printers must have a valid port name.
7565 If you wish to have a list of ports displayed (
<B
7569 > does not use a port name for anything) other than
7572 >"Samba Printer Port"</TT
7577 >enumports command
</I
7580 a program which should generate a list of ports, one per line,
7581 to standard output. This listing will then be used in response
7582 to the level
1 and
2 EnumPorts() RPC.
</P
7585 >no enumports command
</EM
7590 >enumports command = /usr/bin/listports
7601 >This is a synonym for
<A
7613 NAME=
"FAKEDIRECTORYCREATETIMES"
7615 >fake directory create times (S)
</DT
7618 >NTFS and Windows VFAT file systems keep a create
7619 time for all files and directories. This is not the same as the
7620 ctime - status change time - that Unix keeps, so Samba by default
7621 reports the earliest of the various times Unix does keep. Setting
7622 this parameter for a share causes Samba to always report midnight
7623 1-
1-
1980 as the create time for directories.
</P
7625 >This option is mainly used as a compatibility option for
7626 Visual C++ when used against Samba shares. Visual C++ generated
7627 makefiles have the object directory as a dependency for each object
7628 file, and a make rule to create the directory. Also, when NMAKE
7629 compares timestamps it uses the creation time when examining a
7630 directory. Thus the object directory will be created if it does not
7631 exist, but once it does exist it will always have an earlier
7632 timestamp than the object files it contains.
</P
7634 >However, Unix time semantics mean that the create time
7635 reported by Samba will be updated whenever a file is created or
7636 or deleted in the directory. NMAKE finds all object files in
7637 the object directory. The timestamp of the last one built is then
7638 compared to the timestamp of the object directory. If the
7639 directory's timestamp if newer, then all object files
7640 will be rebuilt. Enabling this option
7641 ensures directories always predate their contents and an NMAKE build
7642 will proceed as expected.
</P
7646 >fake directory create times = no
</B
7653 >fake oplocks (S)
</DT
7656 >Oplocks are the way that SMB clients get permission
7657 from a server to locally cache file operations. If a server grants
7658 an oplock (opportunistic lock) then the client is free to assume
7659 that it is the only one accessing the file and it will aggressively
7660 cache file data. With some oplock types the client may even cache
7661 file open/close operations. This can give enormous performance benefits.
7666 >fake oplocks = yes
</B
7675 always grant oplock requests no matter how many clients are using
7678 >It is generally much better to use the real
<A
7687 than this parameter.
</P
7689 >If you enable this option on all read-only shares or
7690 shares that you know will only be accessed from one client at a
7691 time such as physically read-only media like CDROMs, you will see
7692 a big performance improvement on many operations. If you enable
7693 this option on shares where multiple clients may be accessing the
7694 files read-write at the same time you can get data corruption. Use
7695 this option carefully!
</P
7699 >fake oplocks = no
</B
7704 NAME=
"FOLLOWSYMLINKS"
7706 >follow symlinks (S)
</DT
7709 >This parameter allows the Samba administrator
7718 from following symbolic links in a particular share. Setting this
7722 > prevents any file or directory
7723 that is a symbolic link from being followed (the user will get an
7724 error). This option is very useful to stop users from adding a
7725 symbolic link to
<TT
7729 directory for instance. However it will slow filename lookups
7732 >This option is enabled (i.e.
<B
7736 follow symbolic links) by default.
</P
7740 >follow symlinks = yes
</B
7745 NAME=
"FORCECREATEMODE"
7747 >force create mode (S)
</DT
7750 >This parameter specifies a set of UNIX mode bit
7751 permissions that will
<EM
7754 file created by Samba. This is done by bitwise 'OR'ing these bits onto
7755 the mode bits of a file that is being created or having its
7756 permissions changed. The default for this parameter is (in octal)
7757 000. The modes in this parameter are bitwise 'OR'ed onto the file
7758 mode after the mask set in the
<TT
7764 parameter is applied.
</P
7766 >See also the parameter
<A
7775 > for details on masking mode bits on files.
</P
7778 HREF=
"#INHERITPERMISSIONS"
7790 >force create mode =
000</B
7795 >force create mode =
0755</B
7798 >would force all created files to have read and execute
7799 permissions set for 'group' and 'other' as well as the
7800 read/write/execute bits set for the 'user'.
</P
7804 NAME=
"FORCEDIRECTORYMODE"
7806 >force directory mode (S)
</DT
7809 >This parameter specifies a set of UNIX mode bit
7810 permissions that will
<EM
7812 > be set on a directory
7813 created by Samba. This is done by bitwise 'OR'ing these bits onto the
7814 mode bits of a directory that is being created. The default for this
7815 parameter is (in octal)
0000 which will not add any extra permission
7816 bits to a created directory. This operation is done after the mode
7817 mask in the parameter
<TT
7825 >See also the parameter
<A
7826 HREF=
"#DIRECTORYMASK"
7833 > for details on masking mode bits
7834 on created directories.
</P
7837 HREF=
"#INHERITPERMISSIONS"
7841 > inherit permissions
</I
7848 >force directory mode =
000</B
7853 >force directory mode =
0755</B
7856 >would force all created directories to have read and execute
7857 permissions set for 'group' and 'other' as well as the
7858 read/write/execute bits set for the 'user'.
</P
7862 NAME=
"FORCEDIRECTORYSECURITYMODE"
7865 security mode (S)
</DT
7868 >This parameter controls what UNIX permission bits
7869 can be modified when a Windows NT client is manipulating the UNIX
7870 permission on a directory using the native NT security dialog box.
</P
7872 >This parameter is applied as a mask (OR'ed with) to the
7873 changed permission bits, thus forcing any bits in this mask that
7874 the user may have modified to be on. Essentially, one bits in this
7875 mask may be treated as a set of bits that, when modifying security
7876 on a directory, the user has always set to be 'on'.
</P
7878 >If not set explicitly this parameter is
000, which
7879 allows a user to modify all the user/group/world permissions on a
7880 directory without restrictions.
</P
7884 > that users who can access the
7885 Samba server through other means can easily bypass this restriction,
7886 so it is primarily useful for standalone
"appliance" systems.
7887 Administrators of most normal systems will probably want to leave
7891 HREF=
"#DIRECTORYSECURITYMASK"
7895 > directory security mask
</I
7899 HREF=
"#SECURITYMASK"
7908 HREF=
"#FORCESECURITYMODE"
7912 >force security mode
7920 >force directory security mode =
0</B
7925 >force directory security mode =
700</B
7932 >force group (S)
</DT
7935 >This specifies a UNIX group name that will be
7936 assigned as the default primary group for all users connecting
7937 to this service. This is useful for sharing files by ensuring
7938 that all access to files on service will use the named group for
7939 their permissions checking. Thus, by assigning permissions for this
7940 group to the files and directories within this service the Samba
7941 administrator can restrict or allow sharing of these files.
</P
7943 >In Samba
2.0.5 and above this parameter has extended
7944 functionality in the following way. If the group name listed here
7945 has a '+' character prepended to it then the current user accessing
7946 the share only has the primary group default assigned to this group
7947 if they are already assigned as a member of that group. This allows
7948 an administrator to decide that only users who are already in a
7949 particular group will create files with group ownership set to that
7950 group. This gives a finer granularity of ownership assignment. For
7951 example, the setting
<TT
7953 >force group = +sys
</TT
7955 that only users who are already in group sys will have their default
7956 primary group assigned to sys when accessing this Samba share. All
7957 other users will retain their ordinary primary group.
</P
7968 > parameter is also set the group specified in
7974 > will override the primary group
7994 >no forced group
</EM
7999 >force group = agroup
</B
8004 NAME=
"FORCESECURITYMODE"
8006 >force security mode (S)
</DT
8009 >This parameter controls what UNIX permission
8010 bits can be modified when a Windows NT client is manipulating
8011 the UNIX permission on a file using the native NT security dialog
8014 >This parameter is applied as a mask (OR'ed with) to the
8015 changed permission bits, thus forcing any bits in this mask that
8016 the user may have modified to be on. Essentially, one bits in this
8017 mask may be treated as a set of bits that, when modifying security
8018 on a file, the user has always set to be 'on'.
</P
8020 >If not set explicitly this parameter is set to
0,
8021 and allows a user to modify all the user/group/world permissions on a file,
8022 with no restrictions.
</P
8026 > that users who can access
8027 the Samba server through other means can easily bypass this restriction,
8028 so it is primarily useful for standalone
"appliance" systems.
8029 Administrators of most normal systems will probably want to leave
8030 this set to
0000.
</P
8033 HREF=
"#FORCEDIRECTORYSECURITYMODE"
8037 > force directory security mode
</I
8042 HREF=
"#DIRECTORYSECURITYMASK"
8051 HREF=
"#SECURITYMASK"
8062 >force security mode =
0</B
8067 >force security mode =
700</B
8077 >This specifies a UNIX user name that will be
8078 assigned as the default user for all users connecting to this service.
8079 This is useful for sharing files. You should also use it carefully
8080 as using it incorrectly can cause security problems.
</P
8082 >This user name only gets used once a connection is established.
8083 Thus clients still need to connect as a valid user and supply a
8084 valid password. Once connected, all file operations will be performed
8085 as the
"forced user", no matter what username the client connected
8086 as. This can be very useful.
</P
8088 >In Samba
2.0.5 and above this parameter also causes the
8089 primary group of the forced user to be used as the primary group
8090 for all file activity. Prior to
2.0.5 the primary group was left
8091 as the primary group of the connecting user (this was a bug).
</P
8110 >force user = auser
</B
8120 >This parameter allows the administrator to
8121 configure the string that specifies the type of filesystem a share
8122 is using that is reported by
<A
8130 > when a client queries the filesystem type
8131 for a share. The default type is
<TT
8135 compatibility with Windows NT but this can be changed to other
8159 >getwd cache (G)
</DT
8162 >This is a tuning option. When this is enabled a
8163 caching algorithm will be used to reduce the time taken for getwd()
8164 calls. This can have a significant impact on performance, especially
8174 >parameter is set to
<TT
8181 >getwd cache = yes
</B
8206 >guest account (S)
</DT
8209 >This is a username which will be used for access
8210 to services which are specified as
<A
8218 > (see below). Whatever privileges this
8219 user has will be available to any client connecting to the guest service.
8220 Typically this user will exist in the password file, but will not
8221 have a valid login. The user account
"ftp" is often a good choice
8222 for this parameter. If a username is specified in a given service,
8223 the specified username overrides this one.
</P
8225 >One some systems the default guest account
"nobody" may not
8226 be able to print. Use another account in this case. You should test
8227 this by trying to log in as your guest user (perhaps by using the
8231 > command) and trying to print using the
8232 system print command such as
<B
8241 >specified at compile time, usually
8247 >guest account = ftp
</B
8257 >If this parameter is
<TT
8261 a service, then no password is required to connect to the service.
8262 Privileges will be those of the
<A
8263 HREF=
"#GUESTACCOUNT"
8272 >See the section below on
<A
8280 > for more information about this option.
8295 >If this parameter is
<TT
8299 a service, then only guest connections to the service are permitted.
8300 This parameter will have no effect if
<A
8308 > is not set for the service.
</P
8310 >See the section below on
<A
8318 > for more information about this option.
8330 >hide dot files (S)
</DT
8333 >This is a boolean parameter that controls whether
8334 files starting with a dot appear as hidden files.
</P
8338 >hide dot files = yes
</B
8348 >This is a list of files or directories that are not
8349 visible but are accessible. The DOS 'hidden' attribute is applied
8350 to any files or directories that match.
</P
8352 >Each entry in the list must be separated by a '/',
8353 which allows spaces to be included in the entry. '*'
8354 and '?' can be used to specify multiple files or directories
8355 as in DOS wildcards.
</P
8357 >Each entry must be a Unix path, not a DOS path and must
8358 not include the Unix directory separator '/'.
</P
8360 >Note that the case sensitivity option is applicable
8363 >Setting this parameter will affect the performance of Samba,
8364 as it will be forced to check all files and directories for a match
8365 as they are scanned.
</P
8368 HREF=
"#HIDEDOTFILES"
8385 HREF=
"#CASESENSITIVE"
8395 >no file are hidden
</EM
8401 /.*/DesktopFolderDB/TrashFor%m/resource.frk/
</B
8404 >The above example is based on files that the Macintosh
8405 SMB client (DAVE) available from
<A
8406 HREF=
"http://www.thursby.com"
8410 > creates for internal use, and also still hides
8411 all files beginning with a dot.
</P
8415 NAME=
"HIDELOCALUSERS"
8417 >hide local users(G)
</DT
8420 >This parameter toggles the hiding of local UNIX
8421 users (root, wheel, floppy, etc) from remote clients.
</P
8425 >hide local users = no
</B
8430 NAME=
"HIDEUNREADABLE"
8432 >hide unreadable (S)
</DT
8435 >This parameter prevents clients from seeing the
8436 existance of files that cannot be read. Defaults to off.
</P
8440 >hide unreadable = no
</B
8447 >homedir map (G)
</DT
8475 > then this parameter
8476 specifies the NIS (or YP) map from which the server for the user's
8477 home directory should be extracted. At present, only the Sun
8478 auto.home map format is understood. The form of the map is:
</P
8482 >username server:/some/file/system
</B
8485 >and the program will extract the servername from before
8486 the first ':'. There should probably be a better parsing system
8487 that copes with different map formats and also Amd (another
8488 automounter) maps.
</P
8492 >A working NIS client is required on
8493 the system for this option to work.
</P
8505 HREF=
"#DOMAINLOGONS"
8517 >homedir map =
<empty string
></B
8522 >homedir map = amd.homedir
</B
8532 >This boolean parameter is only available
8533 if Samba has been configured and compiled with the
<B
8536 > option. If set to
<TT
8540 Samba will act as a Dfs server, and allow Dfs-aware clients
8541 to browse Dfs trees hosted on the server.
</P
8551 > share level parameter. For
8552 more information on setting up a Dfs tree on Samba,
8554 HREF=
"msdfs_setup.html"
8556 >msdfs_setup.html
</A
8569 >hosts allow (S)
</DT
8572 >A synonym for this parameter is
<TT
8580 >This parameter is a comma, space, or tab delimited
8581 set of hosts which are permitted to access a service.
</P
8583 >If specified in the [global] section then it will
8584 apply to all services, regardless of whether the individual
8585 service has a different setting.
</P
8587 >You can specify the hosts by name or IP number. For
8588 example, you could restrict access to only the hosts on a
8589 Class C subnet with something like
<B
8591 >allow hosts =
150.203.5.
8593 >. The full syntax of the list is described in the man
8596 >hosts_access(
5)
</TT
8597 >. Note that this man
8598 page may not be present on your system, so a brief description will
8599 be given here also.
</P
8601 >Note that the localhost address
127.0.0.1 will always
8602 be allowed access unless specifically denied by a
<A
8612 >You can also specify hosts by network/netmask pairs and
8613 by netgroup names if your system supports netgroups. The
8616 > keyword can also be used to limit a
8617 wildcard list. The following examples may provide some help:
</P
8619 >Example
1: allow all IPs in
150.203.*.*; except one
</P
8623 >hosts allow =
150.203. EXCEPT
150.203.6.66</B
8626 >Example
2: allow hosts that match the given network/netmask
</P
8630 >hosts allow =
150.203.15.0/
255.255.255.0</B
8633 >Example
3: allow a couple of hosts
</P
8637 >hosts allow = lapland, arvidsjaur
</B
8640 >Example
4: allow only hosts in NIS netgroup
"foonet", but
8641 deny access from one particular host
</P
8645 >hosts allow = @foonet
</B
8650 >hosts deny = pirate
</B
8653 >Note that access still requires suitable user-level passwords.
</P
8656 HREF=
"testparm.1.html"
8663 > for a way of testing your host access to see if it does
8667 >none (i.e., all hosts permitted access)
8673 >allow hosts =
150.203.5. myhost.mynet.edu.au
8684 >The opposite of
<TT
8690 - hosts listed here are
<EM
8692 > permitted access to
8693 services unless the specific services have their own lists to override
8694 this one. Where the lists conflict, the
<TT
8700 list takes precedence.
</P
8703 >none (i.e., no hosts specifically excluded)
8709 >hosts deny =
150.203.4. badhost.mynet.edu.au
8717 >hosts equiv (G)
</DT
8720 >If this global parameter is a non-null string,
8721 it specifies the name of a file to read for the names of hosts
8722 and users who will be allowed access without specifying a password.
8725 >This is not be confused with
<A
8733 > which is about hosts
8734 access to services and is more useful for guest services.
<TT
8739 > may be useful for NT clients which will
8740 not supply passwords to Samba.
</P
8750 > can be a major security hole. This is because you are
8751 trusting the PC to supply the correct username. It is very easy to
8752 get a PC to supply a false username. I recommend that the
8758 > option be only used if you really
8759 know what you are doing, or perhaps on a home network where you trust
8760 your spouse and kids. And only if you
<EM
8766 >no host equivalences
</EM
8771 >hosts equiv = /etc/hosts.equiv
</B
8781 >This allows you to include one config file
8782 inside another. The file is included literally, as though typed
8785 >It takes the standard substitutions, except
<TT
8805 >no file included
</EM
8810 >include = /usr/local/samba/lib/admin_smb.conf
8816 NAME=
"INHERITPERMISSIONS"
8818 >inherit permissions (S)
</DT
8821 >The permissions on new files and directories
8822 are normally governed by
<A
8831 HREF=
"#DIRECTORYMASK"
8839 HREF=
"#FORCECREATEMODE"
8843 >force create mode
</I
8848 HREF=
"#FORCEDIRECTORYMODE"
8856 > but the boolean inherit
8857 permissions parameter overrides this.
</P
8859 >New directories inherit the mode of the parent directory,
8860 including bits such as setgid.
</P
8862 >New files inherit their read/write bits from the parent
8863 directory. Their execute bits continue to be determined by
8893 >Note that the setuid bit is
<EM
8896 inheritance (the code explicitly prohibits this).
</P
8898 >This can be particularly useful on large systems with
8899 many users, perhaps several thousand, to allow a single [homes]
8900 share to be used flexibly by each user.
</P
8912 HREF=
"#DIRECTORYMASK"
8920 HREF=
"#FORCECREATEMODE"
8924 >force create mode
</I
8928 HREF=
"#FORCEDIRECTORYMODE"
8932 >force directory mode
</I
8940 >inherit permissions = no
</B
8950 >This option allows you to override the default
8951 network interfaces list that Samba will use for browsing, name
8952 registration and other NBT traffic. By default Samba will query
8953 the kernel for the list of all active interfaces and use any
8954 interfaces except
127.0.0.1 that are broadcast capable.
</P
8956 >The option takes a list of interface strings. Each string
8957 can be in any of the following forms:
</P
8963 >a network interface name (such as eth0).
8964 This may include shell-like wildcards so eth* will match
8965 any interface starting with the substring
"eth"</P
8969 >an IP address. In this case the netmask is
8970 determined from the list of interfaces obtained from the
8975 >an IP/mask pair.
</P
8979 >a broadcast/mask pair.
</P
8983 >The
"mask" parameters can either be a bit length (such
8984 as
24 for a C class network) or a full netmask in dotted
8987 >The
"IP" parameters above can either be a full dotted
8988 decimal IP address or a hostname which will be looked up via
8989 the OS's normal hostname resolution mechanisms.
</P
8991 >For example, the following line:
</P
8995 >interfaces = eth0
192.168.2.10/
24 192.168.3.10/
255.255.255.0
8999 >would configure three network interfaces corresponding
9000 to the eth0 device and IP addresses
192.168.2.10 and
192.168.3.10.
9001 The netmasks of the latter two interfaces would be set to
255.255.255.0.
</P
9004 HREF=
"#BINDINTERFACESONLY"
9015 >all active interfaces except
127.0.0.1
9016 that are broadcast capable
</EM
9023 >invalid users (S)
</DT
9026 >This is a list of users that should not be allowed
9027 to login to this service. This is really a
<EM
9030 check to absolutely ensure an improper setting does not breach
9033 >A name starting with a '@' is interpreted as an NIS
9034 netgroup first (if your system supports NIS), and then as a UNIX
9035 group if the name was not found in the NIS netgroup database.
</P
9037 >A name starting with '+' is interpreted only
9038 by looking in the UNIX group database. A name starting with
9039 '
&' is interpreted only by looking in the NIS netgroup database
9040 (this requires NIS to be working on your system). The characters
9041 '+' and '
&' may be used at the start of the name in either order
9048 UNIX group database, followed by the NIS netgroup database, and
9054 > means check the NIS
9055 netgroup database, followed by the UNIX group database (the
9056 same as the '@' prefix).
</P
9058 >The current servicename is substituted for
<TT
9064 This is useful in the [homes] section.
</P
9078 >no invalid users
</EM
9083 >invalid users = root fred admin @wheel
9094 >The value of the parameter (an integer) represents
9095 the number of seconds between
<TT
9101 packets. If this parameter is zero, no keepalive packets will be
9102 sent. Keepalive packets, if sent, allow the server to tell whether
9103 a client is still present and responding.
</P
9105 >Keepalives should, in general, not be needed if the socket
9106 being used has the SO_KEEPALIVE attribute set on it (see
<A
9107 HREF=
"#SOCKETOPTIONS"
9115 Basically you should only use this option if you strike difficulties.
</P
9129 NAME=
"KERNELOPLOCKS"
9131 >kernel oplocks (G)
</DT
9134 >For UNIXes that support kernel based
<A
9143 (currently only IRIX and the Linux
2.4 kernel), this parameter
9144 allows the use of them to be turned on or off.
</P
9146 >Kernel oplocks support allows Samba
<TT
9152 > to be broken whenever a local UNIX process or NFS operation
9153 accesses a file that
<A
9161 > has oplocked. This allows complete data consistency between
9162 SMB/CIFS, NFS and local file access (and is a
<EM
9165 cool feature :-).
</P
9167 >This parameter defaults to
<TT
9170 >, but is translated
9171 to a no-op on systems that no not have the necessary kernel support.
9172 You should never need to touch this parameter.
</P
9184 HREF=
"#LEVEL2OPLOCKS"
9196 >kernel oplocks = yes
</B
9203 >lanman auth (G)
</DT
9206 >This parameter determines whether or not
<A
9211 attempt to authenticate users using the LANMAN password hash.
9212 If disabled, only clients which support NT password hashes (e.g. Windows
9213 NT/
2000 clients, smbclient, etc... but not Windows
95/
98 or the MS DOS
9214 network client) will be able to connect to the Samba host.
</P
9218 >lanman auth = yes
</B
9223 NAME=
"LARGEREADWRITE"
9225 >large readwrite (G)
</DT
9228 >This parameter determines whether or not
<A
9233 supports the new
64k streaming read and write varient SMB requests introduced
9234 with Windows
2000. Note that due to Windows
2000 client redirector bugs
9235 this requires Samba to be running on a
64-bit capable operating system such
9236 as IRIX, Solaris or a Linux
2.4 kernel. Can improve performance by
10% with
9237 Windows
2000 clients. Defaults to on. Not as tested as some other Samba
9243 >large readwrite = yes
</B
9250 >ldap admin dn (G)
</DT
9253 >This parameter is only available if Samba has been
9254 configure to include the
<B
9258 at compile time. This option should be considered experimental and
9259 under active development.
9267 > defines the Distinguished
9268 Name (DN) name used by Samba to contact the
<A
9272 > when retreiving user account information. The
<TT
9278 > is used in conjunction with the admin dn password
9281 >private/secrets.tdb
</TT
9284 HREF=
"smbpasswd.8.html"
9291 page for more information on how to accmplish this.
9302 >ldap filter (G)
</DT
9305 >This parameter is only available if Samba has been
9306 configure to include the
<B
9310 at compile time. This option should be considered experimental and
9311 under active development.
9314 > This parameter specifies the RFC
2254 compliant LDAP search filter.
9315 The default is to match the login name with the
<TT
9319 attribute for all entries matching the
<TT
9323 objectclass. Note that this filter should only return one entry.
9328 >ldap filter = (
&(uid=%u)(objectclass=sambaAccount))
</B
9338 >This parameter is only available if Samba has been
9339 configure to include the
<B
9343 at compile time. This option should be considered experimental and
9344 under active development.
9347 > This option is used to control the tcp port number used to contact
9357 The default is to use the stand LDAPS port
636.
9375 >ldap server (G)
</DT
9378 >This parameter is only available if Samba has been
9379 configure to include the
<B
9383 at compile time. This option should be considered experimental and
9384 under active development.
9387 > This parameter should contains the FQDN of the ldap directory
9388 server which should be queried to locate user account information.
9393 >ldap server = localhost
</B
9403 >This parameter is only available if Samba has been
9404 configure to include the
<B
9408 at compile time. This option should be considered experimental and
9409 under active development.
9412 > This option is used to define whether or not Samba should
9413 use SSL when connecting to the
<A
9425 Samba SSL support which is enabled by specifying the
9449 > can be set to one of three values:
9453 > - Always use SSL when contacting the
9463 Never use SSL when querying the directory, or (c)
<TT
9467 - Use the LDAPv3 StartTLS extended operation
9468 (RFC2830) for communicating with the directory server.
9480 >ldap suffix (G)
</DT
9483 >This parameter is only available if Samba has been
9484 configure to include the
<B
9488 at compile time. This option should be considered experimental and
9489 under active development.
9498 NAME=
"LEVEL2OPLOCKS"
9500 >level2 oplocks (S)
</DT
9503 >This parameter controls whether Samba supports
9504 level2 (read-only) oplocks on a share.
</P
9506 >Level2, or read-only oplocks allow Windows NT clients
9507 that have an oplock on a file to downgrade from a read-write oplock
9508 to a read-only oplock once a second client opens the file (instead
9509 of releasing all oplocks on a second open, as in traditional,
9510 exclusive oplocks). This allows all openers of the file that
9511 support level2 oplocks to cache the file for read-ahead only (ie.
9512 they may not cache writes or lock requests) and increases performance
9513 for many accesses of files that are not commonly written (such as
9514 application .EXE files).
</P
9516 >Once one of the clients which have a read-only oplock
9517 writes to the file all clients are notified (no reply is needed
9518 or waited for) and told to break their oplocks to
"none" and
9519 delete any read-ahead caches.
</P
9521 >It is recommended that this parameter be turned on
9522 to speed access to shared executables.
</P
9524 >For more discussions on level2 oplocks see the CIFS spec.
</P
9527 HREF=
"#KERNELOPLOCKS"
9535 > are supported then level2 oplocks are
9536 not granted (even if this parameter is set to
<TT
9549 > parameter must be set to
<TT
9552 > on this share in order for
9553 this parameter to have any effect.
</P
9577 >level2 oplocks = yes
</B
9584 >lm announce (G)
</DT
9587 >This parameter determines if
<A
9594 > will produce Lanman announce
9595 broadcasts that are needed by OS/
2 clients in order for them to see
9596 the Samba server in their browse list. This parameter can have three
9607 >. The default is
<TT
9614 > Samba will never produce these
9615 broadcasts. If set to
<TT
9618 > Samba will produce
9619 Lanman announce broadcasts at a frequency set by the parameter
9629 Samba will not send Lanman announce broadcasts by default but will
9630 listen for them. If it hears such a broadcast on the wire it will
9631 then start sending them at a frequency set by the parameter
9652 >lm announce = auto
</B
9657 >lm announce = yes
</B
9664 >lm interval (G)
</DT
9667 >If Samba is set to produce Lanman announce
9668 broadcasts needed by OS/
2 clients (see the
<A
9676 > parameter) then this
9677 parameter defines the frequency in seconds with which they will be
9678 made. If this is set to zero then no Lanman announcements will be
9679 made despite the setting of the
<TT
9700 >lm interval =
60</B
9705 >lm interval =
120</B
9712 >load printers (G)
</DT
9715 >A boolean variable that controls whether all
9716 printers in the printcap will be loaded for browsing by default.
9725 >load printers = yes
</B
9732 >local master (G)
</DT
9735 >This option allows
<A
9742 > to try and become a local master browser
9743 on a subnet. If set to
<TT
9749 > will not attempt to become a local master browser
9750 on a subnet and will also lose in all browsing elections. By
9751 default this value is set to
<TT
9754 >. Setting this value to
<TT
9758 mean that Samba will
<EM
9761 browser on a subnet, just that
<B
9766 > in elections for local master browser.
</P
9768 >Setting this value to
<TT
9777 > to become a local master browser.
</P
9781 >local master = yes
</B
9792 HREF=
"#LOCKDIRECTORY"
9803 NAME=
"LOCKDIRECTORY"
9805 >lock directory (G)
</DT
9808 >This option specifies the directory where lock
9809 files will be placed. The lock files are used to implement the
9811 HREF=
"#MAXCONNECTIONS"
9823 >lock directory = ${prefix}/var/locks
</B
9828 >lock directory = /var/run/samba/locks
</B
9839 >This controls whether or not locking will be
9840 performed by the server in response to lock requests from the
9846 >, all lock and unlock
9847 requests will appear to succeed and all lock queries will report
9848 that the file in question is available for locking.
</P
9853 >, real locking will be performed
9858 > be useful for read-only
9859 filesystems which
<EM
9861 > not need locking (such as
9862 CDROM drives), although setting this parameter of
<TT
9866 is not really recommended even in this case.
</P
9868 >Be careful about disabling locking either globally or in a
9869 specific service, as lack of locking may result in data corruption.
9870 You should never need to set this parameter.
</P
9884 >This option allows you to override the name
9885 of the Samba log file (also known as the debug file).
</P
9887 >This option takes the standard substitutions, allowing
9888 you to have separate log files for each user or machine.
</P
9892 >log file = /usr/local/samba/var/log.%m
9903 >The value of the parameter (an integer) allows
9904 the debug level (logging level) to be specified in the
9908 > file. This is to give greater
9909 flexibility in the configuration of the system.
</P
9911 >The default will be the log level specified on
9912 the command line or level zero if none was specified.
</P
9923 >logon drive (G)
</DT
9926 >This parameter specifies the local path to
9927 which the home directory will be connected (see
<A
9936 and is only used by NT Workstations.
</P
9938 >Note that this option is only useful if Samba is set up as a
9943 >logon drive = z:
</B
9948 >logon drive = h:
</B
9958 >This parameter specifies the home directory
9959 location when a Win95/
98 or NT Workstation logs into a Samba PDC.
9960 It allows you to do
</P
9968 >NET USE H: /HOME
</B
9973 >from a command prompt, for example.
</P
9975 >This option takes the standard substitutions, allowing
9976 you to have separate logon scripts for each user or machine.
</P
9978 >This parameter can be used with Win9X workstations to ensure
9979 that roaming profiles are stored in a subdirectory of the user's
9980 home directory. This is done in the following way:
</P
9984 >logon home = \\%N\%U\profile
</B
9987 >This tells Samba to return the above string, with
9988 substitutions made when a client requests the info, generally
9989 in a NetUserGetInfo request. Win9X clients truncate the info to
9990 \\server\share when a user does
<B
9994 but use the whole string when dealing with profiles.
</P
9996 >Note that in prior versions of Samba, the
<A
10004 > was returned rather than
10014 > but allowed profiles outside the home directory.
10015 The current implementation is correct, and can be used for
10016 profiles if you use the above trick.
</P
10018 >This option is only useful if Samba is set up as a logon
10023 >logon home =
"\\%N\%U"</B
10028 >logon home =
"\\remote_smb_server\%U"</B
10036 >logon path (G)
</DT
10039 >This parameter specifies the home directory
10040 where roaming profiles (NTuser.dat etc files for Windows NT) are
10041 stored. Contrary to previous versions of these manual pages, it has
10042 nothing to do with Win
9X roaming profiles. To find out how to
10043 handle roaming profiles for Win
9X system, see the
<A
10053 >This option takes the standard substitutions, allowing you
10054 to have separate logon scripts for each user or machine. It also
10055 specifies the directory from which the
"Application Data",
10065 >network neighborhood
</TT
10070 and other folders, and their contents, are loaded and displayed on
10071 your Windows NT client.
</P
10073 >The share and the path must be readable by the user for
10074 the preferences and directories to be loaded onto the Windows NT
10075 client. The share must be writeable when the user logs in for the first
10076 time, in order that the Windows NT client can create the NTuser.dat
10077 and other directories.
</P
10079 >Thereafter, the directories and any of the contents can,
10080 if required, be made read-only. It is not advisable that the
10081 NTuser.dat file be made read-only - rename it to NTuser.man to
10082 achieve the desired effect (a
<EM
10087 >Windows clients can sometimes maintain a connection to
10088 the [homes] share, even though there is no user logged in.
10089 Therefore, it is vital that the logon path does not include a
10090 reference to the homes share (i.e. setting this parameter to
10091 \%N\%U\profile_path will cause problems).
</P
10093 >This option takes the standard substitutions, allowing
10094 you to have separate logon scripts for each user or machine.
</P
10096 >Note that this option is only useful if Samba is set up
10097 as a logon server.
</P
10101 >logon path = \\%N\%U\profile
</B
10106 >logon path = \\PROFILESERVER\PROFILE\%U
</B
10113 >logon script (G)
</DT
10116 >This parameter specifies the batch file (.bat) or
10117 NT command file (.cmd) to be downloaded and run on a machine when
10118 a user successfully logs in. The file must contain the DOS
10119 style CR/LF line endings. Using a DOS-style editor to create the
10120 file is recommended.
</P
10122 >The script must be a relative path to the [netlogon]
10123 service. If the [netlogon] service specifies a
<A
10133 >/usr/local/samba/netlogon
10137 >logon script = STARTUP.BAT
</B
10139 the file that will be downloaded is:
</P
10143 >/usr/local/samba/netlogon/STARTUP.BAT
</TT
10146 >The contents of the batch file are entirely your choice. A
10147 suggested command would be to add
<B
10149 >NET TIME \\SERVER /SET
10151 >, to force every machine to synchronize clocks with
10152 the same time server. Another use would be to add
<B
10155 U: \\SERVER\UTILS
</B
10156 > for commonly used utilities, or
<B
10158 > NET USE Q: \\SERVER\ISO9001_QA
</B
10161 >Note that it is particularly important not to allow write
10162 access to the [netlogon] share, or to grant users write permission
10163 on the batch files in a secure environment, as this would allow
10164 the batch files to be arbitrarily modified and security to be
10167 >This option takes the standard substitutions, allowing you
10168 to have separate logon scripts for each user or machine.
</P
10170 >This option is only useful if Samba is set up as a logon
10174 >no logon script defined
</EM
10179 >logon script = scripts\%U.bat
</B
10184 NAME=
"LPPAUSECOMMAND"
10186 >lppause command (S)
</DT
10189 >This parameter specifies the command to be
10190 executed on the server host in order to stop printing or spooling
10191 a specific print job.
</P
10193 >This command should be a program or script which takes
10194 a printer name and job number to pause the print job. One way
10195 of implementing this is by using job priorities, where jobs
10196 having a too low priority won't be sent to the printer.
</P
10203 > is given then the printer name
10204 is put in its place. A
<TT
10210 the job number (an integer). On HPUX (see
<TT
10222 to the lpq command, the job will show up with the correct status, i.e.
10223 if the job priority is lower than the set fence priority it will
10224 have the PAUSED status, whereas if the priority is equal or higher it
10225 will have the SPOOLED or PRINTING status.
</P
10227 >Note that it is good practice to include the absolute path
10228 in the lppause command as the PATH may not be available to the server.
</P
10241 >Default: Currently no default value is given to
10242 this string, unless the value of the
<TT
10251 >, in which case the default is :
</P
10255 >lp -i %p-%j -H hold
</B
10258 >or if the value of the
<TT
10267 >, then the default is:
</P
10271 >qstat -s -j%j -h
</B
10274 >Example for HPUX:
<B
10276 >lppause command = /usr/bin/lpalt
10282 NAME=
"LPQCACHETIME"
10284 >lpq cache time (G)
</DT
10287 >This controls how long lpq info will be cached
10288 for to prevent the
<B
10291 > command being called too
10292 often. A separate cache is kept for each variation of the
<B
10295 > command used by the system, so if you use different
10299 > commands for different users then they won't
10300 share cache information.
</P
10302 >The cache files are stored in
<TT
10306 where xxxx is a hash of the
<B
10309 > command in use.
</P
10311 >The default is
10 seconds, meaning that the cached results
10312 of a previous identical
<B
10315 > command will be used
10316 if the cached data is less than
10 seconds old. A large value may
10317 be advisable if your
<B
10320 > command is very slow.
</P
10322 >A value of
0 will disable caching completely.
</P
10337 >lpq cache time =
10</B
10342 >lpq cache time =
30</B
10349 >lpq command (S)
</DT
10352 >This parameter specifies the command to be
10353 executed on the server host in order to obtain
<B
10357 >-style printer status information.
</P
10359 >This command should be a program or script which
10360 takes a printer name as its only parameter and outputs printer
10361 status information.
</P
10363 >Currently eight styles of printer status information
10364 are supported; BSD, AIX, LPRNG, PLP, SYSV, HPUX, QNX and SOFTQ.
10365 This covers most UNIX systems. You control which type is expected
10373 >Some clients (notably Windows for Workgroups) may not
10374 correctly send the connection number for the printer they are
10375 requesting status information about. To get around this, the
10376 server reports on the first printer service connected to by the
10377 client. This only happens if the connection number sent is invalid.
</P
10384 > is given then the printer name
10385 is put in its place. Otherwise it is placed at the end of the
10388 >Note that it is good practice to include the absolute path
10398 > may not be available to the server.
</P
10412 >depends on the setting of
<TT
10422 >lpq command = /usr/bin/lpq -P%p
</B
10427 NAME=
"LPRESUMECOMMAND"
10429 >lpresume command (S)
</DT
10432 >This parameter specifies the command to be
10433 executed on the server host in order to restart or continue
10434 printing or spooling a specific print job.
</P
10436 >This command should be a program or script which takes
10437 a printer name and job number to resume the print job. See
10439 HREF=
"#LPPAUSECOMMAND"
10454 > is given then the printer name
10455 is put in its place. A
<TT
10461 the job number (an integer).
</P
10463 >Note that it is good practice to include the absolute path
10467 >lpresume command
</I
10469 > as the PATH may not
10470 be available to the server.
</P
10483 >Default: Currently no default value is given
10484 to this string, unless the value of the
<TT
10493 >, in which case the default is :
</P
10497 >lp -i %p-%j -H resume
</B
10500 >or if the value of the
<TT
10509 >, then the default is:
</P
10513 >qstat -s -j%j -r
</B
10516 >Example for HPUX:
<B
10518 >lpresume command = /usr/bin/lpalt
10526 >lprm command (S)
</DT
10529 >This parameter specifies the command to be
10530 executed on the server host in order to delete a print job.
</P
10532 >This command should be a program or script which takes
10533 a printer name and job number, and deletes the print job.
</P
10540 > is given then the printer name
10541 is put in its place. A
<TT
10547 the job number (an integer).
</P
10549 >Note that it is good practice to include the absolute
10555 > as the PATH may not be
10556 available to the server.
</P
10570 >depends on the setting of
<TT
10581 >lprm command = /usr/bin/lprm -P%p %j
10587 >lprm command = /usr/bin/cancel %p-%j
10593 NAME=
"MACHINEPASSWORDTIMEOUT"
10595 >machine password timeout (G)
</DT
10598 >If a Samba server is a member of a Windows
10599 NT Domain (see the
<A
10600 HREF=
"#SECURITYEQUALSDOMAIN"
10601 >security = domain
</A
10603 parameter) then periodically a running
<A
10607 > process will try and change the MACHINE ACCOUNT
10608 PASSWORD stored in the TDB called
<TT
10610 >private/secrets.tdb
10612 >. This parameter specifies how often this password
10613 will be changed, in seconds. The default is one week (expressed in
10614 seconds), the same as a Windows NT Domain member server.
</P
10617 HREF=
"smbpasswd.8.html"
10625 HREF=
"#SECURITYEQUALSDOMAIN"
10626 > security = domain
</A
10631 >machine password timeout =
604800</B
10638 >magic output (S)
</DT
10641 >This parameter specifies the name of a file
10642 which will contain output created by a magic script (see the
10644 HREF=
"#MAGICSCRIPT"
10652 parameter below).
</P
10654 >Warning: If two clients use the same
<TT
10660 > in the same directory the output file content
10665 >magic output =
<magic script name
>.out
10671 >magic output = myfile.txt
</B
10678 >magic script (S)
</DT
10681 >This parameter specifies the name of a file which,
10682 if opened, will be executed by the server when the file is closed.
10683 This allows a UNIX script to be sent to the Samba host and
10684 executed on behalf of the connected user.
</P
10686 >Scripts executed in this way will be deleted upon
10687 completion assuming that the user has the appropriate level
10688 of privilege and the file permissions allow the deletion.
</P
10690 >If the script generates output, output will be sent to
10691 the file specified by the
<A
10692 HREF=
"#MAGICOUTPUT"
10699 > parameter (see above).
</P
10701 >Note that some shells are unable to interpret scripts
10702 containing CR/LF instead of CR as
10703 the end-of-line marker. Magic scripts must be executable
10706 > on the host, which for some hosts and
10707 some shells will require filtering at the DOS end.
</P
10709 >Magic scripts are
<EM
10714 > be relied upon.
</P
10717 >None. Magic scripts disabled.
</EM
10722 >magic script = user.csh
</B
10729 >mangle case (S)
</DT
10732 >See the section on
<A
10739 >mangle case = no
</B
10746 >mangled map (S)
</DT
10749 >This is for those who want to directly map UNIX
10750 file names which cannot be represented on Windows/DOS. The mangling
10751 of names is not always what is needed. In particular you may have
10752 documents with file extensions that differ between DOS and UNIX.
10753 For example, under UNIX it is common to use
<TT
10757 for HTML files, whereas under Windows/DOS
<TT
10761 is more commonly used.
</P
10774 >mangled map = (*.html *.htm)
</B
10777 >One very useful case is to remove the annoying
<TT
10781 > off the ends of filenames on some CDROMs (only visible
10782 under some UNIXes). To do this use a map of (*;
1 *;).
</P
10785 >no mangled map
</EM
10790 >mangled map = (*;
1 *;)
</B
10795 NAME=
"MANGLEDNAMES"
10797 >mangled names (S)
</DT
10800 >This controls whether non-DOS names under UNIX
10801 should be mapped to DOS-compatible names (
"mangled") and made visible,
10802 or whether non-DOS names should simply be ignored.
</P
10804 >See the section on
<A
10807 > for details on how to control the mangling process.
</P
10809 >If mangling is used then the mangling algorithm is as follows:
</P
10815 >The first (up to) five alphanumeric characters
10816 before the rightmost dot of the filename are preserved, forced
10817 to upper case, and appear as the first (up to) five characters
10818 of the mangled name.
</P
10822 >A tilde
"~" is appended to the first part of the mangled
10823 name, followed by a two-character unique sequence, based on the
10824 original root name (i.e., the original filename minus its final
10825 extension). The final extension is included in the hash calculation
10826 only if it contains any upper case characters or is longer than three
10829 >Note that the character to use may be specified using
10831 HREF=
"#MANGLINGCHAR"
10839 > option, if you don't like '~'.
</P
10843 >The first three alphanumeric characters of the final
10844 extension are preserved, forced to upper case and appear as the
10845 extension of the mangled name. The final extension is defined as that
10846 part of the original filename after the rightmost dot. If there are no
10847 dots in the filename, the mangled name will have no extension (except
10848 in the case of
"hidden files" - see below).
</P
10852 >Files whose UNIX name begins with a dot will be
10853 presented as DOS hidden files. The mangled name will be created as
10854 for other filenames, but with the leading dot removed and
"___" as
10855 its extension regardless of actual original extension (that's three
10860 >The two-digit hash value consists of upper case
10861 alphanumeric characters.
</P
10863 >This algorithm can cause name collisions only if files
10864 in a directory share the same first five alphanumeric characters.
10865 The probability of such a clash is
1/
1300.
</P
10867 >The name mangling (if enabled) allows a file to be
10868 copied between UNIX directories from Windows/DOS while retaining
10869 the long UNIX filename. UNIX files can be renamed to a new extension
10870 from Windows/DOS and will retain the same basename. Mangled names
10871 do not change between sessions.
</P
10875 >mangled names = yes
</B
10880 NAME=
"MANGLEDSTACK"
10882 >mangled stack (G)
</DT
10885 >This parameter controls the number of mangled names
10886 that should be cached in the Samba server
<A
10892 >This stack is a list of recently mangled base names
10893 (extensions are only maintained if they are longer than
3 characters
10894 or contains upper case characters).
</P
10896 >The larger this value, the more likely it is that mangled
10897 names can be successfully converted to correct long UNIX names.
10898 However, large stack sizes will slow most directory accesses. Smaller
10899 stacks save memory in the server (each stack element costs
256 bytes).
10902 >It is not possible to absolutely guarantee correct long
10903 filenames, so be prepared for some surprises!
</P
10907 >mangled stack =
50</B
10912 >mangled stack =
100</B
10917 NAME=
"MANGLINGCHAR"
10919 >mangling char (S)
</DT
10922 >This controls what character is used as
10928 >. The default is a '~'
10929 but this may interfere with some software. Use this option to set
10930 it to whatever you prefer.
</P
10934 >mangling char = ~
</B
10939 >mangling char = ^
</B
10946 >map archive (S)
</DT
10949 >This controls whether the DOS archive attribute
10950 should be mapped to the UNIX owner execute bit. The DOS archive bit
10951 is set when a file has been modified since its last backup. One
10952 motivation for this option it to keep Samba/your PC from making
10953 any file it touches from becoming executable under UNIX. This can
10954 be quite annoying for shared source code, documents, etc...
</P
10956 >Note that this requires the
<TT
10962 parameter to be set such that owner execute bit is not masked out
10963 (i.e. it must include
100). See the parameter
<A
10975 >map archive = yes
</B
10982 >map hidden (S)
</DT
10985 >This controls whether DOS style hidden files
10986 should be mapped to the UNIX world execute bit.
</P
10988 >Note that this requires the
<TT
10994 to be set such that the world execute bit is not masked out (i.e.
10995 it must include
001). See the parameter
<A
11007 >map hidden = no
</B
11014 >map system (S)
</DT
11017 >This controls whether DOS style system files
11018 should be mapped to the UNIX group execute bit.
</P
11020 >Note that this requires the
<TT
11026 to be set such that the group execute bit is not masked out (i.e.
11027 it must include
010). See the parameter
<A
11039 >map system = no
</B
11046 >map to guest (G)
</DT
11049 >This parameter is only useful in
<A
11052 > modes other than
<TT
11055 >security = share
</I
11070 >This parameter can take three different values, which tell
11075 > what to do with user
11076 login requests that don't match a valid UNIX user in some way.
</P
11078 >The three settings are :
</P
11087 > - Means user login
11088 requests with an invalid password are rejected. This is the
11097 logins with an invalid password are rejected, unless the username
11098 does not exist, in which case it is treated as a guest login and
11100 HREF=
"#GUESTACCOUNT"
11114 > - Means user logins
11115 with an invalid password are treated as a guest login and mapped
11117 HREF=
"#GUESTACCOUNT"
11120 this can cause problems as it means that any user incorrectly typing
11121 their password will be silently logged on as
"guest" - and
11122 will not know the reason they cannot access files they think
11123 they should - there will have been no message given to them
11124 that they got their password wrong. Helpdesk services will
11127 > you if you set the
<TT
11133 > parameter this way :-).
</P
11137 >Note that this parameter is needed to set up
"Guest"
11138 share services when using
<TT
11144 share. This is because in these modes the name of the resource being
11147 > sent to the server until after
11148 the server has successfully authenticated the client so the server
11149 cannot make authentication decisions at the correct time (connection
11150 to the share) for
"Guest" shares.
</P
11152 >For people familiar with the older Samba releases, this
11153 parameter maps to the old compile-time setting of the
<TT
11155 > GUEST_SESSSETUP
</TT
11156 > value in local.h.
</P
11160 >map to guest = Never
</B
11165 >map to guest = Bad User
</B
11170 NAME=
"MAXCONNECTIONS"
11172 >max connections (S)
</DT
11175 >This option allows the number of simultaneous
11176 connections to a service to be limited. If
<TT
11182 > is greater than
0 then connections will be refused if
11183 this number of connections to the service are already open. A value
11184 of zero mean an unlimited number of connections may be made.
</P
11186 >Record lock files are used to implement this feature. The
11187 lock files will be stored in the directory specified by the
<A
11188 HREF=
"#LOCKDIRECTORY"
11200 >max connections =
0</B
11205 >max connections =
10</B
11212 >max disk size (G)
</DT
11215 >This option allows you to put an upper limit
11216 on the apparent size of disks. If you set this option to
100
11217 then all shares will appear to be not larger than
100 MB in
11220 >Note that this option does not limit the amount of
11221 data you can put on the disk. In the above case you could still
11222 store much more than
100 MB on the disk, but if a client ever asks
11223 for the amount of free disk space or the total disk size then the
11224 result will be bounded by the amount specified in
<TT
11232 >This option is primarily useful to work around bugs
11233 in some pieces of software that can't handle very large disks,
11234 particularly disks over
1GB in size.
</P
11241 > of
0 means no limit.
</P
11245 >max disk size =
0</B
11250 >max disk size =
1000</B
11257 >max log size (G)
</DT
11260 >This option (an integer in kilobytes) specifies
11261 the max size the log file should grow to. Samba periodically checks
11262 the size and if it is exceeded it will rename the file, adding
11268 >A size of
0 means no limit.
</P
11272 >max log size =
5000</B
11277 >max log size =
1000</B
11287 >This option controls the maximum number of
11288 outstanding simultaneous SMB operations that Samba tells the client
11289 it will allow. You should never need to set this parameter.
</P
11298 NAME=
"MAXOPENFILES"
11300 >max open files (G)
</DT
11303 >This parameter limits the maximum number of
11304 open files that one
<A
11309 serving process may have open for a client at any one time. The
11310 default for this parameter is set very high (
10,
000) as Samba uses
11311 only one bit per unopened file.
</P
11313 >The limit of the number of open files is usually set
11314 by the UNIX per-process file descriptor limit rather than
11315 this parameter so you should never need to touch this parameter.
</P
11319 >max open files =
10000</B
11324 NAME=
"MAXPRINTJOBS"
11326 >max print jobs (S)
</DT
11329 >This parameter limits the maximum number of
11330 jobs allowable in a Samba printer queue at any given moment.
11331 If this number is exceeded,
<A
11338 > will remote
"Out of Space" to the client.
11340 HREF=
"#TOTALPRINTJOBS"
11353 >max print jobs =
1000</B
11358 >max print jobs =
5000</B
11365 >max protocol (G)
</DT
11368 >The value of the parameter (a string) is the highest
11369 protocol level that will be supported by the server.
</P
11371 >Possible values are :
</P
11380 >: Earliest version. No
11381 concept of user names.
</P
11388 >: Slight improvements on
11389 CORE for efficiency.
</P
11398 > version of the protocol. Long filename
11406 >: Updates to Lanman1 protocol.
11414 >: Current up to date version of
11415 the protocol. Used by Windows NT. Known as CIFS.
</P
11419 >Normally this option should not be set as the automatic
11420 negotiation phase in the SMB protocol takes care of choosing
11421 the appropriate protocol.
</P
11424 HREF=
"#MINPROTOCOL"
11436 >max protocol = NT1
</B
11441 >max protocol = LANMAN1
</B
11446 NAME=
"MAXSMBDPROCESSES"
11448 >max smbd processes (G)
</DT
11451 >This parameter limits the maximum number of
11460 processes concurrently running on a system and is intended
11461 as a stopgap to prevent degrading service to clients in the event
11462 that the server has insufficient resources to handle more than this
11463 number of connections. Remember that under normal operating
11464 conditions, each user will have an
<A
11468 > associated with him or her
11469 to handle connections to all shares from a given host.
11474 >max smbd processes =
0</B
11479 >max smbd processes =
1000</B
11489 >This option tells
<A
11494 what the default 'time to live' of NetBIOS names should be (in seconds)
11498 > is requesting a name using either a
11499 broadcast packet or from a WINS server. You should never need to
11500 change this parameter. The default is
3 days.
</P
11504 >max ttl =
259200</B
11511 >max wins ttl (G)
</DT
11514 >This option tells
<A
11519 > when acting as a WINS server (
<A
11520 HREF=
"#WINSSUPPORT"
11524 >wins support = yes
</I
11527 >) what the maximum
11528 'time to live' of NetBIOS names that
<B
11532 will grant will be (in seconds). You should never need to change this
11533 parameter. The default is
6 days (
518400 seconds).
</P
11548 >max wins ttl =
518400</B
11558 >This option controls the maximum packet size
11559 that will be negotiated by Samba. The default is
65535, which
11560 is the maximum. In some cases you may find you get better performance
11561 with a smaller value. A value below
2048 is likely to cause problems.
11566 >max xmit =
65535</B
11571 >max xmit =
8192</B
11576 NAME=
"MESSAGECOMMAND"
11578 >message command (G)
</DT
11581 >This specifies what command to run when the
11582 server receives a WinPopup style message.
</P
11584 >This would normally be a command that would
11585 deliver the message somehow. How this is to be done is
11586 up to your imagination.
</P
11592 >message command = csh -c 'xedit %s;rm %s'
&</B
11596 >This delivers the message using
<B
11600 removes it afterwards.
<EM
11601 >NOTE THAT IT IS VERY IMPORTANT
11602 THAT THIS COMMAND RETURN IMMEDIATELY
</EM
11604 have the '
&' on the end. If it doesn't return immediately then
11605 your PCs may freeze when sending messages (they should recover
11606 after
30 seconds, hopefully).
</P
11608 >All messages are delivered as the global guest user.
11609 The command takes the standard substitutions, although
<TT
11622 >Apart from the standard substitutions, some additional
11623 ones apply. In particular:
</P
11634 > = the filename containing
11644 > = the destination that
11645 the message was sent to (probably the server name).
</P
11654 > = who the message
11659 >You could make this command send mail, or whatever else
11660 takes your fancy. Please let us know of any really interesting
11663 >Here's a way of sending the messages as mail to root:
</P
11667 >message command = /bin/mail -s 'message from %f on
11668 %m' root
< %s; rm %s
</B
11671 >If you don't have a message command then the message
11672 won't be delivered and Samba will tell the sender there was
11673 an error. Unfortunately WfWg totally ignores the error code
11674 and carries on regardless, saying that the message was delivered.
11677 >If you want to silently delete it then try:
</P
11681 >message command = rm %s
</B
11685 >no message command
</EM
11690 >message command = csh -c 'xedit %s;
11696 NAME=
"MINPASSWDLENGTH"
11698 >min passwd length (G)
</DT
11702 HREF=
"#MINPASSWORDLENGTH"
11706 >min password length
</I
11713 NAME=
"MINPASSWORDLENGTH"
11715 >min password length (G)
</DT
11718 >This option sets the minimum length in characters
11719 of a plaintext password that
<B
11722 > will accept when performing
11723 UNIX password changing.
</P
11726 HREF=
"#UNIXPASSWORDSYNC"
11735 HREF=
"#PASSWDPROGRAM"
11743 HREF=
"#PASSWDCHATDEBUG"
11747 >passwd chat debug
</I
11755 >min password length =
5</B
11760 NAME=
"MINPRINTSPACE"
11762 >min print space (S)
</DT
11765 >This sets the minimum amount of free disk
11766 space that must be available before a user will be able to spool
11767 a print job. It is specified in kilobytes. The default is
0, which
11768 means a user can always spool a print job.
</P
11783 >min print space =
0</B
11788 >min print space =
2000</B
11795 >min protocol (G)
</DT
11798 >The value of the parameter (a string) is the
11799 lowest SMB protocol dialect than Samba will support. Please refer
11801 HREF=
"#MAXPROTOCOL"
11809 parameter for a list of valid protocol names and a brief description
11810 of each. You may also wish to refer to the C source code in
11813 >source/smbd/negprot.c
</TT
11814 > for a listing of known protocol
11815 dialects supported by clients.
</P
11817 >If you are viewing this parameter as a security measure, you should
11818 also refer to the
<A
11827 > parameter. Otherwise, you should never need
11828 to change this parameter.
</P
11832 >min protocol = CORE
</B
11837 >min protocol = NT1
</B
11845 >min wins ttl (G)
</DT
11848 >This option tells
<A
11853 when acting as a WINS server (
<A
11854 HREF=
"#WINSSUPPORT"
11858 > wins support = yes
</I
11861 >) what the minimum 'time to live'
11862 of NetBIOS names that
<B
11865 > will grant will be (in
11866 seconds). You should never need to change this parameter. The default
11867 is
6 hours (
21600 seconds).
</P
11871 >min wins ttl =
21600</B
11878 >msdfs root (S)
</DT
11881 >This boolean parameter is only available if
11882 Samba is configured and compiled with the
<B
11885 > option. If set to
<TT
11889 Samba treats the share as a Dfs root and allows clients to browse
11890 the distributed file system tree rooted at the share directory.
11891 Dfs links are specified in the share directory by symbolic
11892 links of the form
<TT
11894 >msdfs:serverA\shareA,serverB\shareB
11896 > and so on. For more information on setting up a Dfs tree
11897 on Samba, refer to
<A
11898 HREF=
"msdfs_setup.html"
11917 >msdfs root = no
</B
11922 NAME=
"NAMERESOLVEORDER"
11924 >name resolve order (G)
</DT
11927 >This option is used by the programs in the Samba
11928 suite to determine what naming services to use and in what order
11929 to resolve host names to IP addresses. The option takes a space
11930 separated string of name resolution options.
</P
11932 >The options are :
"lmhosts",
"host",
"wins" and
"bcast". They
11933 cause names to be resolved as follows :
</P
11943 address in the Samba lmhosts file. If the line in lmhosts has
11944 no name type attached to the NetBIOS name (see the
<A
11945 HREF=
"lmhosts.5.html"
11948 > for details) then
11949 any name type matches for lookup.
</P
11956 > : Do a standard host
11957 name to IP address resolution, using the system
<TT
11961 >, NIS, or DNS lookups. This method of name resolution
11962 is operating system depended for instance on IRIX or Solaris this
11963 may be controlled by the
<TT
11965 >/etc/nsswitch.conf
</TT
11967 file. Note that this method is only used if the NetBIOS name
11968 type being queried is the
0x20 (server) name type, otherwise
11976 > : Query a name with
11977 the IP address listed in the
<A
11985 > parameter. If no WINS server has
11986 been specified this method will be ignored.
</P
11993 > : Do a broadcast on
11994 each of the known local interfaces listed in the
<A
12003 parameter. This is the least reliable of the name resolution
12004 methods as it depends on the target host being on a locally
12005 connected subnet.
</P
12011 >name resolve order = lmhosts host wins bcast
12017 >name resolve order = lmhosts bcast host
12021 >This will cause the local lmhosts file to be examined
12022 first, followed by a broadcast attempt, followed by a normal
12023 system hostname lookup.
</P
12027 NAME=
"NETBIOSALIASES"
12029 >netbios aliases (G)
</DT
12032 >This is a list of NetBIOS names that
<A
12036 > will advertise as additional
12037 names by which the Samba server is known. This allows one machine
12038 to appear in browse lists under multiple names. If a machine is
12039 acting as a browse server or logon server none
12040 of these names will be advertised as either browse server or logon
12041 servers, only the primary name of the machine will be advertised
12042 with these capabilities.
</P
12045 HREF=
"#NETBIOSNAME"
12056 >empty string (no additional names)
</EM
12061 >netbios aliases = TEST TEST1 TEST2
</B
12068 >netbios name (G)
</DT
12071 >This sets the NetBIOS name by which a Samba
12072 server is known. By default it is the same as the first component
12073 of the host's DNS name. If a machine is a browse server or
12074 logon server this name (or the first component
12075 of the hosts DNS name) will be the name that these services are
12076 advertised under.
</P
12079 HREF=
"#NETBIOSALIASES"
12090 >machine DNS name
</EM
12095 >netbios name = MYNAME
</B
12100 NAME=
"NETBIOSSCOPE"
12102 >netbios scope (G)
</DT
12105 >This sets the NetBIOS scope that Samba will
12106 operate under. This should not be set unless every machine
12107 on your LAN also sets this value.
</P
12113 >nis homedir (G)
</DT
12116 >Get the home share server from a NIS map. For
12117 UNIX systems that use an automounter, the user's home directory
12118 will often be mounted on a workstation on demand from a remote
12121 >When the Samba logon server is not the actual home directory
12122 server, but is mounting the home directories via NFS then two
12123 network hops would be required to access the users home directory
12124 if the logon server told the client to use itself as the SMB server
12125 for home directories (one over SMB and one over NFS). This can
12128 >This option allows Samba to return the home share as
12129 being on a different server to the logon server and as
12130 long as a Samba daemon is running on the home directory server,
12131 it will be mounted on the Samba client directly from the directory
12132 server. When Samba is returning the home share to the client, it
12133 will consult the NIS map specified in
<A
12141 > and return the server
12144 >Note that for this option to work there must be a working
12145 NIS system and the Samba server with this option must also
12146 be a logon server.
</P
12150 >nis homedir = no
</B
12155 NAME=
"NONUNIXACCOUNTRANGE"
12157 >non unix account range (G)
</DT
12160 >The non unix account range parameter specifies
12161 the range of 'user ids' that are allocated by the various 'non unix
12162 account' passdb backends. These backends allow
12163 the storage of passwords for users who don't exist in /etc/passwd.
12164 This is most often used for machine account creation.
12165 This range of ids should have no existing local or NIS users within
12166 it as strange conflicts can occur otherwise.
</P
12168 >NOTE: These userids never appear on the system and Samba will never
12169 'become' these users. They are used only to ensure that the algorithmic
12170 RID mapping does not conflict with normal users.
12175 >non unix account range =
<empty string
>
12181 >non unix account range =
10000-
20000</B
12186 NAME=
"NTACLSUPPORT"
12188 >nt acl support (S)
</DT
12191 >This boolean parameter controls whether
12196 > will attempt to map
12197 UNIX permissions into Windows NT access control lists.
12198 This parameter was formally a global parameter in releases
12203 >nt acl support = yes
</B
12208 NAME=
"NTPIPESUPPORT"
12210 >nt pipe support (G)
</DT
12213 >This boolean parameter controls whether
12218 > will allow Windows NT
12219 clients to connect to the NT SMB specific
<TT
12223 pipes. This is a developer debugging option and can be left
12228 >nt pipe support = yes
</B
12233 NAME=
"NULLPASSWORDS"
12235 >null passwords (G)
</DT
12238 >Allow or disallow client access to accounts
12239 that have null passwords.
</P
12242 HREF=
"smbpasswd.5.html"
12249 >null passwords = no
</B
12254 NAME=
"OBEYPAMRESTRICTIONS"
12256 >obey pam restrictions (G)
</DT
12259 >When Samba
2.2 is configured to enable PAM support
12260 (i.e. --with-pam), this parameter will control whether or not Samba
12261 should obey PAM's account and session management directives. The
12262 default behavior is to use PAM for clear text authentication only
12263 and to ignore any account or session management. Note that Samba
12264 always ignores PAM for authentication in the case of
<A
12265 HREF=
"#ENCRYPTPASSWORDS"
12269 >encrypt passwords = yes
</I
12273 >. The reason is that PAM modules cannot support the challenge/response
12274 authentication mechanism needed in the presence of SMB password encryption.
12279 >obey pam restrictions = no
</B
12289 >This is a boolean option that controls whether
12290 connections with usernames not in the
<TT
12296 list will be allowed. By default this option is disabled so that a
12297 client can supply a username to be used by the server. Enabling
12298 this parameter will force the server to only user the login
12304 > list and is only really
12306 HREF=
"#SECURITYEQUALSSHARE"
12311 >Note that this also means Samba won't try to deduce
12312 usernames from the service name. This can be annoying for
12313 the [homes] section. To get around this you could use
<B
12317 > which means your
<TT
12323 will be just the service name, which for home directories is the
12324 name of the user.
</P
12346 >only guest (S)
</DT
12361 NAME=
"OPLOCKBREAKWAITTIME"
12363 >oplock break wait time (G)
</DT
12366 >This is a tuning parameter added due to bugs in
12367 both Windows
9x and WinNT. If Samba responds to a client too
12368 quickly when that client issues an SMB that can cause an oplock
12369 break request, then the network client can fail and not respond
12370 to the break request. This tuning parameter (which is set in milliseconds)
12371 is the amount of time Samba will wait before sending an oplock break
12372 request to such (broken) clients.
</P
12375 >DO NOT CHANGE THIS PARAMETER UNLESS YOU HAVE READ
12376 AND UNDERSTOOD THE SAMBA OPLOCK CODE
</EM
12381 >oplock break wait time =
0</B
12386 NAME=
"OPLOCKCONTENTIONLIMIT"
12388 >oplock contention limit (S)
</DT
12399 improve the efficiency of the granting of oplocks under multiple
12400 client contention for the same file.
</P
12402 >In brief it specifies a number, which causes
<A
12407 grant an oplock even when requested if the approximate number of
12408 clients contending for an oplock on the same file goes over this
12409 limit. This causes
<B
12412 > to behave in a similar
12413 way to Windows NT.
</P
12416 >DO NOT CHANGE THIS PARAMETER UNLESS YOU HAVE READ
12417 AND UNDERSTOOD THE SAMBA OPLOCK CODE
</EM
12422 >oplock contention limit =
2</B
12432 >This boolean option tells
<B
12436 issue oplocks (opportunistic locks) to file open requests on this
12437 share. The oplock code can dramatically (approx.
30% or more) improve
12438 the speed of access to files on Samba servers. It allows the clients
12439 to aggressively cache files locally and you may want to disable this
12440 option for unreliable network environments (it is turned on by
12441 default in Windows NT Servers). For more information see the file
12451 >Oplocks may be selectively turned off on certain files with a
12453 HREF=
"#VETOOPLOCKFILES"
12457 > veto oplock files
</I
12460 > parameter. On some systems
12461 oplocks are recognized by the underlying operating system. This
12462 allows data synchronization between all access to oplocked files,
12463 whether it be via Samba or NFS or a local UNIX process. See the
12469 > parameter for details.
</P
12472 HREF=
"#KERNELOPLOCKS"
12481 HREF=
"#LEVEL2OPLOCKS"
12485 > level2 oplocks
</I
12502 >This integer value controls what level Samba
12503 advertises itself as for browse elections. The value of this
12504 parameter determines whether
<A
12509 has a chance of becoming a local master browser for the
<TT
12514 > in the local broadcast area.
</P
12518 >By default, Samba will win
12519 a local master browsing election over all Microsoft operating
12520 systems except a Windows NT
4.0/
2000 Domain Controller. This
12521 means that a misconfigured Samba host can effectively isolate
12522 a subnet for browsing purposes. See
<TT
12544 NAME=
"OS2DRIVERMAP"
12546 >os2 driver map (G)
</DT
12549 >The parameter is used to define the absolute
12550 path to a file containing a mapping of Windows NT printer driver
12551 names to OS/
2 printer driver names. The format is:
</P
12553 ><nt driver name
> =
<os2 driver
12554 name
>.
<device name
></P
12556 >For example, a valid entry using the HP LaserJet
5
12557 printer driver would appear as
<B
12559 >HP LaserJet
5L = LASERJET.HP
12563 >The need for the file is due to the printer driver namespace
12564 problem described in the
<A
12565 HREF=
"printer_driver2.html"
12569 >. For more details on OS/
2 clients, please
12571 HREF=
"OS2-Client-HOWTO.html"
12575 > containing in the Samba documentation.
</P
12579 >os2 driver map =
<empty string
>
12585 NAME=
"PAMPASSWORDCHANGE"
12587 >pam password change (G)
</DT
12590 >With the addition of better PAM support in Samba
2.2,
12591 this parameter, it is possible to use PAM's password change control
12592 flag for Samba. If enabled, then PAM will be used for password
12593 changes when requested by an SMB client instead of the program listed in
12595 HREF=
"#PASSWDPROGRAM"
12603 It should be possible to enable this without changing your
12613 parameter for most setups.
12618 >pam password change = no
</B
12625 >panic action (G)
</DT
12628 >This is a Samba developer option that allows a
12629 system command to be called when either
<A
12638 crashes. This is usually used to draw attention to the fact that
12639 a problem occurred.
</P
12643 >panic action =
<empty string
></B
12648 >panic action =
"/bin/sleep 90000"</B
12653 NAME=
"PASSDBBACKEND"
12655 >passdb backend (G)
</DT
12658 >This option allows the administrator to chose what
12659 backend in which to store passwords. This allows (for example) both
12660 smbpasswd and tdbsam to be used without a recompile. Only one can
12661 be used at a time however, and experimental backends must still be selected
12662 (eg --with-tdbsam) at configure time.
12665 >This paramater is in two parts, the backend's name, and a 'location'
12666 string that has meaning only to that particular backed. These are separated
12667 by a : character.
</P
12669 >Available backends can include:
12678 > - The default smbpasswd
12679 backend. Takes a path to the smbpasswd file as an optional argument.
</P
12687 backend, but with support for 'not unix accounts'.
12688 Takes a path to the smbpasswd file as an optional argument.
</P
12691 HREF=
"#NONUNIXACCOUNTRANGE"
12695 >non unix account range
</I
12705 > - The TDB based password storage
12706 backend. Takes a path to the TDB as an optional argument (defaults to passdb.tdb
12722 > - The TDB based password storage
12723 backend, with non unix account support. Takes a path to the TDB as an optional argument (defaults to passdb.tdb
12735 HREF=
"#NONUNIXACCOUNTRANGE"
12739 >non unix account range
</I
12749 > - The LDAP based passdb
12750 backend. Takes an LDAP URL as an optional argument (defaults to
12753 >ldap://localhost
</B
12761 > - The LDAP based passdb
12762 backend, with non unix account support. Takes an LDAP URL as an optional argument (defaults to
12765 >ldap://localhost
</B
12769 HREF=
"#NONUNIXACCOUNTRANGE"
12773 >non unix account range
</I
12783 > - Allows Samba to load an
12784 arbitary passdb backend from the .so specified as a compulsary argument.
12787 >Any characters after the (optional) second : are passed to the plugin
12788 for its own processing
</P
12796 >passdb backend = smbpasswd
</B
12801 >passdb backend = tdbsam:/etc/samba/private/passdb.tdb
</B
12806 >passdb backend = ldapsam_nua:ldaps://ldap.example.com
</B
12811 >passdb backend = plugin:/usr/local/samba/lib/my_passdb.so:my_plugin_args
</B
12818 >passwd chat (G)
</DT
12821 >This string controls the
<EM
12824 conversation that takes places between
<A
12828 > and the local password changing
12829 program to change the user's password. The string describes a
12830 sequence of response-receive pairs that
<A
12834 > uses to determine what to send to the
12836 HREF=
"#PASSWDPROGRAM"
12844 > and what to expect back. If the expected output is not
12845 received then the password is not changed.
</P
12847 >This chat sequence is often quite site specific, depending
12848 on what local methods are used for password control (such as NIS
12851 >Note that this parameter only is only used if the
<A
12852 HREF=
"#UNIXPASSWORDSYNC"
12860 > parameter is set to
<TT
12864 sequence is then called
<EM
12866 > when the SMB password
12867 in the smbpasswd file is being changed, without access to the old
12868 password cleartext. This means that root must be able to reset the user's password
12869 without knowing the text of the previous password. In the presence of NIS/YP,
12870 this means that the
<A
12871 HREF=
"#PASSWDPROGRAM"
12874 executed on the NIS master.
12877 >The string can contain the macro
<TT
12882 > which is substituted
12883 for the new password. The chat sequence can also contain the standard
12896 > to give line-feed,
12897 carriage-return, tab and space. The chat sequence string can also contain
12898 a '*' which matches any sequence of characters.
12899 Double quotes can be used to collect strings with spaces
12900 in them into a single string.
</P
12902 >If the send string in any part of the chat sequence
12903 is a full stop
".", then no string is sent. Similarly,
12904 if the expect string is a full stop then no string is expected.
</P
12907 HREF=
"#PAMPASSWORDCHANGE"
12915 > parameter is set to true, the chat pairs
12916 may be matched in any order, and success is determined by the PAM result,
12917 not any particular output. The \n macro is ignored for PAM conversions.
12921 HREF=
"#UNIXPASSWORDSYNC"
12930 HREF=
"#PASSWDPROGRAM"
12934 > passwd program
</I
12938 HREF=
"#PASSWDCHATDEBUG"
12942 >passwd chat debug
</I
12946 HREF=
"#PAMPASSWORDCHANGE"
12950 >pam password change
</I
12957 >passwd chat = *new*password* %n\n
12958 *new*password* %n\n *changed*
</B
12963 >passwd chat =
"*Enter OLD password*" %o\n
12964 "*Enter NEW password*" %n\n
"*Reenter NEW password*" %n\n
"*Password
12970 NAME=
"PASSWDCHATDEBUG"
12972 >passwd chat debug (G)
</DT
12975 >This boolean specifies if the passwd chat script
12976 parameter is run in
<EM
12978 > mode. In this mode the
12979 strings passed to and received from the passwd chat are printed
12994 of
100. This is a dangerous option as it will allow plaintext passwords
12995 to be seen in the
<B
12998 > log. It is available to help
12999 Samba admins debug their
<TT
13005 when calling the
<TT
13011 be turned off after this has been done. This option has no effect if the
13013 HREF=
"#PAMPASSWORDCHANGE"
13017 >pam password change
</I
13021 paramter is set. This parameter is off by default.
</P
13033 HREF=
"#PAMPASSWORDCHANGE"
13037 >pam password change
</I
13042 HREF=
"#PASSWDPROGRAM"
13054 >passwd chat debug = no
</B
13059 NAME=
"PASSWDPROGRAM"
13061 >passwd program (G)
</DT
13064 >The name of a program that can be used to set
13065 UNIX user passwords. Any occurrences of
<TT
13071 will be replaced with the user name. The user name is checked for
13072 existence before calling the password changing program.
</P
13074 >Also note that many passwd programs insist in
<EM
13077 > passwords, such as a minimum length, or the inclusion
13078 of mixed case chars and digits. This can pose a problem as some clients
13079 (such as Windows for Workgroups) uppercase the password before sending
13090 > parameter is set to
<TT
13094 > then this program is called
<EM
13097 before the SMB password in the
<A
13098 HREF=
"smbpasswd.5.html"
13102 > file is changed. If this UNIX password change fails, then
13106 > will fail to change the SMB password also
13107 (this is by design).
</P
13112 >unix password sync
</I
13115 is set this parameter
<EM
13116 >MUST USE ABSOLUTE PATHS
</EM
13120 > programs called, and must be examined
13121 for security implications. Note that by default
<TT
13133 HREF=
"#UNIXPASSWORDSYNC"
13145 >passwd program = /bin/passwd
</B
13150 >passwd program = /sbin/npasswd %u
</B
13156 NAME=
"PASSWORDLEVEL"
13158 >password level (G)
</DT
13161 >Some client/server combinations have difficulty
13162 with mixed-case passwords. One offending client is Windows for
13163 Workgroups, which for some reason forces passwords to upper
13164 case when using the LANMAN1 protocol, but leaves them alone when
13165 using COREPLUS! Another problem child is the Windows
95/
98
13166 family of operating systems. These clients upper case clear
13167 text passwords even when NT LM
0.12 selected by the protocol
13168 negotiation request/response.
</P
13170 >This parameter defines the maximum number of characters
13171 that may be upper case in passwords.
</P
13173 >For example, say the password given was
"FRED". If
<TT
13176 > password level
</I
13178 > is set to
1, the following combinations
13179 would be tried if
"FRED" failed:
</P
13181 >"Fred",
"fred",
"fRed",
"frEd",
"freD"</P
13189 the following combinations would also be tried:
</P
13191 >"FRed",
"FrEd",
"FreD",
"fREd",
"fReD",
"frED", ..
</P
13195 >The higher value this parameter is set to the more likely
13196 it is that a mixed case password will be matched against a single
13197 case password. However, you should be aware that use of this
13198 parameter reduces security and increases the time taken to
13199 process a new connection.
</P
13201 >A value of zero will cause only two attempts to be
13202 made - the password as is and the password in all-lower case.
</P
13206 >password level =
0</B
13211 >password level =
4</B
13216 NAME=
"PASSWORDSERVER"
13218 >password server (G)
</DT
13221 >By specifying the name of another SMB server (such
13222 as a WinNT box) with this option, and using
<B
13228 >security = server
</B
13229 > you can get Samba
13230 to do all its username/password validation via a remote server.
</P
13232 >This option sets the name of the password server to use.
13233 It must be a NetBIOS name, so if the machine's NetBIOS name is
13234 different from its Internet name then you may have to add its NetBIOS
13235 name to the lmhosts file which is stored in the same directory
13241 >The name of the password server is looked up using the
13243 HREF=
"#NAMERESOLVEORDER"
13251 > and so may resolved
13252 by any method and order described in that parameter.
</P
13254 >The password server much be a machine capable of using
13255 the
"LM1.2X002" or the
"NT LM 0.12" protocol, and it must be in
13256 user level security mode.
</P
13260 > Using a password server
13261 means your UNIX box (running Samba) is only as secure as your
13262 password server.
<EM
13263 >DO NOT CHOOSE A PASSWORD SERVER THAT
13264 YOU DON'T COMPLETELY TRUST
</EM
13267 >Never point a Samba server at itself for password
13268 serving. This will cause a loop and could lock up your Samba
13271 >The name of the password server takes the standard
13272 substitutions, but probably the only useful one is
<TT
13278 >, which means the Samba server will use the incoming
13279 client as the password server. If you use this then you better
13280 trust your clients, and you had better restrict them with hosts allow!
</P
13287 > parameter is set to
13291 >, then the list of machines in this
13292 option must be a list of Primary or Backup Domain controllers for the
13293 Domain or the character '*', as the Samba server is effectively
13294 in that domain, and will use cryptographically authenticated RPC calls
13295 to authenticate the user logging on. The advantage of using
<B
13297 > security = domain
</B
13298 > is that if you list several hosts in the
13302 >password server
</I
13308 > will try each in turn till it finds one that responds. This
13309 is useful in case your primary server goes down.
</P
13314 >password server
</I
13317 to the character '*', then Samba will attempt to auto-locate the
13318 Primary or Backup Domain controllers to authenticate against by
13319 doing a query for the name
<TT
13321 >WORKGROUP
<1C
></TT
13323 and then contacting each server returned in the list of IP
13324 addresses from the name resolution source.
</P
13335 >, then there are different
13336 restrictions that
<B
13338 >security = domain
</B
13346 >You may list several password servers in
13350 >password server
</I
13352 > parameter, however if an
13356 > makes a connection to a password server,
13357 and then the password server fails, no more users will be able
13358 to be authenticated from this
<B
13362 restriction of the SMB/CIFS protocol when in
<B
13366 > mode and cannot be fixed in Samba.
</P
13370 >If you are using a Windows NT server as your
13371 password server then you will have to ensure that your users
13372 are able to login from the Samba server, as when in
<B
13374 > security = server
</B
13375 > mode the network logon will appear to
13376 come from there rather than from the users workstation.
</P
13393 >password server =
<empty string
></B
13399 >password server = NT-PDC, NT-BDC1, NT-BDC2
13405 >password server = *
</B
13415 >This parameter specifies a directory to which
13416 the user of the service is to be given access. In the case of
13417 printable services, this is where print data will spool prior to
13418 being submitted to the host for printing.
</P
13420 >For a printable service offering guest access, the service
13421 should be readonly and the path should be world-writeable and
13422 have the sticky bit set. This is not mandatory of course, but
13423 you probably won't get the results you expect if you do
13426 >Any occurrences of
<TT
13432 will be replaced with the UNIX username that the client is using
13433 on this connection. Any occurrences of
<TT
13439 will be replaced by the NetBIOS name of the machine they are
13440 connecting from. These replacements are very useful for setting
13441 up pseudo home directories for users.
</P
13443 >Note that this path will be based on
<A
13451 > if one was specified.
</P
13459 >path = /home/fred
</B
13464 NAME=
"POSIXLOCKING"
13466 >posix locking (S)
</DT
13477 daemon maintains an database of file locks obtained by SMB clients.
13478 The default behavior is to map this internal database to POSIX
13479 locks. This means that file locks obtained by SMB clients are
13480 consistent with those seen by POSIX compliant applications accessing
13481 the files via a non-SMB method (e.g. NFS or local file access).
13482 You should never need to disable this parameter.
</P
13486 >posix locking = yes
</B
13496 >This option specifies a command to be run
13497 whenever the service is disconnected. It takes the usual
13498 substitutions. The command may be run as the root on some
13501 >An interesting example may be to unmount server
13506 >postexec = /etc/umount /cdrom
</B
13521 >none (no command executed)
</EM
13527 >postexec = echo \
"%u disconnected from %S
13528 from %m (%I)\" >> /tmp/log
</B
13535 >postscript (S)
</DT
13538 >This parameter forces a printer to interpret
13539 the print files as PostScript. This is done by adding a
<TT
13543 > to the start of print output.
</P
13545 >This is most useful when you have lots of PCs that persist
13546 in putting a control-D at the start of print jobs, which then
13547 confuses your printer.
</P
13551 >postscript = no
</B
13561 >This option specifies a command to be run whenever
13562 the service is connected to. It takes the usual substitutions.
</P
13564 >An interesting example is to send the users a welcome
13565 message every time they log in. Maybe a message of the day? Here
13570 >preexec = csh -c 'echo \
"Welcome to %S!\" |
13571 /usr/local/samba/bin/smbclient -M %m -I %I'
& </B
13574 >Of course, this could get annoying after a while :-)
</P
13577 HREF=
"#PREEXECCLOSE"
13597 >none (no command executed)
</EM
13602 >preexec = echo \
"%u connected to %S from %m
13603 (%I)\" >> /tmp/log
</B
13608 NAME=
"PREEXECCLOSE"
13610 >preexec close (S)
</DT
13613 >This boolean option controls whether a non-zero
13614 return code from
<A
13623 > should close the service being connected to.
</P
13627 >preexec close = no
</B
13632 NAME=
"PREFERREDMASTER"
13634 >preferred master (G)
</DT
13637 >This boolean parameter controls if
<A
13641 > is a preferred master browser
13642 for its workgroup.
</P
13644 >If this is set to
<TT
13651 will force an election, and it will have a slight advantage in
13652 winning the election. It is recommended that this parameter is
13653 used in conjunction with
<B
13656 HREF=
"#DOMAINMASTER"
13667 > can guarantee becoming a domain master.
</P
13669 >Use this option with caution, because if there are several
13670 hosts (whether Samba servers, Windows
95 or NT) that are preferred
13671 master browsers on the same subnet, they will each periodically
13672 and continuously attempt to become the local master browser.
13673 This will result in unnecessary broadcast traffic and reduced browsing
13689 >preferred master = auto
</B
13694 NAME=
"PREFEREDMASTER"
13696 >prefered master (G)
</DT
13700 HREF=
"#PREFERREDMASTER"
13704 > preferred master
</I
13707 > for people who cannot spell :-).
</P
13716 >This is a list of services that you want to be
13717 automatically added to the browse lists. This is most useful
13718 for homes and printers services that would otherwise not be
13721 >Note that if you just want all printers in your
13722 printcap file loaded then the
<A
13723 HREF=
"#LOADPRINTERS"
13730 > option is easier.
</P
13733 >no preloaded services
</EM
13738 >preload = fred lp colorlp
</B
13743 NAME=
"PRESERVECASE"
13745 >preserve case (S)
</DT
13748 > This controls if new filenames are created
13749 with the case that the client passes, or if they are forced to
13751 HREF=
"#DEFAULTCASE"
13763 >preserve case = yes
</B
13766 >See the section on
<A
13770 > for a fuller discussion.
</P
13774 NAME=
"PRINTCOMMAND"
13776 >print command (S)
</DT
13779 >After a print job has finished spooling to
13780 a service, this command will be used via a
<B
13784 call to process the spool file. Typically the command specified will
13785 submit the spool file to the host's printing subsystem, but there
13786 is no requirement that this be the case. The server will not remove
13787 the spool file, so whatever command you specify should remove the
13788 spool file when it has been processed, otherwise you will need to
13789 manually remove old spool files.
</P
13791 >The print command is simply a text string. It will be used
13792 verbatim, with two exceptions: All occurrences of
<TT
13803 > will be replaced by the
13804 appropriate spool file name, and all occurrences of
<TT
13810 > will be replaced by the appropriate printer name. The
13811 spool file name is generated automatically by the server. The
13817 > macro can be used to access the job
13818 name as transmitted by the client.
</P
13820 >The print command
<EM
13823 one occurrence of
<TT
13839 > is optional. At the time
13840 a job is submitted, if no printer name is supplied the
<TT
13846 > will be silently removed from the printer command.
</P
13848 >If specified in the [global] section, the print command given
13849 will be used for any printable service that does not have its own
13850 print command specified.
</P
13852 >If there is neither a specified print command for a
13853 printable service nor a global print command, spool files will
13854 be created but not processed and (most importantly) not removed.
</P
13856 >Note that printing may fail on some UNIXes from the
13860 > account. If this happens then create
13861 an alternative guest account that can print and set the
<A
13862 HREF=
"#GUESTACCOUNT"
13870 in the [global] section.
</P
13872 >You can form quite complex print commands by realizing
13873 that they are just passed to a shell. For example the following
13874 will log a print job, print the file, then remove it. Note that
13875 ';' is the usual separator for command in shell scripts.
</P
13879 >print command = echo Printing %s
>>
13880 /tmp/print.log; lpr -P %p %s; rm %s
</B
13883 >You may have to vary this command considerably depending
13884 on how you normally print files on your system. The default for
13885 the parameter varies depending on the setting of the
<A
13897 >printing = BSD, AIX, QNX, LPRNG
13903 >print command = lpr -r -P%p %s
</B
13908 >printing = SYSV or HPUX :
</B
13913 >print command = lp -c -d%p %s; rm %s
</B
13918 >printing = SOFTQ :
</B
13923 >print command = lp -d%p -s %s; rm %s
</B
13928 >print command = /usr/local/samba/bin/myprintscript
13956 >If this parameter is
<TT
13960 clients may open, write to and submit spool files on the directory
13961 specified for the service.
</P
13963 >Note that a printable service will ALWAYS allow writing
13964 to the service path (user privileges permitting) via the spooling
13965 of print data. The
<A
13974 > parameter controls only non-printing access to
13990 HREF=
"#PRINTCAPNAME"
14001 NAME=
"PRINTCAPNAME"
14003 >printcap name (G)
</DT
14006 >This parameter may be used to override the
14007 compiled-in default printcap name used by the server (usually
<TT
14009 > /etc/printcap
</TT
14010 >). See the discussion of the
<A
14013 > section above for reasons
14014 why you might want to do this.
</P
14016 >On System V systems that use
<B
14020 list available printers you can use
<B
14022 >printcap name = lpstat
14024 > to automatically obtain lists of available printers. This
14025 is the default for systems that define SYSV at configure time in
14026 Samba (this includes most System V based systems). If
<TT
14035 these systems then Samba will launch
<B
14039 attempt to parse the output to obtain a printer list.
</P
14041 >A minimal printcap file would look something like this:
</P
14050 CLASS=
"PROGRAMLISTING"
14051 > print1|My Printer
1
14052 print2|My Printer
2
14053 print3|My Printer
3
14054 print4|My Printer
4
14055 print5|My Printer
5
14062 >where the '|' separates aliases of a printer. The fact
14063 that the second alias has a space in it gives a hint to Samba
14064 that it's a comment.
</P
14068 >: Under AIX the default printcap
14072 >. Samba will assume the
14076 > format if the string
14080 > appears in the printcap filename.
</P
14084 >printcap name = /etc/printcap
</B
14089 >printcap name = /etc/myprintcap
</B
14094 NAME=
"PRINTERADMIN"
14096 >printer admin (S)
</DT
14099 >This is a list of users that can do anything to
14100 printers via the remote administration interfaces offered by MS-RPC
14101 (usually using a NT workstation). Note that the root user always
14102 has admin rights.
</P
14106 >printer admin =
<empty string
></B
14112 >printer admin = admin, @staff
</B
14117 NAME=
"PRINTERDRIVER"
14119 >printer driver (S)
</DT
14124 >This is a deprecated
14125 parameter and will be removed in the next major release
14126 following version
2.2. Please see the instructions in
14128 HREF=
"printer_driver2.html"
14130 >Samba
2.2. Printing
14132 > for more information
14133 on the new method of loading printer drivers onto a Samba server.
14136 >This option allows you to control the string
14137 that clients receive when they ask the server for the printer driver
14138 associated with a printer. If you are using Windows95 or Windows NT
14139 then you can use this to automate the setup of printers on your
14142 >You need to set this parameter to the exact string (case
14143 sensitive) that describes the appropriate printer driver for your
14144 system. If you don't know the exact string to use then you should
14145 first try with no
<A
14146 HREF=
"#PRINTERDRIVER"
14150 > printer driver
</I
14153 > option set and the client will
14154 give you a list of printer drivers. The appropriate strings are
14155 shown in a scroll box after you have chosen the printer manufacturer.
</P
14158 HREF=
"#PRINTERDRIVERFILE"
14170 >printer driver = HP LaserJet
4L</B
14175 NAME=
"PRINTERDRIVERFILE"
14177 >printer driver file (G)
</DT
14182 >This is a deprecated
14183 parameter and will be removed in the next major release
14184 following version
2.2. Please see the instructions in
14186 HREF=
"printer_driver2.html"
14188 >Samba
2.2. Printing
14190 > for more information
14191 on the new method of loading printer drivers onto a Samba server.
14194 >This parameter tells Samba where the printer driver
14195 definition file, used when serving drivers to Windows
95 clients, is
14196 to be found. If this is not set, the default is :
</P
14201 CLASS=
"REPLACEABLE"
14203 >SAMBA_INSTALL_DIRECTORY
</I
14206 /lib/printers.def
</TT
14209 >This file is created from Windows
95 <TT
14213 > files found on the Windows
95 client system. For more
14214 details on setting up serving of printer drivers to Windows
95
14215 clients, see the outdated documentation file in the
<TT
14221 >PRINTER_DRIVER.txt
</TT
14225 HREF=
"#PRINTERDRIVERLOCATION"
14229 > printer driver location
</I
14235 >None (set in compile).
</EM
14240 >printer driver file =
14241 /usr/local/samba/printers/drivers.def
</B
14246 NAME=
"PRINTERDRIVERLOCATION"
14248 >printer driver location (S)
</DT
14253 >This is a deprecated
14254 parameter and will be removed in the next major release
14255 following version
2.2. Please see the instructions in
14257 HREF=
"printer_driver2.html"
14259 >Samba
2.2. Printing
14261 > for more information
14262 on the new method of loading printer drivers onto a Samba server.
14265 >This parameter tells clients of a particular printer
14266 share where to find the printer driver files for the automatic
14267 installation of drivers for Windows
95 machines. If Samba is set up
14268 to serve printer drivers to Windows
95 machines, this should be set to
</P
14272 >\\MACHINE\PRINTER$
</B
14275 >Where MACHINE is the NetBIOS name of your Samba server,
14276 and PRINTER$ is a share you set up for serving printer driver
14277 files. For more details on setting this up see the outdated documentation
14283 > PRINTER_DRIVER.txt
</TT
14287 HREF=
"#PRINTERDRIVERFILE"
14291 > printer driver file
</I
14303 >printer driver location = \\MACHINE\PRINTER$
14311 >printer name (S)
</DT
14314 >This parameter specifies the name of the printer
14315 to which print jobs spooled through a printable service will be sent.
</P
14317 >If specified in the [global] section, the printer
14318 name given will be used for any printable service that does
14319 not have its own printer name specified.
</P
14322 >none (but may be
<TT
14326 on many systems)
</EM
14331 >printer name = laserwriter
</B
14342 HREF=
"#PRINTERNAME"
14358 >This parameters controls how printer status
14359 information is interpreted on your system. It also affects the
14360 default values for the
<TT
14380 >lpresume command
</I
14388 > if specified in the
14389 [global] section.
</P
14391 >Currently nine printing styles are supported. They are
14425 >To see what the defaults are for the other print
14426 commands when using the various options use the
<A
14427 HREF=
"testparm.1.html"
14432 >This option can be set on a per printer basis
</P
14434 >See also the discussion in the
<A
14443 >private dir (G)
</DT
14446 >This parameters defines the directory
14447 smbd will use for storing such files as
<TT
14459 >private dir = ${prefix}/private
</B
14470 HREF=
"#MAXPROTOCOL"
14499 NAME=
"QUEUEPAUSECOMMAND"
14501 >queuepause command (S)
</DT
14504 >This parameter specifies the command to be
14505 executed on the server host in order to pause the printer queue.
</P
14507 >This command should be a program or script which takes
14508 a printer name as its only parameter and stops the printer queue,
14509 such that no longer jobs are submitted to the printer.
</P
14511 >This command is not supported by Windows for Workgroups,
14512 but can be issued from the Printers window under Windows
95
14520 > is given then the printer name
14521 is put in its place. Otherwise it is placed at the end of the command.
14524 >Note that it is good practice to include the absolute
14525 path in the command as the PATH may not be available to the
14529 >depends on the setting of
<TT
14540 >queuepause command = disable %p
</B
14545 NAME=
"QUEUERESUMECOMMAND"
14547 >queueresume command (S)
</DT
14550 >This parameter specifies the command to be
14551 executed on the server host in order to resume the printer queue. It
14552 is the command to undo the behavior that is caused by the
14553 previous parameter (
<A
14554 HREF=
"#QUEUEPAUSECOMMAND"
14558 > queuepause command
</I
14563 >This command should be a program or script which takes
14564 a printer name as its only parameter and resumes the printer queue,
14565 such that queued jobs are resubmitted to the printer.
</P
14567 >This command is not supported by Windows for Workgroups,
14568 but can be issued from the Printers window under Windows
95
14576 > is given then the printer name
14577 is put in its place. Otherwise it is placed at the end of the
14580 >Note that it is good practice to include the absolute
14581 path in the command as the PATH may not be available to the
14585 >depends on the setting of
<A
14599 >queuepause command = enable %p
14610 >This boolean parameter controls whether
<A
14614 > will support the
"Read
14615 Block Multiplex" SMB. This is now rarely used and defaults to
14619 >. You should never need to set this
14634 >This is a list of users that are given read-only
14635 access to a service. If the connecting user is in this list then
14636 they will not be given write access, no matter what the
<A
14645 option is set to. The list can include group names using the
14646 syntax described in the
<A
14647 HREF=
"#INVALIDUSERS"
14664 > parameter and the
<A
14665 HREF=
"#INVALIDUSERS"
14677 >read list =
<empty string
></B
14682 >read list = mary, @students
</B
14692 >Note that this is an inverted synonym for
<A
14709 >This parameter controls whether or not the server
14710 will support the raw read SMB requests when transferring data
14713 >If enabled, raw reads allow reads of
65535 bytes in
14714 one packet. This typically provides a major performance benefit.
14717 >However, some clients either negotiate the allowable
14718 block size incorrectly or are incapable of supporting larger block
14719 sizes, and for these clients you may need to disable raw reads.
</P
14721 >In general this parameter should be viewed as a system tuning
14722 tool and left severely alone. See also
<A
14750 affects the overlap of disk reads/writes with network reads/writes.
14751 If the amount of data being transferred in several of the SMB
14752 commands (currently SMBwrite, SMBwriteX and SMBreadbraw) is larger
14753 than this value then the server begins writing the data before it
14754 has received the whole packet from the network, or in the case of
14755 SMBreadbraw, it begins writing to the network before all the data
14756 has been read from disk.
</P
14758 >This overlapping works best when the speeds of disk and
14759 network access are similar, having very little effect when the
14760 speed of one is much greater than the other.
</P
14762 >The default value is
16384, but very little experimentation
14763 has been done yet to determine the optimal value, and it is likely
14764 that the best value will vary greatly between systems anyway.
14765 A value over
65536 is pointless and will cause you to allocate
14766 memory unnecessarily.
</P
14770 >read size =
16384</B
14775 >read size =
8192</B
14780 NAME=
"REMOTEANNOUNCE"
14782 >remote announce (G)
</DT
14785 >This option allows you to setup
<A
14789 > to periodically announce itself
14790 to arbitrary IP addresses with an arbitrary workgroup name.
</P
14792 >This is useful if you want your Samba server to appear
14793 in a remote workgroup for which the normal browse propagation
14794 rules don't work. The remote workgroup can be anywhere that you
14795 can send IP packets to.
</P
14801 >remote announce =
192.168.2.255/SERVERS
14802 192.168.4.255/STAFF
</B
14805 >the above line would cause
<B
14808 > to announce itself
14809 to the two given IP addresses using the given workgroup names.
14810 If you leave out the workgroup name then the one given in
14820 parameter is used instead.
</P
14822 >The IP addresses you choose would normally be the broadcast
14823 addresses of the remote networks, but can also be the IP addresses
14824 of known browse masters if your network config is that stable.
</P
14826 >See the documentation file
<TT
14837 >remote announce =
<empty string
>
14843 NAME=
"REMOTEBROWSESYNC"
14845 >remote browse sync (G)
</DT
14848 >This option allows you to setup
<A
14852 > to periodically request
14853 synchronization of browse lists with the master browser of a Samba
14854 server that is on a remote segment. This option will allow you to
14855 gain browse lists for multiple workgroups across routed networks. This
14856 is done in a manner that does not work with any non-Samba servers.
</P
14858 >This is useful if you want your Samba server and all local
14859 clients to appear in a remote workgroup for which the normal browse
14860 propagation rules don't work. The remote workgroup can be anywhere
14861 that you can send IP packets to.
</P
14867 >remote browse sync =
192.168.2.255 192.168.4.255
14871 >the above line would cause
<B
14875 the master browser on the specified subnets or addresses to
14876 synchronize their browse lists with the local server.
</P
14878 >The IP addresses you choose would normally be the broadcast
14879 addresses of the remote networks, but can also be the IP addresses
14880 of known browse masters if your network config is that stable. If
14881 a machine IP address is given Samba makes NO attempt to validate
14882 that the remote machine is available, is listening, nor that it
14883 is in fact the browse master on its segment.
</P
14887 >remote browse sync =
<empty string
>
14893 NAME=
"RESTRICTANONYMOUS"
14895 >restrict anonymous (G)
</DT
14898 >This is a boolean parameter. If it is
<TT
14902 anonymous access to the server will be restricted, namely in the
14903 case where the server is expecting the client to send a username,
14904 but it doesn't. Setting it to
<TT
14907 > will force these anonymous
14908 connections to be denied, and the client will be required to always
14909 supply a username and password when connecting. Use of this parameter
14910 is only recommended for homogeneous NT client environments.
</P
14912 >This parameter makes the use of macro expansions that rely
14913 on the username (%U, %G, etc) consistent. NT
4.0
14914 likes to use anonymous connections when refreshing the share list,
14915 and this is a way to work around that.
</P
14917 >When restrict anonymous is
<TT
14920 >, all anonymous connections
14921 are denied no matter what they are for. This can effect the ability
14922 of a machine to access the Samba Primary Domain Controller to revalidate
14923 its machine account after someone else has logged on the client
14924 interactively. The NT client will display a message saying that
14925 the machine's account in the domain doesn't exist or the password is
14926 bad. The best way to deal with this is to reboot NT client machines
14927 between interactive logons, using
"Shutdown and Restart", rather
14928 than
"Close all programs and logon as a different user".
</P
14932 >restrict anonymous = no
</B
14943 HREF=
"#ROOTDIRECTORY"
14947 >root directory
"</I
14960 HREF="#ROOTDIRECTORY
"
14964 >root directory"</I
14971 NAME=
"ROOTDIRECTORY"
14973 >root directory (G)
</DT
14976 >The server will
<B
14980 Change its root directory) to this directory on startup. This is
14981 not strictly necessary for secure operation. Even without it the
14982 server will deny access to files not in one of the service entries.
14983 It may also check for, and deny access to, soft links to other
14984 parts of the filesystem, or attempts to use
".." in file names
14985 to access other directories (depending on the setting of the
<A
15002 than
"/" adds an extra level of security, but at a price. It
15003 absolutely ensures that no access is given to files not in the
15004 sub-tree specified in the
<TT
15012 > some files needed for
15013 complete operation of the server. To maintain full operability
15014 of the server you will need to mirror some system files
15020 > tree. In particular
15021 you will need to mirror
<TT
15025 subset of it), and any binaries or configuration files needed for
15026 printing (if required). The set of files that must be mirrored is
15027 operating system dependent.
</P
15031 >root directory = /
</B
15036 >root directory = /homes/smb
</B
15041 NAME=
"ROOTPOSTEXEC"
15043 >root postexec (S)
</DT
15046 >This is the same as the
<TT
15052 parameter except that the command is run as root. This
15053 is useful for unmounting filesystems
15054 (such as CDROMs) after a connection is closed.
</P
15068 >root postexec =
<empty string
>
15076 >root preexec (S)
</DT
15079 >This is the same as the
<TT
15085 parameter except that the command is run as root. This
15086 is useful for mounting filesystems (such as CDROMs) when a
15087 connection is opened.
</P
15098 HREF=
"#PREEXECCLOSE"
15109 >root preexec =
<empty string
>
15115 NAME=
"ROOTPREEXECCLOSE"
15117 >root preexec close (S)
</DT
15120 >This is the same as the
<TT
15126 > parameter except that the command is run as root.
</P
15137 HREF=
"#PREEXECCLOSE"
15148 >root preexec close = no
</B
15158 >This option affects how clients respond to
15159 Samba and is one of the most important settings in the
<TT
15164 >The option sets the
"security mode bit" in replies to
15165 protocol negotiations with
<A
15170 > to turn share level security on or off. Clients decide
15171 based on this bit whether (and how) to transfer user and password
15172 information to the server.
</P
15176 >security = user
</B
15178 the most common setting needed when talking to Windows
98 and
15181 >The alternatives are
<B
15183 >security = share
</B
15187 >security = server
</B
15194 >In versions of Samba prior to
2.0.0, the default was
15197 >security = share
</B
15198 > mainly because that was
15199 the only option at one stage.
</P
15201 >There is a bug in WfWg that has relevance to this
15202 setting. When in user or server level security a WfWg client
15203 will totally ignore the password you type in the
"connect
15204 drive" dialog box. This makes it very difficult (if not impossible)
15205 to connect to a Samba service as anyone except the user that
15206 you are logged into WfWg as.
</P
15208 >If your PCs use usernames that are the same as their
15209 usernames on the UNIX machine then you will want to use
15212 >security = user
</B
15213 >. If you mostly use usernames
15214 that don't exist on the UNIX box then use
<B
15220 >You should also use
<B
15222 >security = share
</B
15224 want to mainly setup shares without a password (guest shares). This
15225 is commonly used for a shared printer server. It is more difficult
15226 to setup guest shares with
<B
15228 >security = user
</B
15239 >parameter for details.
</P
15241 >It is possible to use
<B
15246 > where it is offers both user and share
15247 level security under different
<A
15248 HREF=
"#NETBIOSALIASES"
15252 >NetBIOS aliases
</I
15257 >The different settings will now be explained.
</P
15260 NAME=
"SECURITYEQUALSSHARE"
15267 >When clients connect to a share level security server they
15268 need not log onto the server with a valid username and password before
15269 attempting to connect to a shared resource (although modern clients
15270 such as Windows
95/
98 and Windows NT will send a logon request with
15271 a username but no password when talking to a
<B
15275 > server). Instead, the clients send authentication information
15276 (passwords) on a per-share basis, at the time they attempt to connect
15285 uses a valid UNIX user to act on behalf of the client, even in
15288 >security = share
</B
15289 > level security.
</P
15291 >As clients are not required to send a username to the server
15292 in share level security,
<B
15296 techniques to determine the correct UNIX user to use on behalf
15299 >A list of possible UNIX usernames to match with the given
15300 client password is constructed using the following methods :
</P
15315 > parameter is set, then all the other
15316 stages are missed and only the
<A
15317 HREF=
"#GUESTACCOUNT"
15324 > username is checked.
15329 >Is a username is sent with the share connection
15330 request, then this username (after mapping - see
<A
15331 HREF=
"#USERNAMEMAP"
15339 is added as a potential username.
</P
15343 >If the client did a previous
<EM
15346 > request (the SessionSetup SMB call) then the
15347 username sent in this SMB will be added as a potential username.
15352 >The name of the service the client requested is
15353 added as a potential username.
</P
15357 >The NetBIOS name of the client is added to
15358 the list as a potential username.
</P
15362 >Any users on the
<A
15370 > list are added as potential usernames.
15381 not set, then this list is then tried with the supplied password.
15382 The first user for whom the password matches will be used as the
15391 set, or no username can be determined then if the share is marked
15392 as available to the
<TT
15398 guest user will be used, otherwise access is denied.
</P
15400 >Note that it can be
<EM
15403 in share-level security as to which UNIX username will eventually
15404 be used in granting access.
</P
15406 >See also the section
<A
15408 > NOTE ABOUT USERNAME/PASSWORD VALIDATION
</A
15412 NAME=
"SECURITYEQUALSUSER"
15419 >This is the default security setting in Samba
2.2.
15420 With user-level security a client must first
"log-on" with a
15421 valid username and password (which can be mapped using the
<A
15422 HREF=
"#USERNAMEMAP"
15430 parameter). Encrypted passwords (see the
<A
15431 HREF=
"#ENCRYPTPASSWORDS"
15435 >encrypted passwords
</I
15438 > parameter) can also
15439 be used in this security mode. Parameters such as
<A
15455 > if set are then applied and
15456 may change the UNIX user to use on this connection, but only after
15457 the user has been successfully authenticated.
</P
15461 > that the name of the resource being
15464 > sent to the server until after
15465 the server has successfully authenticated the client. This is why
15466 guest shares don't work in user level security without allowing
15467 the server to automatically map unknown users into the
<A
15468 HREF=
"#GUESTACCOUNT"
15485 > parameter for details on doing this.
</P
15487 >See also the section
<A
15489 > NOTE ABOUT USERNAME/PASSWORD VALIDATION
</A
15493 NAME=
"SECURITYEQUALSSERVER"
15500 >In this mode Samba will try to validate the username/password
15501 by passing it to another SMB server, such as an NT box. If this
15502 fails it will revert to
<B
15504 >security = user
</B
15506 that if encrypted passwords have been negotiated then Samba cannot
15507 revert back to checking the UNIX password file, it must have a valid
15511 > file to check users against. See the
15512 documentation file in the
<TT
15518 >ENCRYPTION.txt
</TT
15519 > for details on how to set this
15524 > that from the client's point of
15527 >security = server
</B
15528 > is the same as
<B
15530 > security = user
</B
15531 >. It only affects how the server deals
15532 with the authentication, it does not in any way affect what the
15537 > that the name of the resource being
15540 > sent to the server until after
15541 the server has successfully authenticated the client. This is why
15542 guest shares don't work in user level security without allowing
15543 the server to automatically map unknown users into the
<A
15544 HREF=
"#GUESTACCOUNT"
15561 > parameter for details on doing this.
</P
15563 >See also the section
<A
15565 > NOTE ABOUT USERNAME/PASSWORD VALIDATION
</A
15569 HREF=
"#PASSWORDSERVER"
15577 > parameter and the
<A
15578 HREF=
"#ENCRYPTPASSWORDS"
15582 >encrypted passwords
</I
15589 NAME=
"SECURITYEQUALSDOMAIN"
15596 >This mode will only work correctly if
<A
15597 HREF=
"smbpasswd.8.html"
15600 > has been used to add this
15601 machine into a Windows NT Domain. It expects the
<A
15602 HREF=
"#ENCRYPTPASSWORDS"
15606 >encrypted passwords
</I
15610 > parameter to be set to
<TT
15614 mode Samba will try to validate the username/password by passing
15615 it to a Windows NT Primary or Backup Domain Controller, in exactly
15616 the same way that a Windows NT Server would do.
</P
15620 > that a valid UNIX user must still
15621 exist as well as the account on the Domain Controller to allow
15622 Samba to have a valid UNIX account to map file access to.
</P
15626 > that from the client's point
15629 >security = domain
</B
15630 > is the same as
<B
15634 >. It only affects how the server deals with the authentication,
15635 it does not in any way affect what the client sees.
</P
15639 > that the name of the resource being
15642 > sent to the server until after
15643 the server has successfully authenticated the client. This is why
15644 guest shares don't work in user level security without allowing
15645 the server to automatically map unknown users into the
<A
15646 HREF=
"#GUESTACCOUNT"
15663 > parameter for details on doing this.
</P
15667 > There is currently a bug in the
15668 implementation of
<B
15670 >security = domain
</B
15672 to multi-byte character set usernames. The communication with a
15673 Domain Controller must be done in UNICODE and Samba currently
15674 does not widen multi-byte user names to UNICODE correctly, thus
15675 a multi-byte username will not be recognized correctly at the
15676 Domain Controller. This issue will be addressed in a future release.
</P
15678 >See also the section
<A
15680 > NOTE ABOUT USERNAME/PASSWORD VALIDATION
</A
15684 HREF=
"#PASSWORDSERVER"
15692 > parameter and the
<A
15693 HREF=
"#ENCRYPTPASSWORDS"
15697 >encrypted passwords
</I
15705 >security = USER
</B
15710 >security = DOMAIN
</B
15715 NAME=
"SECURITYMASK"
15717 >security mask (S)
</DT
15720 >This parameter controls what UNIX permission
15721 bits can be modified when a Windows NT client is manipulating
15722 the UNIX permission on a file using the native NT security
15725 >This parameter is applied as a mask (AND'ed with) to
15726 the changed permission bits, thus preventing any bits not in
15727 this mask from being modified. Essentially, zero bits in this
15728 mask may be treated as a set of bits the user is not allowed
15731 >If not set explicitly this parameter is
0777, allowing
15732 a user to modify all the user/group/world permissions on a file.
15737 > that users who can access the
15738 Samba server through other means can easily bypass this
15739 restriction, so it is primarily useful for standalone
15740 "appliance" systems. Administrators of most normal systems will
15741 probably want to leave it set to
<TT
15747 HREF=
"#FORCEDIRECTORYSECURITYMODE"
15751 >force directory security mode
</I
15756 HREF=
"#DIRECTORYSECURITYMASK"
15765 HREF=
"#FORCESECURITYMODE"
15769 >force security mode
</I
15776 >security mask =
0777</B
15781 >security mask =
0770</B
15786 NAME=
"SERVERSTRING"
15788 >server string (G)
</DT
15791 >This controls what string will show up in the
15792 printer comment box in print manager and next to the IPC connection
15796 >. It can be any string that you wish
15797 to show to your users.
</P
15799 >It also sets what will appear in browse lists next
15800 to the machine name.
</P
15807 > will be replaced with the Samba
15815 > will be replaced with the
15820 >server string = Samba %v
</B
15825 >server string = University of GNUs Samba
15831 NAME=
"SETDIRECTORY"
15833 >set directory (S)
</DT
15838 >set directory = no
</B
15840 users of the service may not use the setdir command to change
15846 > command is only implemented
15847 in the Digital Pathworks client. See the Pathworks documentation
15852 >set directory = no
</B
15857 NAME=
"SHORTPRESERVECASE"
15859 >short preserve case (S)
</DT
15862 >This boolean parameter controls if new files
15863 which conform to
8.3 syntax, that is all in upper case and of
15864 suitable length, are created upper case, or if they are forced
15866 HREF=
"#DEFAULTCASE"
15874 >. This option can be use with
<A
15875 HREF=
"#PRESERVECASE"
15878 >preserve case = yes
</B
15881 > to permit long filenames to retain their case, while short
15882 names are lowered.
</P
15884 >See the section on
<A
15891 >short preserve case = yes
</B
15896 NAME=
"SHOWADDPRINTERWIZARD"
15898 >show add printer wizard (G)
</DT
15901 >With the introduction of MS-RPC based printing support
15902 for Windows NT/
2000 client in Samba
2.2, a
"Printers..." folder will
15903 appear on Samba hosts in the share listing. Normally this folder will
15904 contain an icon for the MS Add Printer Wizard (APW). However, it is
15905 possible to disable this feature regardless of the level of privilege
15906 of the connected user.
</P
15908 >Under normal circumstances, the Windows NT/
2000 client will
15909 open a handle on the printer server with OpenPrinterEx() asking for
15910 Administrator privileges. If the user does not have administrative
15911 access on the print server (i.e is not root or a member of the
15917 > group), the OpenPrinterEx()
15918 call fails and the client makes another open call with a request for
15919 a lower privilege level. This should succeed, however the APW
15920 icon will not be displayed.
</P
15925 >show add printer wizard
</I
15928 parameter will always cause the OpenPrinterEx() on the server
15929 to fail. Thus the APW icon will never be displayed.
<EM
15931 >This does not prevent the same user from having
15932 administrative privilege on an individual printer.
</P
15935 HREF=
"#ADDPRINTERCOMMAND"
15944 HREF=
"#DELETEPRINTERCOMMAND"
15948 >deleteprinter command
</I
15952 HREF=
"#PRINTERADMIN"
15963 >show add printer wizard = yes
</B
15968 NAME=
"SHUTDOWNSCRIPT"
15970 >shutdown script (G)
</DT
15974 >This parameter only exists in the HEAD cvs branch
</EM
15976 This a full path name to a script called by
15985 should start a shutdown procedure.
</P
15987 >This command will be run as the user connected to the
15990 >%m %t %r %f parameters are expanded
</P
15997 > will be substituted with the
15998 shutdown message sent to the server.
</P
16005 > will be substituted with the
16006 number of seconds to wait before effectively starting the
16007 shutdown procedure.
</P
16014 > will be substituted with the
16017 >. It means reboot after shutdown
16026 > will be substituted with the
16029 >. It means force the shutdown
16030 even if applications do not respond for NT.
</P
16038 >abort shutdown script = /usr/local/samba/sbin/shutdown %m %t %r %f
</B
16041 >Shutdown script example:
16049 CLASS=
"PROGRAMLISTING"
16056 /sbin/shutdown $
3 $
4 +$time $
1 &
16062 Shutdown does not return so we need to launch it in background.
16066 HREF=
"#ABORTSHUTDOWNSCRIPT"
16070 >abort shutdown script
</I
16077 NAME=
"SMBPASSWDFILE"
16079 >smb passwd file (G)
</DT
16082 >This option sets the path to the encrypted
16083 smbpasswd file. By default the path to the smbpasswd file
16084 is compiled into Samba.
</P
16088 >smb passwd file = ${prefix}/private/smbpasswd
16094 >smb passwd file = /etc/samba/smbpasswd
16100 NAME=
"SOCKETADDRESS"
16102 >socket address (G)
</DT
16105 >This option allows you to control what
16106 address Samba will listen for connections on. This is used to
16107 support multiple virtual interfaces on the one server, each
16108 with a different configuration.
</P
16110 >By default Samba will accept connections on any
16115 >socket address =
192.168.2.20</B
16121 NAME=
"SOCKETOPTIONS"
16123 >socket options (G)
</DT
16126 >This option allows you to set socket options
16127 to be used when talking with the client.
</P
16129 >Socket options are controls on the networking layer
16130 of the operating systems which allow the connection to be
16133 >This option will typically be used to tune your Samba
16134 server for optimal performance for your local network. There is
16135 no way that Samba can know what the optimal parameters are for
16136 your net, so you must experiment and choose them yourself. We
16137 strongly suggest you read the appropriate documentation for your
16138 operating system first (perhaps
<B
16144 >You may find that on some systems Samba will say
16145 "Unknown socket option" when you supply an option. This means you
16146 either incorrectly typed it or you need to add an include file
16147 to includes.h for your OS. If the latter is the case please
16148 send the patch to
<A
16149 HREF=
"mailto:samba@samba.org"
16151 > samba@samba.org
</A
16154 >Any of the supported socket options may be combined
16155 in any way you like, as long as your OS allows it.
</P
16157 >This is the list of socket options currently settable
16158 using this option:
</P
16184 >IPTOS_THROUGHPUT
</P
16204 >Those marked with a
<EM
16207 argument. The others can optionally take a
1 or
0 argument to enable
16208 or disable the option, by default they will be enabled if you
16209 don't specify
1 or
0.
</P
16211 >To specify an argument use the syntax SOME_OPTION = VALUE
16214 >SO_SNDBUF =
8192</B
16215 >. Note that you must
16216 not have any spaces before or after the = sign.
</P
16218 >If you are on a local network then a sensible option
16223 >socket options = IPTOS_LOWDELAY
</B
16226 >If you have a local network then you could try:
</P
16230 >socket options = IPTOS_LOWDELAY TCP_NODELAY
</B
16233 >If you are on a wide area network then perhaps try
16234 setting IPTOS_THROUGHPUT.
</P
16236 >Note that several of the options may cause your Samba
16237 server to fail completely. Use these options with caution!
</P
16241 >socket options = TCP_NODELAY
</B
16246 >socket options = IPTOS_LOWDELAY
</B
16251 NAME=
"SOURCEENVIRONMENT"
16253 >source environment (G)
</DT
16256 >This parameter causes Samba to set environment
16257 variables as per the content of the file named.
</P
16259 >If the value of this parameter starts with a
"|" character
16260 then Samba will treat that value as a pipe command to open and
16261 will set the environment variables from the output of the pipe.
</P
16263 >The contents of the file or the output of the pipe should
16264 be formatted as the output of the standard Unix
<B
16268 > command. This is of the form :
</P
16270 >Example environment entry:
</P
16274 >SAMBA_NETBIOS_NAME = myhostname
</B
16278 >No default value
</EM
16283 >source environment = |/etc/smb.conf.sh
16289 >source environment =
16290 /usr/local/smb_env_vars
</B
16300 >This variable is part of SSL-enabled Samba. This
16301 is only available if the SSL libraries have been compiled on your
16302 system and the configure option
<B
16306 given at configure time.
</P
16308 >This variable enables or disables the entire SSL mode. If
16312 >, the SSL-enabled Samba behaves
16313 exactly like the non-SSL Samba. If set to
<TT
16317 it depends on the variables
<A
16326 HREF=
"#SSLHOSTSRESIGN"
16330 >ssl hosts resign
</I
16334 connection will be required.
</P
16343 NAME=
"SSLCACERTDIR"
16345 >ssl CA certDir (G)
</DT
16348 >This variable is part of SSL-enabled Samba. This
16349 is only available if the SSL libraries have been compiled on your
16350 system and the configure option
<B
16354 given at configure time.
</P
16356 >This variable defines where to look up the Certification
16357 Authorities. The given directory should contain one file for
16358 each CA that Samba will trust. The file name must be the hash
16359 value over the
"Distinguished Name" of the CA. How this directory
16360 is set up is explained later in this document. All files within the
16361 directory that don't fit into this naming scheme are ignored. You
16362 don't need this variable if you don't verify client certificates.
</P
16366 >ssl CA certDir = /usr/local/ssl/certs
16372 NAME=
"SSLCACERTFILE"
16374 >ssl CA certFile (G)
</DT
16377 >This variable is part of SSL-enabled Samba. This
16378 is only available if the SSL libraries have been compiled on your
16379 system and the configure option
<B
16383 given at configure time.
</P
16385 >This variable is a second way to define the trusted CAs.
16386 The certificates of the trusted CAs are collected in one big
16387 file and this variable points to the file. You will probably
16388 only use one of the two ways to define your CAs. The first choice is
16389 preferable if you have many CAs or want to be flexible, the second
16390 is preferable if you only have one CA and want to keep things
16391 simple (you won't need to create the hashed file names). You
16392 don't need this variable if you don't verify client certificates.
</P
16396 >ssl CA certFile = /usr/local/ssl/certs/trustedCAs.pem
16404 >ssl ciphers (G)
</DT
16407 >This variable is part of SSL-enabled Samba. This
16408 is only available if the SSL libraries have been compiled on your
16409 system and the configure option
<B
16413 given at configure time.
</P
16415 >This variable defines the ciphers that should be offered
16416 during SSL negotiation. You should not set this variable unless
16417 you know what you are doing.
</P
16421 NAME=
"SSLCLIENTCERT"
16423 >ssl client cert (G)
</DT
16426 >This variable is part of SSL-enabled Samba. This
16427 is only available if the SSL libraries have been compiled on your
16428 system and the configure option
<B
16432 given at configure time.
</P
16434 >The certificate in this file is used by
<A
16435 HREF=
"smbclient.1.html"
16441 > if it exists. It's needed
16442 if the server requires a client certificate.
</P
16446 >ssl client cert = /usr/local/ssl/certs/smbclient.pem
16452 NAME=
"SSLCLIENTKEY"
16454 >ssl client key (G)
</DT
16457 >This variable is part of SSL-enabled Samba. This
16458 is only available if the SSL libraries have been compiled on your
16459 system and the configure option
<B
16463 given at configure time.
</P
16465 >This is the private key for
<A
16466 HREF=
"smbclient.1.html"
16472 >. It's only needed if the
16473 client should have a certificate.
</P
16477 >ssl client key = /usr/local/ssl/private/smbclient.pem
16483 NAME=
"SSLCOMPATIBILITY"
16485 >ssl compatibility (G)
</DT
16488 >This variable is part of SSL-enabled Samba. This
16489 is only available if the SSL libraries have been compiled on your
16490 system and the configure option
<B
16494 given at configure time.
</P
16496 >This variable defines whether OpenSSL should be configured
16497 for bug compatibility with other SSL implementations. This is
16498 probably not desirable because currently no clients with SSL
16499 implementations other than OpenSSL exist.
</P
16503 >ssl compatibility = no
</B
16508 NAME=
"SSLEGDSOCKET"
16510 >ssl egd socket (G)
</DT
16513 >This variable is part of SSL-enabled Samba. This
16514 is only available if the SSL libraries have been compiled on your
16515 system and the configure option
<B
16519 given at configure time.
</P
16521 > This option is used to define the location of the communiation socket of
16522 an EGD or PRNGD daemon, from which entropy can be retrieved. This option
16523 can be used instead of or together with the
<A
16524 HREF=
"#SSLENTROPYFILE"
16528 >ssl entropy file
</I
16532 directive.
255 bytes of entropy will be retrieved from the daemon.
16541 NAME=
"SSLENTROPYBYTES"
16543 >ssl entropy bytes (G)
</DT
16546 >This variable is part of SSL-enabled Samba. This
16547 is only available if the SSL libraries have been compiled on your
16548 system and the configure option
<B
16552 given at configure time.
</P
16554 > This parameter is used to define the number of bytes which should
16555 be read from the
<A
16556 HREF=
"#SSLENTROPYFILE"
16564 > If a -
1 is specified, the entire file will
16570 >ssl entropy bytes =
255</B
16575 NAME=
"SSLENTROPYFILE"
16577 >ssl entropy file (G)
</DT
16580 >This variable is part of SSL-enabled Samba. This
16581 is only available if the SSL libraries have been compiled on your
16582 system and the configure option
<B
16586 given at configure time.
</P
16588 > This parameter is used to specify a file from which processes will
16589 read
"random bytes" on startup. In order to seed the internal pseudo
16590 random number generator, entropy must be provided. On system with a
16594 > device file, the processes
16595 will retrieve its entropy from the kernel. On systems without kernel
16596 entropy support, a file can be supplied that will be read on startup
16597 and that will be used to seed the PRNG.
16612 HREF=
"#SSLHOSTSRESIGN"
16616 > ssl hosts resign
</I
16623 NAME=
"SSLHOSTSRESIGN"
16625 >ssl hosts resign (G)
</DT
16628 >This variable is part of SSL-enabled Samba. This
16629 is only available if the SSL libraries have been compiled on your
16630 system and the configure option
<B
16634 given at configure time.
</P
16636 >These two variables define whether Samba will go
16637 into SSL mode or not. If none of them is defined, Samba will
16638 allow only SSL connections. If the
<A
16647 hosts (by IP-address, IP-address range, net group or name),
16648 only these hosts will be forced into SSL mode. If the
<TT
16651 > ssl hosts resign
</I
16653 > variable lists hosts, only these
16656 > be forced into SSL mode. The syntax for these two
16657 variables is the same as for the
<A
16673 > pair of variables, only
16674 that the subject of the decision is different: It's not the access
16675 right but whether SSL is used or not.
</P
16677 >The example below requires SSL connections from all hosts
16678 outside the local net (which is
192.168.*.*).
</P
16682 >ssl hosts =
<empty string
></B
16687 >ssl hosts resign =
<empty string
></B
16692 >ssl hosts resign =
192.168.
</B
16697 NAME=
"SSLREQUIRECLIENTCERT"
16699 >ssl require clientcert (G)
</DT
16702 >This variable is part of SSL-enabled Samba. This
16703 is only available if the SSL libraries have been compiled on your
16704 system and the configure option
<B
16708 given at configure time.
</P
16710 >If this variable is set to
<TT
16714 server will not tolerate connections from clients that don't
16715 have a valid certificate. The directory/file given in
<A
16716 HREF=
"#SSLCACERTDIR"
16725 HREF=
"#SSLCACERTFILE"
16733 > will be used to look up the CAs that issued
16734 the client's certificate. If the certificate can't be verified
16735 positively, the connection will be terminated. If this variable
16739 >, clients don't need certificates.
16740 Contrary to web applications you really
<EM
16743 require client certificates. In the web environment the client's
16744 data is sensitive (credit card numbers) and the server must prove
16745 to be trustworthy. In a file server environment the server's data
16746 will be sensitive and the clients must prove to be trustworthy.
</P
16750 >ssl require clientcert = no
</B
16755 NAME=
"SSLREQUIRESERVERCERT"
16757 >ssl require servercert (G)
</DT
16760 >This variable is part of SSL-enabled Samba. This
16761 is only available if the SSL libraries have been compiled on your
16762 system and the configure option
<B
16766 given at configure time.
</P
16768 >If this variable is set to
<TT
16773 HREF=
"smbclient.1.html"
16780 > will request a certificate from the server. Same as
16782 HREF=
"#SSLREQUIRECLIENTCERT"
16790 > for the server.
</P
16794 >ssl require servercert = no
</B
16800 NAME=
"SSLSERVERCERT"
16802 >ssl server cert (G)
</DT
16805 >This variable is part of SSL-enabled Samba. This
16806 is only available if the SSL libraries have been compiled on your
16807 system and the configure option
<B
16811 given at configure time.
</P
16813 >This is the file containing the server's certificate.
16816 > have a certificate. The
16817 file may also contain the server's private key. See later for
16818 how certificates and private keys are created.
</P
16822 >ssl server cert =
<empty string
>
16828 NAME=
"SSLSERVERKEY"
16830 >ssl server key (G)
</DT
16833 >This variable is part of SSL-enabled Samba. This
16834 is only available if the SSL libraries have been compiled on your
16835 system and the configure option
<B
16839 given at configure time.
</P
16841 >This file contains the private key of the server. If
16842 this variable is not defined, the key is looked up in the
16843 certificate file (it may be appended to the certificate).
16846 > have a private key
16847 and the certificate
<EM
16850 match this private key.
</P
16854 >ssl server key =
<empty string
>
16862 >ssl version (G)
</DT
16865 >This variable is part of SSL-enabled Samba. This
16866 is only available if the SSL libraries have been compiled on your
16867 system and the configure option
<B
16871 given at configure time.
</P
16873 >This enumeration variable defines the versions of the
16874 SSL protocol that will be used.
<TT
16878 dynamic negotiation of SSL v2 or v3,
<TT
16885 > results in SSL v3 and
16889 > results in TLS v1. TLS (Transport Layer
16890 Security) is the new standard for SSL.
</P
16894 >ssl version =
"ssl2or3"</B
16901 >stat cache (G)
</DT
16904 >This parameter determines if
<A
16908 > will use a cache in order to
16909 speed up case insensitive name mappings. You should never need
16910 to change this parameter.
</P
16914 >stat cache = yes
</B
16919 NAME=
"STATCACHESIZE"
16921 >stat cache size (G)
</DT
16924 >This parameter determines the number of
16931 never need to change this parameter.
</P
16935 >stat cache size =
50</B
16945 >This enables or disables logging of connections
16946 to a status file that
<A
16947 HREF=
"smbstatus.1.html"
16953 >With this disabled
<B
16957 to tell you what connections are active. You should never need to
16958 change this parameter.
</P
16967 NAME=
"STRICTALLOCATE"
16969 >strict allocate (S)
</DT
16972 >This is a boolean that controls the handling of
16973 disk space allocation in the server. When this is set to
<TT
16977 the server will change from UNIX behaviour of not committing real
16978 disk storage blocks when a file is extended to the Windows behaviour
16979 of actually forcing the disk system to allocate real storage blocks
16980 when a file is created or extended to be a given size. In UNIX
16981 terminology this means that Samba will stop creating sparse files.
16982 This can be slow on some systems.
</P
16984 >When strict allocate is
<TT
16987 > the server does sparse
16988 disk block allocation when a file is extended.
</P
16990 >Setting this to
<TT
16993 > can help Samba return
16994 out of quota messages on systems that are restricting the disk quota
16999 >strict allocate = no
</B
17004 NAME=
"STRICTLOCKING"
17006 >strict locking (S)
</DT
17009 >This is a boolean that controls the handling of
17010 file locking in the server. When this is set to
<TT
17014 the server will check every read and write access for file locks, and
17015 deny access if locks exist. This can be slow on some systems.
</P
17017 >When strict locking is
<TT
17020 > the server does file
17021 lock checks only when the client explicitly asks for them.
</P
17023 >Well-behaved clients always ask for lock checks when it
17024 is important, so in the vast majority of cases
<B
17028 > is preferable.
</P
17032 >strict locking = no
</B
17039 >strict sync (S)
</DT
17042 >Many Windows applications (including the Windows
17043 98 explorer shell) seem to confuse flushing buffer contents to
17044 disk with doing a sync to disk. Under UNIX, a sync call forces
17045 the process to be suspended until the kernel has ensured that
17046 all outstanding data in kernel disk buffers has been safely stored
17047 onto stable storage. This is very slow and should only be done
17048 rarely. Setting this parameter to
<TT
17052 default) means that
<A
17056 > ignores the Windows applications requests for
17057 a sync call. There is only a possibility of losing data if the
17058 operating system itself that Samba is running on crashes, so there is
17059 little danger in this default setting. In addition, this fixes many
17060 performance problems that people have reported with the new Windows98
17061 explorer shell file copies.
</P
17076 >strict sync = no
</B
17086 >This is a boolean that controls whether to
17087 strip trailing dots off UNIX filenames. This helps with some
17088 CDROMs that have filenames ending in a single dot.
</P
17099 >sync always (S)
</DT
17102 >This is a boolean parameter that controls
17103 whether writes will always be written to stable storage before
17104 the write call returns. If this is
<TT
17107 > then the server will be
17108 guided by the client's request in each write call (clients can
17109 set a bit indicating that a particular write should be synchronous).
17113 > then every write will be followed by a
<B
17117 > call to ensure the data is written to disk. Note that
17123 > parameter must be set to
17127 > in order for this parameter to have
17143 >sync always = no
</B
17153 >This parameter maps how Samba debug messages
17154 are logged onto the system syslog logging levels. Samba debug
17155 level zero maps onto syslog
<TT
17159 level one maps onto
<TT
17166 >, debug level three
17167 maps onto LOG_INFO. All higher levels are mapped to
<TT
17172 >This parameter sets the threshold for sending messages
17173 to syslog. Only messages with debug level less than this value
17174 will be sent to syslog.
</P
17185 >syslog only (G)
</DT
17188 >If this parameter is set then Samba debug
17189 messages are logged into the system syslog only, and not to
17190 the debug log files.
</P
17194 >syslog only = no
</B
17199 NAME=
"TEMPLATEHOMEDIR"
17201 >template homedir (G)
</DT
17204 >When filling out the user information for a Windows NT
17206 HREF=
"winbindd.8.html"
17210 uses this parameter to fill in the home directory for that user.
17216 > is present it is substituted
17217 with the user's Windows NT domain name. If the string
<TT
17223 > is present it is substituted with the user's Windows
17228 >template homedir = /home/%D/%U
</B
17233 NAME=
"TEMPLATESHELL"
17235 >template shell (G)
</DT
17238 >When filling out the user information for a Windows NT
17240 HREF=
"winbindd.8.html"
17244 uses this parameter to fill in the login shell for that user.
</P
17248 >template shell = /bin/false
</B
17255 >time offset (G)
</DT
17258 >This parameter is a setting in minutes to add
17259 to the normal GMT to local time conversion. This is useful if
17260 you are serving a lot of PCs that have incorrect daylight
17261 saving time handling.
</P
17265 >time offset =
0</B
17270 >time offset =
60</B
17277 >time server (G)
</DT
17280 >This parameter determines if
<A
17285 > advertises itself as a time server to Windows
17290 >time server = no
</B
17295 NAME=
"TIMESTAMPLOGS"
17297 >timestamp logs (G)
</DT
17301 HREF=
"#DEBUGTIMESTAMP"
17305 > debug timestamp
</I
17312 NAME=
"TOTALPRINTJOBS"
17314 >total print jobs (G)
</DT
17317 >This parameter accepts an integer value which defines
17318 a limit on the maximum number of print jobs that will be accepted
17319 system wide at any given time. If a print job is submitted
17320 by a client which will exceed this number, then
<A
17325 error indicating that no space is available on the server. The
17326 default value of
0 means that no such limit exists. This parameter
17327 can be used to prevent a server from exceeding its capacity and is
17328 designed as a printing throttle. See also
17330 HREF=
"#MAXPRINTJOBS"
17342 >total print jobs =
0</B
17347 >total print jobs =
5000</B
17352 NAME=
"UNIXEXTENSIONS"
17354 >unix extensions(G)
</DT
17357 >This boolean parameter controls whether Samba
17358 implments the CIFS UNIX extensions, as defined by HP. These
17359 extensions enable CIFS to server UNIX clients to UNIX servers
17360 better, and allow such things as symbolic links, hard links etc.
17361 These extensions require a similarly enabled client, and are of
17362 no current use to Windows clients.
</P
17366 >unix extensions = no
</B
17371 NAME=
"UNIXPASSWORDSYNC"
17373 >unix password sync (G)
</DT
17376 >This boolean parameter controls whether Samba
17377 attempts to synchronize the UNIX password with the SMB password
17378 when the encrypted SMB password in the smbpasswd file is changed.
17379 If this is set to
<TT
17382 > the program specified in the
<TT
17388 >parameter is called
<EM
17391 to allow the new UNIX password to be set without access to the
17392 old UNIX password (as the SMB password change code has no
17393 access to the old password cleartext, only the new).
</P
17396 HREF=
"#PASSWDPROGRAM"
17416 >unix password sync = no
</B
17421 NAME=
"UPDATEENCRYPTED"
17423 >update encrypted (G)
</DT
17426 >This boolean parameter allows a user logging
17427 on with a plaintext password to have their encrypted (hashed)
17428 password in the smbpasswd file to be updated automatically as
17429 they log on. This option allows a site to migrate from plaintext
17430 password authentication (users authenticate with plaintext
17431 password over the wire, and are checked against a UNIX account
17432 database) to encrypted password authentication (the SMB
17433 challenge/response authentication mechanism) without forcing
17434 all users to re-enter their passwords via smbpasswd at the time the
17435 change is made. This is a convenience option to allow the change over
17436 to encrypted passwords to be made over a longer period. Once all users
17437 have encrypted representations of their passwords in the smbpasswd
17438 file this parameter should be set to
<TT
17443 >In order for this parameter to work correctly the
<A
17444 HREF=
"#ENCRYPTPASSWORDS"
17448 >encrypt passwords
</I
17452 > parameter must be set to
<TT
17456 this parameter is set to
<TT
17461 >Note that even when this parameter is set a user
17462 authenticating to
<B
17465 > must still enter a valid
17466 password in order to connect correctly, and to update their hashed
17467 (smbpasswd) passwords.
</P
17471 >update encrypted = no
</B
17476 NAME=
"USECLIENTDRIVER"
17478 >use client driver (S)
</DT
17481 >This parameter applies only to Windows NT/
2000
17482 clients. It has no affect on Windows
95/
98/ME clients. When
17483 serving a printer to Windows NT/
2000 clients without first installing
17484 a valid printer driver on the Samba host, the client will be required
17485 to install a local printer driver. From this point on, the client
17486 will treat the print as a local printer and not a network printer
17487 connection. This is much the same behavior that will occur
17490 >disable spoolss = yes
</B
17493 >The differentiating
17494 factor is that under normal circumstances, the NT/
2000 client will
17495 attempt to open the network printer using MS-RPC. The problem is that
17496 because the client considers the printer to be local, it will attempt
17497 to issue the OpenPrinterEx() call requesting access rights associated
17498 with the logged on user. If the user possesses local administator rights
17499 but not root privilegde on the Samba host (often the case), the OpenPrinterEx()
17500 call will fail. The result is that the client will now display an
"Access
17501 Denied; Unable to connect" message in the printer queue window (even though
17502 jobs may successfully be printed).
</P
17504 >If this parameter is enabled for a printer, then any attempt
17505 to open the printer with the PRINTER_ACCESS_ADMINISTER right is mapped
17506 to PRINTER_ACCESS_USE instead. Thus allowing the OpenPrinterEx()
17507 call to succeed.
<EM
17508 >This parameter MUST not be able enabled
17509 on a print share which has valid print driver installed on the Samba
17514 HREF=
"#DISABLESPOOLSS"
17515 >disable spoolss
</A
17521 >use client driver = no
</B
17531 >This global parameter determines if the tdb internals of Samba can
17532 depend on mmap working correctly on the running system. Samba requires a coherent
17533 mmap/read-write system memory cache. Currently only HPUX does not have such a
17534 coherent cache, and so this parameter is set to
<TT
17538 default on HPUX. On all other systems this parameter should be left alone. This
17539 parameter is provided to help the Samba developers track down problems with
17540 the tdb internal code.
17552 >use rhosts (G)
</DT
17555 >If this global parameter is
<TT
17559 that the UNIX user's
<TT
17562 > file in their home directory
17563 will be read to find the names of hosts and users who will be allowed
17564 access without specifying a password.
</P
17574 > can be a major security hole. This is because you are
17575 trusting the PC to supply the correct username. It is very easy to
17576 get a PC to supply a false username. I recommend that the
<TT
17581 > option be only used if you really know what
17586 >use rhosts = no
</B
17630 >Multiple users may be specified in a comma-delimited
17631 list, in which case the supplied password will be tested against
17632 each username in turn (left to right).
</P
17639 > line is needed only when
17640 the PC is unable to supply its own username. This is the case
17641 for the COREPLUS protocol or where your users have different WfWg
17642 usernames to UNIX usernames. In both these cases you may also be
17643 better using the \\server\share%user syntax instead.
</P
17650 > line is not a great
17651 solution in many cases as it means Samba will try to validate
17652 the supplied password against each of the usernames in the
17658 > line in turn. This is slow and
17659 a bad idea for lots of users in case of duplicate passwords.
17660 You may get timeouts or security breaches using this parameter
17663 >Samba relies on the underlying UNIX security. This
17664 parameter does not restrict who can login, it just offers hints
17665 to the Samba server as to what usernames might correspond to the
17666 supplied password. Users can login as whoever they please and
17667 they will be able to do no more damage than if they started a
17668 telnet session. The daemon runs as the user that they log in as,
17669 so they cannot do anything that user cannot do.
</P
17671 >To restrict a service to a particular set of users you
17683 >If any of the usernames begin with a '@' then the name
17684 will be looked up first in the NIS netgroups list (if Samba
17685 is compiled with netgroup support), followed by a lookup in
17686 the UNIX groups database and will expand to a list of all users
17687 in the group of that name.
</P
17689 >If any of the usernames begin with a '+' then the name
17690 will be looked up only in the UNIX groups database and will
17691 expand to a list of all users in the group of that name.
</P
17693 >If any of the usernames begin with a '
&'then the name
17694 will be looked up only in the NIS netgroups database (if Samba
17695 is compiled with netgroup support) and will expand to a list
17696 of all users in the netgroup group of that name.
</P
17698 >Note that searching though a groups database can take
17699 quite some time, and some clients may time out during the
17702 >See the section
<A
17705 USERNAME/PASSWORD VALIDATION
</A
17706 > for more information on how
17707 this parameter determines access to the services.
</P
17711 >The guest account if a guest service,
17712 else
<empty string
>.
</B
17717 >username = fred, mary, jack, jane,
17718 @users, @pcgroup
</B
17723 NAME=
"USERNAMELEVEL"
17725 >username level (G)
</DT
17728 >This option helps Samba to try and 'guess' at
17729 the real UNIX username, as many DOS clients send an all-uppercase
17730 username. By default Samba tries all lowercase, followed by the
17731 username with the first letter capitalized, and fails if the
17732 username is not found on the UNIX machine.
</P
17734 >If this parameter is set to non-zero the behavior changes.
17735 This parameter is a number that specifies the number of uppercase
17736 combinations to try while trying to determine the UNIX user name. The
17737 higher the number the more combinations will be tried, but the slower
17738 the discovery of usernames will be. Use this parameter when you have
17739 strange usernames on your UNIX machine, such as
<TT
17747 >username level =
0</B
17752 >username level =
5</B
17759 >username map (G)
</DT
17762 >This option allows you to specify a file containing
17763 a mapping of usernames from the clients to the server. This can be
17764 used for several purposes. The most common is to map usernames
17765 that users use on DOS or Windows machines to those that the UNIX
17766 box uses. The other is to map multiple users to a single username
17767 so that they can more easily share files.
</P
17769 >The map file is parsed line by line. Each line should
17770 contain a single UNIX username on the left then a '=' followed
17771 by a list of usernames on the right. The list of usernames on the
17772 right may contain names of the form @group in which case they
17773 will match any UNIX username in that group. The special client
17774 name '*' is a wildcard and matches any name. Each line of the
17775 map file may be up to
1023 characters long.
</P
17777 >The file is processed on each line by taking the
17778 supplied username and comparing it with each username on the right
17779 hand side of the '=' signs. If the supplied name matches any of
17780 the names on the right hand side then it is replaced with the name
17781 on the left. Processing then continues with the next line.
</P
17783 >If any line begins with a '#' or a ';' then it is
17786 >If any line begins with an '!' then the processing
17787 will stop after that line if a mapping was done by the line.
17788 Otherwise mapping continues with every line being processed.
17789 Using '!' is most useful when you have a wildcard mapping line
17790 later in the file.
</P
17792 >For example to map from the name
<TT
17799 > to the UNIX name
<TT
17802 > you would use:
</P
17806 >root = admin administrator
</B
17809 >Or to map anyone in the UNIX group
<TT
17813 to the UNIX name
<TT
17816 > you would use:
</P
17823 >You can have as many mappings as you like in a username
17826 >If your system supports the NIS NETGROUP option then
17827 the netgroup database is checked before the
<TT
17831 > database for matching groups.
</P
17833 >You can map Windows usernames that have spaces in them
17834 by using double quotes around the name. For example:
</P
17838 >tridge =
"Andrew Tridgell"</B
17841 >would map the windows username
"Andrew Tridgell" to the
17842 unix username
"tridge".
</P
17844 >The following example would map mary and fred to the
17845 unix user sys, and map the rest to guest. Note the use of the
17846 '!' to tell Samba to stop processing if it gets a match on
17856 CLASS=
"PROGRAMLISTING"
17865 >Note that the remapping is applied to all occurrences
17866 of usernames. Thus if you connect to \\server\fred and
<TT
17869 > is remapped to
<TT
17873 will actually be connecting to \\server\mary and will need to
17874 supply a password suitable for
<TT
17881 >. The only exception to this is the
17882 username passed to the
<A
17883 HREF=
"#PASSWORDSERVER"
17887 > password server
</I
17890 > (if you have one). The password
17891 server will receive whatever username the client supplies without
17894 >Also note that no reverse mapping is done. The main effect
17895 this has is with printing. Users who have been mapped may have
17896 trouble deleting print jobs as PrintManager under WfWg will think
17897 they don't own the print job.
</P
17900 >no username map
</EM
17905 >username map = /usr/local/samba/lib/users.map
17916 >This boolean parameter is only available if
17917 Samba has been configured and compiled with the option
<B
17923 > then Samba will attempt
17924 to add utmp or utmpx records (depending on the UNIX system) whenever a
17925 connection is made to a Samba server. Sites may use this to record the
17926 user connecting to a Samba share.
</P
17929 HREF=
"#UTMPDIRECTORY"
17933 > utmp directory
</I
17945 NAME=
"UTMPDIRECTORY"
17947 >utmp directory(G)
</DT
17950 >This parameter is only available if Samba has
17951 been configured and compiled with the option
<B
17954 >. It specifies a directory pathname that is
17955 used to store the utmp or utmpx files (depending on the UNIX system) that
17956 record user connections to a Samba server. See also the
<A
17964 > parameter. By default this is
17965 not set, meaning the system will use whatever utmp file the
17966 native system is set to use (usually
17973 >no utmp directory
</EM
17980 >valid users (S)
</DT
17983 >This is a list of users that should be allowed
17984 to login to this service. Names starting with '@', '+' and '
&'
17985 are interpreted using the same rules as described in the
17993 >If this is empty (the default) then any user can login.
17994 If a username is in both this list and the
<TT
18000 > list then access is denied for that user.
</P
18002 >The current servicename is substituted for
<TT
18008 >. This is useful in the [homes] section.
</P
18011 HREF=
"#INVALIDUSERS"
18022 >No valid users list (anyone can login)
18028 >valid users = greg, @pcusers
</B
18038 >This is a list of files and directories that
18039 are neither visible nor accessible. Each entry in the list must
18040 be separated by a '/', which allows spaces to be included
18041 in the entry. '*' and '?' can be used to specify multiple files
18042 or directories as in DOS wildcards.
</P
18044 >Each entry must be a unix path, not a DOS path and
18047 > include the unix directory
18056 is applicable in vetoing files.
</P
18058 >One feature of the veto files parameter that it
18059 is important to be aware of is Samba's behaviour when
18060 trying to delete a directory. If a directory that is
18061 to be deleted contains nothing but veto files this
18064 > unless you also set
18068 >delete veto files
</I
18078 >Setting this parameter will affect the performance
18079 of Samba, as it will be forced to check all files and directories
18080 for a match as they are scanned.
</P
18092 HREF=
"#CASESENSITIVE"
18096 > case sensitive
</I
18102 >No files or directories are vetoed.
18113 CLASS=
"PROGRAMLISTING"
18114 >; Veto any files containing the word Security,
18115 ; any ending in .tmp, and any directory containing the
18117 veto files = /*Security*/*.tmp/*root*/
18119 ; Veto the Apple specific files that a NetAtalk server
18121 veto files = /.AppleDouble/.bin/.AppleDesktop/Network Trash Folder/
</PRE
18129 NAME=
"VETOOPLOCKFILES"
18131 >veto oplock files (S)
</DT
18134 >This parameter is only valid when the
<A
18143 parameter is turned on for a share. It allows the Samba administrator
18144 to selectively turn off the granting of oplocks on selected files that
18145 match a wildcarded list, similar to the wildcarded list used in the
18158 >No files are vetoed for oplock
18162 >You might want to do this on files that you know will
18163 be heavily contended for by clients. A good example of this
18164 is in the NetBench SMB benchmark program, which causes heavy
18165 client contention for files ending in
<TT
18169 To cause Samba not to grant oplocks on these files you would use
18170 the line (either in the [global] section or in the section for
18171 the particular NetBench share :
</P
18175 >veto oplock files = /*.SEM/
18183 >vfs object (S)
</DT
18186 >This parameter specifies a shared object file that
18187 is used for Samba VFS I/O operations. By default, normal
18188 disk I/O operations are used but these can be overloaded
18189 with a VFS object. The Samba VFS layer is new to Samba
2.2 and
18190 must be enabled at compile time with --with-vfs.
</P
18200 >vfs options (S)
</DT
18203 >This parameter allows parameters to be passed
18204 to the vfs layer at initialization time. The Samba VFS layer
18205 is new to Samba
2.2 and must be enabled at compile time
18206 with --with-vfs. See also
<A
18227 > This allows you to override the volume label
18228 returned for a share. Useful for CDROMs with installation programs
18229 that insist on a particular volume label.
</P
18232 >the name of the share
</EM
18239 >wide links (S)
</DT
18242 >This parameter controls whether or not links
18243 in the UNIX file system may be followed by the server. Links
18244 that point to areas within the directory tree exported by the
18245 server are always allowed; this parameter controls access only
18246 to areas that are outside the directory tree being exported.
</P
18248 >Note that setting this parameter can have a negative
18249 effect on your server performance due to the extra system calls
18250 that Samba has to do in order to perform the link checks.
</P
18254 >wide links = yes
</B
18259 NAME=
"WINBINDCACHETIME"
18261 >winbind cache time
</DT
18264 >This parameter specifies the number of seconds the
18266 HREF=
"winbindd.8.html"
18269 > daemon will cache
18270 user and group information before querying a Windows NT server
18275 >winbind cache type =
15</B
18280 NAME=
"WINBINDENUMUSERS"
18286 >On large installations using
18288 HREF=
"winbindd.8.html"
18292 necessary to suppress the enumeration of users through the
18304 > group of system calls. If
18308 >winbind enum users
</I
18311 false, calls to the
<B
18315 will not return any data.
</P
18320 enumeration may cause some programs to behave oddly. For
18321 example, the finger program relies on having access to the
18322 full user list when searching for matching
18327 >winbind enum users = yes
</B
18332 NAME=
"WINBINDENUMGROUPS"
18338 >On large installations using
18340 HREF=
"winbindd.8.html"
18344 necessary to suppress the enumeration of groups through the
18356 > group of system calls. If
18360 >winbind enum groups
</I
18363 false, calls to the
<B
18367 call will not return any data.
</P
18371 > Turning off group
18372 enumeration may cause some programs to behave oddly.
18377 >winbind enum groups = yes
</B
18388 >The winbind gid parameter specifies the range of group
18389 ids that are allocated by the
<A
18390 HREF=
"winbindd.8.html"
18393 > daemon. This range of group ids should have no
18394 existing local or NIS groups within it as strange conflicts can
18395 occur otherwise.
</P
18399 >winbind gid =
<empty string
>
18405 >winbind gid =
10000-
20000</B
18410 NAME=
"WINBINDSEPARATOR"
18412 >winbind separator
</DT
18415 >This parameter allows an admin to define the character
18416 used when listing a username of the form of
<TT
18417 CLASS=
"REPLACEABLE"
18423 CLASS=
"REPLACEABLE"
18428 is only applicable when using the
<TT
18430 >pam_winbind.so
</TT
18434 >nss_winbind.so
</TT
18435 > modules for UNIX services.
18440 >winbind separator = \
</B
18445 >winbind separator = +
</B
18455 >The winbind gid parameter specifies the range of group
18456 ids that are allocated by the
<A
18457 HREF=
"winbindd.8.html"
18460 > daemon. This range of ids should have no
18461 existing local or NIS users within it as strange conflicts can
18462 occur otherwise.
</P
18466 >winbind uid =
<empty string
>
18472 >winbind uid =
10000-
20000</B
18476 >winbind use default domain,
<A
18477 NAME=
"WINBINDUSEDEFAULTDOMAIN"
18479 >winbind use default domain
</DT
18482 >This parameter specifies whether the
<A
18483 HREF=
"winbindd.8.html"
18487 daemon should operate on users without domain component in their username.
18488 Users without a domain component are treated as is part of the winbindd server's
18489 own domain. While this does not benifit Windows users, it makes SSH, FTP and e-mail
18490 function in a way much closer to the way they would in a native unix system.
</P
18494 >winbind use default domain =
<falseg
>
18500 >winbind use default domain = true
</B
18510 >When Samba is running as a WINS server this
18511 allows you to call an external program for all changes to the
18512 WINS database. The primary use for this option is to allow the
18513 dynamic update of external name resolution databases such as
18516 >The wins hook parameter specifies the name of a script
18517 or executable that will be called as follows:
</P
18521 >wins_hook operation name nametype ttl IP_list
18529 >The first argument is the operation and is one
18530 of
"add",
"delete", or
"refresh". In most cases the operation can
18531 be ignored as the rest of the parameters provide sufficient
18532 information. Note that
"refresh" may sometimes be called when the
18533 name has not previously been added, in that case it should be treated
18538 >The second argument is the NetBIOS name. If the
18539 name is not a legal name then the wins hook is not called.
18540 Legal names contain only letters, digits, hyphens, underscores
18545 >The third argument is the NetBIOS name
18546 type as a
2 digit hexadecimal number.
</P
18550 >The fourth argument is the TTL (time to live)
18551 for the name in seconds.
</P
18555 >The fifth and subsequent arguments are the IP
18556 addresses currently registered for that name. If this list is
18557 empty then the name should be deleted.
</P
18561 >An example script that calls the BIND dynamic DNS update
18565 > is provided in the examples
18566 directory of the Samba source code.
</P
18572 >wins proxy (G)
</DT
18575 >This is a boolean that controls if
<A
18579 > will respond to broadcast name
18580 queries on behalf of other hosts. You may need to set this
18584 > for some older clients.
</P
18588 >wins proxy = no
</B
18595 >wins server (G)
</DT
18598 >This specifies the IP address (or DNS name: IP
18599 address for preference) of the WINS server that
<A
18603 > should register with. If you have a WINS server on
18604 your network then you should set this to the WINS server's IP.
</P
18606 >You should point this at your WINS server if you have a
18607 multi-subnetted network.
</P
18611 >. You need to set up Samba to point
18612 to a WINS server if you have multiple subnets and wish cross-subnet
18613 browsing to work correctly.
</P
18615 >See the documentation file
<TT
18619 in the docs/ directory of your Samba source distribution.
</P
18627 >wins server =
192.9.200.1</B
18634 >wins support (G)
</DT
18637 >This boolean controls if the
<A
18642 > process in Samba will act as a WINS server. You should
18643 not set this to
<TT
18646 > unless you have a multi-subnetted network and
18647 you wish a particular
<B
18650 > to be your WINS server.
18651 Note that you should
<EM
18657 on more than one machine in your network.
</P
18661 >wins support = no
</B
18671 >This controls what workgroup your server will
18672 appear to be in when queried by clients. Note that this parameter
18673 also controls the Domain name used with the
<A
18674 HREF=
"#SECURITYEQUALSDOMAIN"
18677 >security = domain
</B
18683 >set at compile time to WORKGROUP
</EM
18688 >workgroup = MYGROUP
</B
18706 > for people who can't spell :-).
</P
18710 NAME=
"WRITECACHESIZE"
18712 >write cache size (S)
</DT
18715 >If this integer parameter is set to non-zero value,
18716 Samba will create an in-memory cache for each oplocked file
18720 non-oplocked files). All writes that the client does not request
18721 to be flushed directly to disk will be stored in this cache if possible.
18722 The cache is flushed onto disk when a write comes in whose offset
18723 would not fit into the cache or when the file is closed by the client.
18724 Reads for the file are also served from this cache if the data is stored
18727 >This cache allows Samba to batch client writes into a more
18728 efficient write size for RAID disks (i.e. writes may be tuned to
18729 be the RAID stripe size) and can improve performance on systems
18730 where the disk subsystem is a bottleneck but there is free
18731 memory for userspace programs.
</P
18733 >The integer parameter specifies the size of this cache
18734 (per oplocked file) in bytes.
</P
18738 >write cache size =
0</B
18743 >write cache size =
262144</B
18746 >for a
256k cache size per file.
</P
18752 >write list (S)
</DT
18755 >This is a list of users that are given read-write
18756 access to a service. If the connecting user is in this list then
18757 they will be given write access, no matter what the
<A
18766 option is set to. The list can include group names using the
18769 >Note that if a user is in both the read list and the
18770 write list then they will be given write access.
</P
18785 >write list =
<empty string
>
18791 >write list = admin, root, @staff
18819 >This parameter controls whether or not the server
18820 will support raw write SMB's when transferring data from clients.
18821 You should never need to change this parameter.
</P
18825 >write raw = yes
</B
18835 >An inverted synonym is
<A
18845 >If this parameter is
<TT
18849 of a service may not create or modify files in the service's
18852 >Note that a printable service (
<B
18854 >printable = yes
</B
18858 > allow writing to the directory
18859 (user privileges permitting), but only via spooling operations.
</P
18877 >Although the configuration file permits service names
18878 to contain spaces, your client software may not. Spaces will
18879 be ignored in comparisons anyway, so it shouldn't be a
18880 problem - but be aware of the possibility.
</P
18882 >On a similar note, many clients - especially DOS clients -
18883 limit service names to eight characters.
<A
18888 > has no such limitation, but attempts to connect from such
18889 clients will fail if they truncate the service names. For this reason
18890 you should probably keep your service names down to eight characters
18893 >Use of the [homes] and [printers] special sections make life
18894 for an administrator easy, but the various combinations of default
18895 attributes can be tricky. Take extreme care when designing these
18896 sections. In particular, ensure that the permissions on spool
18897 directories are correct.
</P
18907 >This man page is correct for version
2.2 of
18908 the Samba suite.
</P
18919 HREF=
"samba.7.html"
18924 HREF=
"smbpasswd.8.html"
18956 HREF=
"smbclient.1.html"
18964 HREF=
"nmblookup.1.html"
18972 HREF=
"testparm.1.html"
18980 HREF=
"testprns.1.html"
18997 >The original Samba software and related utilities
18998 were created by Andrew Tridgell. Samba is now developed
18999 by the Samba Team as an Open Source project similar
19000 to the way the Linux kernel is developed.
</P
19002 >The original Samba man pages were written by Karl Auer.
19003 The man page sources were converted to YODL format (another
19004 excellent piece of Open Source software, available at
19006 HREF=
"ftp://ftp.icce.rug.nl/pub/unix/"
19008 > ftp://ftp.icce.rug.nl/pub/unix/
</A
19009 >) and updated for the Samba
2.0
19010 release by Jeremy Allison. The conversion to DocBook for
19011 Samba
2.2 was done by Gerald Carter
</P