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" and the
789 server is running with share-level security ("security = share")
790 then steps 1 to 5 are skipped.</P
797 >If the client has passed a username/password
798 pair and that username/password pair is validated by the UNIX
799 system's password programs then the connection is made as that
800 username. Note that this includes the
811 >If the client has previously registered a username
812 with the system and now supplies a correct password for that
813 username then the connection is allowed.</P
817 >The client's NetBIOS name and any previously
818 used user names are checked against the supplied password, if
819 they match then the connection is allowed as the corresponding
824 >If the client has previously validated a
825 username/password pair with the server and the client has passed
826 the validation token then that username is used. </P
830 >If a "user = " field is given in the
834 > file for the service and the client
835 has supplied a password, and that password matches (according to
836 the UNIX system's password checking) with one of the usernames
837 from the "user =" field then the connection is made as
838 the username in the "user =" line. If one
839 of the username in the "user =" list begins with a
840 '@' then that name expands to a list of names in
841 the group of the same name.</P
845 >If the service is a guest service then a
846 connection is made as the username given in the "guest
847 account =" for the service, irrespective of the
848 supplied password.</P
858 >COMPLETE LIST OF GLOBAL PARAMETERS</H2
860 >Here is a list of all global parameters. See the section of
861 each parameter for details. Note that some are synonyms.</P
868 HREF="#ABORTSHUTDOWNSCRIPT"
872 >abort shutdown script</I
880 HREF="#ADDPRINTERCOMMAND"
884 >add printer command</I
892 HREF="#ADDSHARECOMMAND"
896 >add share command</I
904 HREF="#ADDUSERSCRIPT"
916 HREF="#ADDMACHINESCRIPT"
920 >add machine script</I
928 HREF="#ALGORITHMICRIDBASE"
932 >algorithmic rid base</I
940 HREF="#ALLOWTRUSTEDDOMAINS"
944 >allow trusted domains</I
964 HREF="#ANNOUNCEVERSION"
1000 HREF="#BINDINTERFACESONLY"
1004 >bind interfaces only</I
1024 HREF="#CHANGENOTIFYTIMEOUT"
1028 >change notify timeout</I
1036 HREF="#CHANGESHARECOMMAND"
1040 >change share command</I
1072 HREF="#DEBUGHIRESTIMESTAMP"
1076 >debug hires timestamp</I
1096 HREF="#DEBUGTIMESTAMP"
1144 HREF="#DEFAULTSERVICE"
1156 HREF="#DELETEPRINTERCOMMAND"
1160 >delete printer command</I
1168 HREF="#DELETESHARECOMMAND"
1172 >delete share command</I
1180 HREF="#DELETEUSERSCRIPT"
1184 >delete user script</I
1192 HREF="#DFREECOMMAND"
1204 HREF="#DISABLESPOOLSS"
1228 HREF="#DOMAINADMINGROUP"
1232 >domain admin group</I
1240 HREF="#DOMAINGUESTGROUP"
1244 >domain guest group</I
1252 HREF="#DOMAINLOGONS"
1264 HREF="#DOMAINMASTER"
1276 HREF="#ENCRYPTPASSWORDS"
1280 >encrypt passwords</I
1288 HREF="#ENHANCEDBROWSING"
1292 >enhanced browsing</I
1300 HREF="#ENUMPORTSCOMMAND"
1304 >enumports command</I
1324 HREF="#HIDELOCALUSERS"
1328 >hide local users</I
1336 HREF="#HIDEUNREADABLE"
1408 HREF="#KERNELOPLOCKS"
1432 HREF="#LARGEREADWRITE"
1540 HREF="#LOADPRINTERS"
1576 HREF="#LOCKDIRECTORY"
1588 HREF="#LOCKSPINCOUNT"
1600 HREF="#LOCKSPINTIME"
1612 HREF="#PIDDIRECTORY"
1696 HREF="#LPQCACHETIME"
1708 HREF="#MACHINEPASSWORDTIMEOUT"
1712 >machine password timeout</I
1720 HREF="#MANGLEDSTACK"
1780 HREF="#MAXOPENFILES"
1804 HREF="#MAXSMBDPROCESSES"
1808 >max smbd processes</I
1852 HREF="#MESSAGECOMMAND"
1864 HREF="#MINPASSWDLENGTH"
1868 >min passwd length</I
1876 HREF="#MINPASSWORDLENGTH"
1880 >min password length</I
1912 HREF="#NAMERESOLVEORDER"
1916 >name resolve order</I
1924 HREF="#NETBIOSALIASES"
1948 HREF="#NETBIOSSCOPE"
1972 HREF="#NONUNIXACCOUNTRANGE"
1976 >non unix account range</I
1984 HREF="#NTPIPESUPPORT"
1996 HREF="#NTSTATUSSUPPORT"
2000 >nt status support</I
2008 HREF="#NULLPASSWORDS"
2020 HREF="#OBEYPAMRESTRICTIONS"
2024 >obey pam restrictions</I
2032 HREF="#OPLOCKBREAKWAITTIME"
2036 >oplock break wait time</I
2056 HREF="#OS2DRIVERMAP"
2068 HREF="#PAMPASSWORDCHANGE"
2072 >pam password change</I
2092 HREF="#PASSDBBACKEND"
2116 HREF="#PASSWDCHATDEBUG"
2120 >passwd chat debug</I
2128 HREF="#PASSWDPROGRAM"
2140 HREF="#PASSWORDLEVEL"
2152 HREF="#PASSWORDSERVER"
2164 HREF="#PREFEREDMASTER"
2176 HREF="#PREFERREDMASTER"
2180 >preferred master</I
2212 HREF="#PRINTCAPNAME"
2224 HREF="#PRINTERDRIVERFILE"
2228 >printer driver file</I
2296 HREF="#REMOTEANNOUNCE"
2308 HREF="#REMOTEBROWSESYNC"
2312 >remote browse sync</I
2320 HREF="#RESTRICTANONYMOUS"
2324 >restrict anonymous</I
2356 HREF="#ROOTDIRECTORY"
2380 HREF="#SERVERSTRING"
2392 HREF="#SHOWADDPRINTERWIZARD"
2396 >show add printer wizard</I
2404 HREF="#SHUTDOWNSCRIPT"
2416 HREF="#SMBPASSWDFILE"
2428 HREF="#SOCKETADDRESS"
2440 HREF="#SOCKETOPTIONS"
2452 HREF="#SOURCEENVIRONMENT"
2456 >source environment</I
2476 HREF="#SSLCACERTDIR"
2488 HREF="#SSLCACERTFILE"
2512 HREF="#SSLCLIENTCERT"
2524 HREF="#SSLCLIENTKEY"
2536 HREF="#SSLCOMPATIBILITY"
2540 >ssl compatibility</I
2548 HREF="#SSLEGDSOCKET"
2560 HREF="#SSLENTROPYBYTES"
2564 >ssl entropy bytes</I
2572 HREF="#SSLENTROPYFILE"
2576 >ssl entropy file</I
2596 HREF="#SSLHOSTSRESIGN"
2600 >ssl hosts resign</I
2608 HREF="#SSLREQUIRECLIENTCERT"
2612 >ssl require clientcert</I
2620 HREF="#SSLREQUIRESERVERCERT"
2624 >ssl require servercert</I
2632 HREF="#SSLSERVERCERT"
2644 HREF="#SSLSERVERKEY"
2680 HREF="#STATCACHESIZE"
2728 HREF="#TEMPLATEHOMEDIR"
2732 >template homedir</I
2740 HREF="#TEMPLATESHELL"
2776 HREF="#TIMESTAMPLOGS"
2788 HREF="#TOTALPRINTJOBS"
2792 >total print jobs</I
2800 HREF="#UNIXEXTENSIONS"
2812 HREF="#UNIXPASSWORDSYNC"
2816 >unix password sync</I
2824 HREF="#UPDATEENCRYPTED"
2828 >update encrypted</I
2860 HREF="#USERNAMELEVEL"
2896 HREF="#UTMPDIRECTORY"
2908 HREF="#WINBINDCACHETIME"
2912 >winbind cache time</I
2920 HREF="#WINBINDENUMUSERS"
2924 >winbind enum users</I
2932 HREF="#WINBINDENUMGROUPS"
2936 >winbind enum groups</I
2956 HREF="#WINBINDSEPARATOR"
2960 >winbind separator</I
2980 HREF="#WINBINDUSEDEFAULTDOMAIN"
2984 >winbind use default domain</I
3069 >COMPLETE LIST OF SERVICE PARAMETERS</H2
3071 >Here is a list of all service parameters. See the section on
3072 each parameter for details. Note that some are synonyms.</P
3115 HREF="#BLOCKINGLOCKS"
3151 HREF="#CASESENSITIVE"
3163 HREF="#CASESIGNAMES"
3247 HREF="#DEFAULTDEVMODE"
3259 HREF="#DELETEREADONLY"
3271 HREF="#DELETEVETOFILES"
3275 >delete veto files</I
3307 HREF="#DIRECTORYMASK"
3319 HREF="#DIRECTORYMODE"
3331 HREF="#DIRECTORYSECURITYMASK"
3335 >directory security mask</I
3367 HREF="#DOSFILETIMERESOLUTION"
3371 >dos filetime resolution</I
3379 HREF="#DOSFILETIMES"
3403 HREF="#FAKEDIRECTORYCREATETIMES"
3407 >fake directory create times</I
3427 HREF="#FOLLOWSYMLINKS"
3439 HREF="#FORCECREATEMODE"
3443 >force create mode</I
3451 HREF="#FORCEDIRECTORYMODE"
3455 >force directory mode</I
3463 HREF="#FORCEDIRECTORYSECURITYMODE"
3467 >force directory security mode</I
3487 HREF="#FORCESECURITYMODE"
3491 >force security mode</I
3535 HREF="#GUESTACCOUNT"
3571 HREF="#HIDEDOTFILES"
3643 HREF="#INHERITPERMISSIONS"
3647 >inherit permissions</I
3655 HREF="#INVALIDUSERS"
3667 HREF="#LEVEL2OPLOCKS"
3691 HREF="#LPPAUSECOMMAND"
3715 HREF="#LPRESUMECOMMAND"
3719 >lpresume command</I
3787 HREF="#MANGLEDNAMES"
3799 HREF="#MANGLINGCHAR"
3847 HREF="#MAXCONNECTIONS"
3859 HREF="#MAXPRINTJOBS"
3871 HREF="#MINPRINTSPACE"
3895 HREF="#NTACLSUPPORT"
3931 HREF="#OPLOCKCONTENTIONLIMIT"
3935 >oplock contention limit</I
3967 HREF="#POSIXLOCKING"
4015 HREF="#PREEXECCLOSE"
4027 HREF="#PRESERVECASE"
4039 HREF="#PRINTCOMMAND"
4087 HREF="#PRINTERADMIN"
4099 HREF="#PRINTERDRIVER"
4111 HREF="#PRINTERDRIVERLOCATION"
4115 >printer driver location</I
4159 HREF="#QUEUEPAUSECOMMAND"
4163 >queuepause command</I
4171 HREF="#QUEUERESUMECOMMAND"
4175 >queueresume command</I
4207 HREF="#ROOTPOSTEXEC"
4231 HREF="#ROOTPREEXECCLOSE"
4235 >root preexec close</I
4243 HREF="#SECURITYMASK"
4255 HREF="#SETDIRECTORY"
4279 HREF="#SHORTPRESERVECASE"
4283 >short preserve case</I
4303 HREF="#STRICTALLOCATE"
4315 HREF="#STRICTLOCKING"
4351 HREF="#USECLIENTDRIVER"
4355 >use client driver</I
4423 HREF="#VETOOPLOCKFILES"
4427 >veto oplock files</I
4495 HREF="#WRITECACHESIZE"
4499 >write cache size</I
4548 >EXPLANATION OF EACH PARAMETER</H2
4552 CLASS="VARIABLELIST"
4556 NAME="ABORTSHUTDOWNSCRIPT"
4558 >abort shutdown script (G)</DT
4562 >This parameter only exists in the HEAD cvs branch</EM
4564 This a full path name to a script called by
4573 should stop a shutdown procedure issued by the <A
4574 HREF="#SHUTDOWNSCRIPT"
4583 >This command will be run as user.</P
4591 >abort shutdown script = /sbin/shutdown -c</B
4596 NAME="ADDPRINTERCOMMAND"
4598 >add printer command (G)</DT
4601 >With the introduction of MS-RPC based printing
4602 support for Windows NT/2000 clients in Samba 2.2, The MS Add
4603 Printer Wizard (APW) icon is now also available in the
4604 "Printers..." folder displayed a share listing. The APW
4605 allows for printers to be add remotely to a Samba or Windows
4606 NT/2000 print server.</P
4608 >For a Samba host this means that the printer must be
4609 physically added to the underlying printing system. The <TT
4615 > defines a script to be run which
4616 will perform the necessary operations for adding the printer
4617 to the print system and to add the appropriate service definition
4621 > file in order that it can be
4635 >add printer command</I
4638 automatically invoked with the following parameter (in
4693 >Windows 9x driver location</I
4700 >All parameters are filled in from the PRINTER_INFO_2 structure sent
4701 by the Windows NT/2000 client with one exception. The "Windows 9x
4702 driver location" parameter is included for backwards compatibility
4703 only. The remaining fields in the structure are generated from answers
4704 to the APW questions.</P
4709 >add printer command</I
4715 > will reparse the <TT
4718 > to determine if the share defined by the APW
4719 exists. If the sharename is still invalid, then <B
4723 > will return an ACCESS_DENIED error to the client.</P
4726 HREF="#DELETEPRINTERCOMMAND"
4730 > delete printer command</I
4743 HREF="#SHOWADDPRINTERWIZARD"
4759 >addprinter command = /usr/bin/addprinter
4765 NAME="ADDSHARECOMMAND"
4767 >add share command (G)</DT
4770 >Samba 2.2.0 introduced the ability to dynamically
4771 add and delete shares via the Windows NT 4.0 Server Manager. The
4775 >add share command</I
4777 > is used to define an
4778 external program or script which will add a new service definition
4782 >. In order to successfully
4786 >add share command</I
4792 requires that the administrator be connected using a root account (i.e.
4799 > will automatically invoke the
4803 >add share command</I
4805 > with four parameters.
4831 > - the name of the new
4842 > - path to an **existing**
4853 > - comment string to associate
4859 > This parameter is only used for add file shares. To add printer shares,
4861 HREF="#ADDPRINTERCOMMAND"
4873 HREF="#CHANGESHARECOMMAND"
4882 HREF="#DELETESHARECOMMAND"
4899 >add share command = /usr/local/bin/addshare</B
4904 NAME="ADDMACHINESCRIPT"
4906 >add machine script (G)</DT
4909 >This is the full pathname to a script that will
4914 > when a machine is added
4915 to it's domain using the administrator username and password method. </P
4917 >This option is only required when using sam back-ends tied to the
4918 Unix uid method of RID calculation such as smbpasswd. This option is only
4919 available in Samba 3.0.</P
4923 >add machine script = <empty string>
4929 >add machine script = /usr/sbin/adduser -n -g machines -c Machine -d /dev/null -s /bin/false %u
4935 NAME="ADDUSERSCRIPT"
4937 >add user script (G)</DT
4940 >This is the full pathname to a script that will
4948 > under special circumstances described below.</P
4950 >Normally, a Samba server requires that UNIX users are
4951 created for all users accessing files on this server. For sites
4952 that use Windows NT account databases as their primary user database
4953 creating these users and keeping the user list in sync with the
4954 Windows NT PDC is an onerous task. This option allows <A
4958 > to create the required UNIX users
4961 > when a user accesses the Samba server.</P
4963 >In order to use this option, <A
4973 >security = share</I
4982 must be set to a full pathname for a script that will create a UNIX
4983 user given one argument of <TT
4988 >, which expands into
4989 the UNIX user name to create.</P
4991 >When the Windows user attempts to access the Samba server,
4992 at login (session setup in the SMB protocol) time, <A
5002 attempts to authenticate the given user with the given password. If the
5003 authentication succeeds then <B
5007 attempts to find a UNIX user in the UNIX password database to map the
5008 Windows user into. If this lookup fails, and <TT
5018 call the specified script <EM
5026 > argument to be the user name to create.</P
5028 >If this script successfully creates the user then <B
5032 > will continue on as though the UNIX user
5033 already existed. In this way, UNIX users are dynamically created to
5034 match existing Windows NT accounts.</P
5045 HREF="#PASSWORDSERVER"
5054 HREF="#DELETEUSERSCRIPT"
5066 >add user script = <empty string>
5072 >add user script = /usr/local/samba/bin/add_user
5080 >admin users (S)</DT
5083 >This is a list of users who will be granted
5084 administrative privileges on the share. This means that they
5085 will do all file operations as the super-user (root).</P
5087 >You should use this option very carefully, as any user in
5088 this list will be able to do anything they like on the share,
5089 irrespective of file permissions.</P
5097 >admin users = jason</B
5104 >allow hosts (S)</DT
5119 NAME="ALGORITHMICRIDBASE"
5121 >algorithmic rid base (G)</DT
5124 >This determines how Samba will use its
5125 algorithmic mapping from uids/gid to the RIDs needed to construct
5126 NT Security Identifiers.</P
5128 >Setting this option to a larger value could be useful to sites
5129 transitioning from WinNT and Win2k, as existing user and
5130 group rids would otherwise clash with sytem users etc.
5133 >All UIDs and GIDs must be able to be resolved into SIDs for
5134 the correct operation of ACLs on the server. As such the algorithmic
5135 mapping can't be 'turned off', but pushing it 'out of the way' should
5136 resolve the issues. Users and groups can then be assigned 'low' RIDs
5137 in arbitary-rid supporting backends. </P
5141 >algorithmic rid base = 1000</B
5146 >algorithmic rid base = 100000</B
5151 NAME="ALLOWTRUSTEDDOMAINS"
5153 >allow trusted domains (G)</DT
5156 >This option only takes effect when the <A
5172 If it is set to no, then attempts to connect to a resource from
5173 a domain or workgroup other than the one which <A
5178 in will fail, even if that domain is trusted by the remote server
5179 doing the authentication.</P
5181 >This is useful if you only want your Samba server to
5182 serve resources to users in the domain it is a member of. As
5183 an example, suppose that there are two domains DOMA and DOMB. DOMB
5184 is trusted by DOMA, which contains the Samba server. Under normal
5185 circumstances, a user with an account in DOMB can then access the
5186 resources of a UNIX account with the same account name on the
5187 Samba server even if they do not have an account in DOMA. This
5188 can make implementing a security boundary difficult.</P
5192 >allow trusted domains = yes</B
5199 >announce as (G)</DT
5202 >This specifies what type of server
5211 will announce itself as, to a network neighborhood browse
5212 list. By default this is set to Windows NT. The valid options
5213 are : "NT Server" (which can also be written as "NT"),
5214 "NT Workstation", "Win95" or "WfW" meaning Windows NT Server,
5215 Windows NT Workstation, Windows 95 and Windows for Workgroups
5216 respectively. Do not change this parameter unless you have a
5217 specific need to stop Samba appearing as an NT server as this
5218 may prevent Samba servers from participating as browser servers
5223 >announce as = NT Server</B
5228 >announce as = Win95</B
5233 NAME="ANNOUNCEVERSION"
5235 >announce version (G)</DT
5238 >This specifies the major and minor version numbers
5239 that nmbd will use when announcing itself as a server. The default
5240 is 4.2. Do not change this parameter unless you have a specific
5241 need to set a Samba server to be a downlevel server.</P
5245 >announce version = 4.5</B
5250 >announce version = 2.0</B
5257 >auto services (G)</DT
5260 >This is a synonym for the <A
5274 >auth methods (G)</DT
5277 >This option allows the administrator to chose what
5278 authentication methods <B
5281 > will use when authenticating
5282 a user. This option defaults to sensible values based on <A
5292 Each entry in the list attempts to authenticate the user in turn, until
5293 the user authenticates. In practice only one method will ever actually
5294 be able to complete the authentication.
5299 >auth methods = <empty string></B
5304 >auth methods = guest sam ntdomain</B
5314 >This parameter lets you "turn off" a service. If
5323 attempts to connect to the service will fail. Such failures are
5333 NAME="BINDINTERFACESONLY"
5335 >bind interfaces only (G)</DT
5338 >This global parameter allows the Samba admin
5339 to limit what interfaces on a machine will serve SMB requests. If
5340 affects file service <A
5352 >For name service it causes <B
5356 to ports 137 and 138 on the interfaces listed in the <A
5363 > also binds to the "all addresses" interface (0.0.0.0)
5364 on ports 137 and 138 for the purposes of reading broadcast messages.
5365 If this option is not set then <B
5369 name requests on all of these sockets. If <TT
5379 source address of any packets coming in on the broadcast sockets
5380 and discard any that don't match the broadcast addresses of the
5381 interfaces in the <TT
5387 As unicast packets are received on the other sockets it allows
5391 > to refuse to serve names to machines that
5392 send packets that arrive through any interfaces not listed in the
5398 > list. IP Source address spoofing
5399 does defeat this simple check, however so it must not be used
5400 seriously as a security feature for <B
5405 >For file service it causes <A
5410 to bind only to the interface list given in the <A
5413 > parameter. This restricts the networks that
5417 > will serve to packets coming in those
5418 interfaces. Note that you should not use this parameter for machines
5419 that are serving PPP or other intermittent or non-broadcast network
5420 interfaces as it will not cope with non-permanent interfaces.</P
5425 >bind interfaces only</I
5428 unless the network address <EM
5437 HREF="smbpasswd.8.html"
5452 not work as expected due to the reasons covered below.</P
5454 >To change a users SMB password, the <B
5458 by default connects to the <EM
5459 >localhost - 127.0.0.1</EM
5461 address as an SMB client to issue the password change request. If
5465 >bind interfaces only</I
5467 > is set then unless the
5476 > parameter list then <B
5479 > will fail to connect in it's default mode.
5483 > can be forced to use the primary IP interface
5484 of the local host by using its <A
5485 HREF="smbpasswd.8.html#minusr"
5499 > parameter, with <TT
5505 to the IP name of the primary interface of the local host.</P
5510 > status page tries to connect with
5520 > to determine if they are running.
5530 "not running" even if they really are. This can prevent <B
5533 > from starting/stopping/restarting <B
5544 >bind interfaces only = no</B
5549 NAME="BLOCKINGLOCKS"
5551 >blocking locks (S)</DT
5554 >This parameter controls the behavior of <A
5558 > when given a request by a client
5559 to obtain a byte range lock on a region of an open file, and the
5560 request has a time limit associated with it.</P
5562 >If this parameter is set and the lock range requested
5563 cannot be immediately satisfied, Samba 2.2 will internally
5564 queue the lock request, and periodically attempt to obtain
5565 the lock until the timeout period expires.</P
5567 >If this parameter is set to <TT
5571 Samba 2.2 will behave as previous versions of Samba would and
5572 will fail the lock request immediately if the lock range
5573 cannot be obtained.</P
5577 >blocking locks = yes</B
5601 >browse list (G)</DT
5604 >This controls whether <A
5611 > will serve a browse list to
5619 >. You should never need to change
5624 >browse list = yes</B
5634 >This controls whether this share is seen in
5635 the list of available shares in a net view and in the browse list.</P
5639 >browseable = yes</B
5644 NAME="CASESENSITIVE"
5646 >case sensitive (S)</DT
5649 >See the discussion in the section <A
5656 >case sensitive = no</B
5663 >casesignames (S)</DT
5667 HREF="#CASESENSITIVE"
5674 NAME="CHANGENOTIFYTIMEOUT"
5676 >change notify timeout (G)</DT
5679 >This SMB allows a client to tell a server to
5680 "watch" a particular directory for any changes and only reply to
5681 the SMB request when a change has occurred. Such constant scanning of
5682 a directory is expensive under UNIX, hence an <A
5689 > daemon only performs such a scan
5690 on each requested directory once every <TT
5700 >change notify timeout = 60</B
5705 >change notify timeout = 300</B
5708 >Would change the scan time to every 5 minutes.</P
5712 NAME="CHANGESHARECOMMAND"
5714 >change share command (G)</DT
5717 >Samba 2.2.0 introduced the ability to dynamically
5718 add and delete shares via the Windows NT 4.0 Server Manager. The
5722 >change share command</I
5724 > is used to define an
5725 external program or script which will modify an existing service definition
5729 >. In order to successfully
5733 >change share command</I
5739 requires that the administrator be connected using a root account (i.e.
5746 > will automatically invoke the
5750 >change share command</I
5752 > with four parameters.
5778 > - the name of the new
5789 > - path to an **existing**
5800 > - comment string to associate
5806 > This parameter is only used modify existing file shares definitions. To modify
5807 printer shares, use the "Printers..." folder as seen when browsing the Samba host.
5811 HREF="#ADDSHARECOMMAND"
5820 HREF="#DELETESHARECOMMAND"
5837 >change share command = /usr/local/bin/addshare</B
5847 >This is a text field that is seen next to a share
5848 when a client does a queries the server, either via the network
5849 neighborhood or via <B
5852 > to list what shares
5855 >If you want to set the string that is displayed next to the
5856 machine name then see the <A
5857 HREF="#SERVERSTRING"
5867 >No comment string</EM
5872 >comment = Fred's Files</B
5879 >config file (G)</DT
5882 >This allows you to override the config file
5883 to use, instead of the default (usually <TT
5887 There is a chicken and egg problem here as this option is set
5888 in the config file!</P
5890 >For this reason, if the name of the config file has changed
5891 when the parameters are loaded then it will reload them from
5892 the new config file.</P
5894 >This option takes the usual substitutions, which can
5897 >If the config file doesn't exist then it won't be loaded
5898 (allowing you to special case the config files of just a few
5903 >config file = /usr/local/samba/lib/smb.conf.%m
5914 >This parameter allows you to "clone" service
5915 entries. The specified service is simply duplicated under the
5916 current service's name. Any parameters specified in the current
5917 section will override those in the section being copied.</P
5919 >This feature lets you set up a 'template' service and
5920 create similar services easily. Note that the service being
5921 copied must occur earlier in the configuration file than the
5922 service doing the copying.</P
5930 >copy = otherservice</B
5937 >create mask (S)</DT
5940 >A synonym for this parameter is
5952 >When a file is created, the necessary permissions are
5953 calculated according to the mapping from DOS modes to UNIX
5954 permissions, and the resulting UNIX mode is then bit-wise 'AND'ed
5955 with this parameter. This parameter may be thought of as a bit-wise
5956 MASK for the UNIX modes of a file. Any bit <EM
5959 set here will be removed from the modes set on a file when it is
5962 >The default value of this parameter removes the
5963 'group' and 'other' write and execute bits from the UNIX modes.</P
5965 >Following this Samba will bit-wise 'OR' the UNIX mode created
5966 from this parameter with the value of the <A
5967 HREF="#FORCECREATEMODE"
5971 >force create mode</I
5975 parameter which is set to 000 by default.</P
5977 >This parameter does not affect directory modes. See the
5979 HREF="#DIRECTORYMODE"
5990 HREF="#FORCECREATEMODE"
5998 > parameter for forcing particular mode
5999 bits to be set on created files. See also the <A
6000 HREF="#DIRECTORYMODE"
6007 > parameter for masking
6008 mode bits on created directories. See also the <A
6009 HREF="#INHERITPERMISSIONS"
6013 >inherit permissions</I
6018 >Note that this parameter does not apply to permissions
6019 set by Windows NT/2000 ACL editors. If the administrator wishes to enforce
6020 a mask on access control lists also, they need to set the <A
6021 HREF="#SECURITYMASK"
6032 >create mask = 0744</B
6037 >create mask = 0775</B
6044 >create mode (S)</DT
6047 >This is a synonym for <A
6064 >This stands for <EM
6065 >client-side caching
6067 >, and specifies how clients capable of offline
6068 caching will cache the files in the share. The valid values
6069 are: manual, documents, programs, disable.</P
6071 >These values correspond to those used on Windows
6074 >For example, shares containing roaming profiles can have
6075 offline caching disabled using <B
6077 >csc policy = disable
6083 >csc policy = manual</B
6088 >csc policy = programs</B
6098 >The value of the parameter (a decimal integer)
6099 represents the number of minutes of inactivity before a connection
6100 is considered dead, and it is disconnected. The deadtime only takes
6101 effect if the number of open files is zero.</P
6103 >This is useful to stop a server's resources being
6104 exhausted by a large number of inactive connections.</P
6106 >Most clients have an auto-reconnect feature when a
6107 connection is broken so in most cases this parameter should be
6108 transparent to users.</P
6110 >Using this parameter with a timeout of a few minutes
6111 is recommended for most systems.</P
6113 >A deadtime of zero indicates that no auto-disconnection
6114 should be performed.</P
6128 NAME="DEBUGHIRESTIMESTAMP"
6130 >debug hires timestamp (G)</DT
6133 >Sometimes the timestamps in the log messages
6134 are needed with a resolution of higher that seconds, this
6135 boolean parameter adds microsecond resolution to the timestamp
6136 message header when turned on.</P
6138 >Note that the parameter <A
6139 HREF="#DEBUGTIMESTAMP"
6143 > debug timestamp</I
6146 > must be on for this to have an
6151 >debug hires timestamp = no</B
6161 >When using only one log file for more then one
6166 >-process there may be hard to follow which process
6167 outputs which message. This boolean parameter is adds the process-id
6168 to the timestamp message headers in the logfile when turned on.</P
6170 >Note that the parameter <A
6171 HREF="#DEBUGTIMESTAMP"
6175 > debug timestamp</I
6178 > must be on for this to have an
6188 NAME="DEBUGTIMESTAMP"
6190 >debug timestamp (G)</DT
6193 >Samba 2.2 debug log messages are timestamped
6194 by default. If you are running at a high <A
6203 can be distracting. This boolean parameter allows timestamping
6204 to be turned off.</P
6208 >debug timestamp = yes</B
6218 >Samba is sometimes run as root and sometime
6219 run as the connected user, this boolean parameter inserts the
6220 current euid, egid, uid and gid to the timestamp message headers
6221 in the log file if turned on.</P
6223 >Note that the parameter <A
6224 HREF="#DEBUGTIMESTAMP"
6228 > debug timestamp</I
6231 > must be on for this to have an
6264 HREF="#DEFAULTSERVICE"
6268 > default service</I
6277 >default case (S)</DT
6280 >See the section on <A
6284 HREF="#SHORTPRESERVECASE"
6288 >short preserve case</I
6295 >default case = lower</B
6300 NAME="DEFAULTDEVMODE"
6302 >default devmode (S)</DT
6305 >This parameter is only applicable to <A
6308 > services. When smbd is serving
6309 Printer Drivers to Windows NT/2k/XP clients, each printer on the Samba
6310 server has a Device Mode which defines things such as paper size and
6311 orientation and duplex settings. The device mode can only correctly be
6312 generated by the printer driver itself (which can only be executed on a
6313 Win32 platform). Because smbd is unable to execute the driver code
6314 to generate the device mode, the default behavior is to set this field
6318 >Most problems with serving printer drivers to Windows NT/2k/XP clients
6319 can be traced to a problem with the generated device mode. Certain drivers
6320 will do things such as crashing the client's Explorer.exe with a NULL devmode.
6321 However, other printer drivers can cause the client's spooler service
6322 (spoolsv.exe) to die if the devmode was not created by the driver itself
6323 (i.e. smbd generates a default devmode).
6326 >This parameter should be used with care and tested with the printer
6327 driver in question. It is better to leave the device mode to NULL
6328 and let the Windows client set the correct values. Because drivers do not
6329 do this all the time, setting <B
6331 >default devmode = yes</B
6333 will instruct smbd to generate a default one.
6336 >For more information on Windows NT/2k printing and Device Modes,
6338 HREF="http://msdn.microsoft.com/"
6340 >MSDN documentation</A
6346 >default devmode = no</B
6351 NAME="DEFAULTSERVICE"
6353 >default service (G)</DT
6356 >This parameter specifies the name of a service
6357 which will be connected to if the service actually requested cannot
6358 be found. Note that the square brackets are <EM
6361 given in the parameter value (see example below).</P
6363 >There is no default value for this parameter. If this
6364 parameter is not given, attempting to connect to a nonexistent
6365 service results in an error.</P
6367 >Typically the default service would be a <A
6385 >Also note that the apparent service name will be changed
6386 to equal that of the requested service, this is very useful as it
6387 allows you to use macros like <TT
6393 a wildcard service.</P
6395 >Note also that any "_" characters in the name of the service
6396 used in the default service will get mapped to a "/". This allows for
6397 interesting things.</P
6408 CLASS="PROGRAMLISTING"
6410 default service = pub
6422 NAME="DELETEPRINTERCOMMAND"
6424 >delete printer command (G)</DT
6427 >With the introduction of MS-RPC based printer
6428 support for Windows NT/2000 clients in Samba 2.2, it is now
6429 possible to delete printer at run time by issuing the
6430 DeletePrinter() RPC call.</P
6432 >For a Samba host this means that the printer must be
6433 physically deleted from underlying printing system. The <TT
6436 > deleteprinter command</I
6438 > defines a script to be run which
6439 will perform the necessary operations for removing the printer
6440 from the print system and from <TT
6449 >delete printer command</I
6452 automatically called with only one parameter: <TT
6462 >delete printer command</I
6468 > will reparse the <TT
6471 > to associated printer no longer exists.
6472 If the sharename is still valid, then <B
6476 > will return an ACCESS_DENIED error to the client.</P
6479 HREF="#ADDPRINTERCOMMAND"
6483 > add printer command</I
6496 HREF="#SHOWADDPRINTERWIZARD"
6512 >deleteprinter command = /usr/bin/removeprinter
6518 NAME="DELETEREADONLY"
6520 >delete readonly (S)</DT
6523 >This parameter allows readonly files to be deleted.
6524 This is not normal DOS semantics, but is allowed by UNIX.</P
6526 >This option may be useful for running applications such
6527 as rcs, where UNIX file ownership prevents changing file
6528 permissions, and DOS semantics prevent deletion of a read only file.</P
6532 >delete readonly = no</B
6537 NAME="DELETESHARECOMMAND"
6539 >delete share command (G)</DT
6542 >Samba 2.2.0 introduced the ability to dynamically
6543 add and delete shares via the Windows NT 4.0 Server Manager. The
6547 >delete share command</I
6549 > is used to define an
6550 external program or script which will remove an existing service
6554 >. In order to successfully
6558 >delete share command</I
6564 requires that the administrator be connected using a root account (i.e.
6571 > will automatically invoke the
6575 >delete share command</I
6577 > with two parameters.
6604 the existing service.
6609 > This parameter is only used to remove file shares. To delete printer shares,
6611 HREF="#DELETEPRINTERCOMMAND"
6623 HREF="#ADDSHARECOMMAND"
6632 HREF="#CHANGESHARECOMMAND"
6649 >delete share command = /usr/local/bin/delshare</B
6654 NAME="DELETEUSERSCRIPT"
6656 >delete user script (G)</DT
6659 >This is the full pathname to a script that will
6669 > under special circumstances
6672 >Normally, a Samba server requires that UNIX users are
6673 created for all users accessing files on this server. For sites
6674 that use Windows NT account databases as their primary user database
6675 creating these users and keeping the user list in sync with the
6676 Windows NT PDC is an onerous task. This option allows <B
6679 > to delete the required UNIX users <EM
6682 > when a user accesses the Samba server and the
6683 Windows NT user no longer exists.</P
6685 >In order to use this option, <B
6692 >security = domain</I
6703 >delete user script</I
6706 must be set to a full pathname for a script
6707 that will delete a UNIX user given one argument of <TT
6713 which expands into the UNIX user name to delete.</P
6715 >When the Windows user attempts to access the Samba server,
6718 > (session setup in the SMB protocol)
6723 HREF="#PASSWORDSERVER"
6730 > and attempts to authenticate
6731 the given user with the given password. If the authentication fails
6732 with the specific Domain error code meaning that the user no longer
6736 > attempts to find a UNIX user in
6737 the UNIX password database that matches the Windows user account. If
6738 this lookup succeeds, and <TT
6741 >delete user script</I
6747 > will all the specified script
6750 >, expanding any <TT
6756 argument to be the user name to delete.</P
6758 >This script should delete the given UNIX username. In this way,
6759 UNIX users are dynamically deleted to match existing Windows NT
6763 HREF="#SECURITYEQUALSDOMAIN"
6764 >security = domain</A
6767 HREF="#PASSWORDSERVER"
6776 HREF="#ADDUSERSCRIPT"
6788 >delete user script = <empty string>
6794 >delete user script = /usr/local/samba/bin/del_user
6800 NAME="DELETEVETOFILES"
6802 >delete veto files (S)</DT
6805 >This option is used when Samba is attempting to
6806 delete a directory that contains one or more vetoed directories
6816 option). If this option is set to <TT
6819 > (the default) then if a vetoed
6820 directory contains any non-vetoed files or directories then the
6821 directory delete will fail. This is usually what you want.</P
6823 >If this option is set to <TT
6827 will attempt to recursively delete any files and directories within
6828 the vetoed directory. This can be useful for integration with file
6829 serving systems such as NetAtalk which create meta-files within
6830 directories you might normally veto DOS/Windows users from seeing
6838 >delete veto files = yes</B
6840 directories to be transparently deleted when the parent directory
6841 is deleted (so long as the user has permissions to do so).</P
6856 >delete veto files = no</B
6881 >dfree command (G)</DT
6890 only be used on systems where a problem occurs with the internal
6891 disk space calculations. This has been known to happen with Ultrix,
6892 but may occur with other operating systems. The symptom that was
6893 seen was an error of "Abort Retry Ignore" at the end of each
6894 directory listing.</P
6896 >This setting allows the replacement of the internal routines to
6897 calculate the total disk space and amount available with an external
6898 routine. The example below gives a possible script that might fulfill
6901 >The external program will be passed a single parameter indicating
6902 a directory in the filesystem being queried. This will typically consist
6906 >. The script should return two
6907 integers in ASCII. The first should be the total disk space in blocks,
6908 and the second should be the number of available blocks. An optional
6909 third return value can give the block size in bytes. The default
6910 blocksize is 1024 bytes.</P
6912 >Note: Your script should <EM
6915 setgid and should be owned by (and writeable only by) root!</P
6918 >By default internal routines for
6919 determining the disk capacity and remaining space will be used.
6925 >dfree command = /usr/local/samba/bin/dfree
6929 >Where the script dfree (which must be made executable) could be:</P
6938 CLASS="PROGRAMLISTING"
6941 df $1 | tail -1 | awk '{print $2" "$4}'
6948 >or perhaps (on Sys V based systems):</P
6957 CLASS="PROGRAMLISTING"
6960 /usr/bin/df -k $1 | tail -1 | awk '{print $3" "$5}'
6967 >Note that you may have to replace the command names
6968 with full path names on some systems.</P
6990 NAME="DIRECTORYMASK"
6992 >directory mask (S)</DT
6995 >This parameter is the octal modes which are
6996 used when converting DOS modes to UNIX modes when creating UNIX
6999 >When a directory is created, the necessary permissions are
7000 calculated according to the mapping from DOS modes to UNIX permissions,
7001 and the resulting UNIX mode is then bit-wise 'AND'ed with this
7002 parameter. This parameter may be thought of as a bit-wise MASK for
7003 the UNIX modes of a directory. Any bit <EM
7006 here will be removed from the modes set on a directory when it is
7009 >The default value of this parameter removes the 'group'
7010 and 'other' write bits from the UNIX mode, allowing only the
7011 user who owns the directory to modify it.</P
7013 >Following this Samba will bit-wise 'OR' the UNIX mode
7014 created from this parameter with the value of the <A
7015 HREF="#FORCEDIRECTORYMODE"
7019 >force directory mode
7023 > parameter. This parameter is set to 000 by
7024 default (i.e. no extra mode bits are added).</P
7026 >Note that this parameter does not apply to permissions
7027 set by Windows NT/2000 ACL editors. If the administrator wishes to enforce
7028 a mask on access control lists also, they need to set the <A
7029 HREF="#DIRECTORYSECURITYMASK"
7033 >directory security mask</I
7039 HREF="#FORCEDIRECTORYMODE"
7047 > parameter to cause particular mode
7048 bits to always be set on created directories.</P
7059 > parameter for masking mode bits on created files,
7061 HREF="#DIRECTORYSECURITYMASK"
7071 >Also refer to the <A
7072 HREF="#INHERITPERMISSIONS"
7076 > inherit permissions</I
7083 >directory mask = 0755</B
7088 >directory mask = 0775</B
7093 NAME="DIRECTORYMODE"
7095 >directory mode (S)</DT
7099 HREF="#DIRECTORYMASK"
7110 NAME="DIRECTORYSECURITYMASK"
7112 >directory security mask (S)</DT
7115 >This parameter controls what UNIX permission bits
7116 can be modified when a Windows NT client is manipulating the UNIX
7117 permission on a directory using the native NT security dialog
7120 >This parameter is applied as a mask (AND'ed with) to
7121 the changed permission bits, thus preventing any bits not in
7122 this mask from being modified. Essentially, zero bits in this
7123 mask may be treated as a set of bits the user is not allowed
7126 >If not set explicitly this parameter is set to 0777
7127 meaning a user is allowed to modify all the user/group/world
7128 permissions on a directory.</P
7132 > that users who can access the
7133 Samba server through other means can easily bypass this restriction,
7134 so it is primarily useful for standalone "appliance" systems.
7135 Administrators of most normal systems will probably want to leave
7136 it as the default of <TT
7142 HREF="#FORCEDIRECTORYSECURITYMODE"
7146 > force directory security mode</I
7150 HREF="#SECURITYMASK"
7159 HREF="#FORCESECURITYMODE"
7163 >force security mode
7171 >directory security mask = 0777</B
7176 >directory security mask = 0700</B
7181 NAME="DISABLESPOOLSS"
7183 >disable spoolss (G)</DT
7186 >Enabling this parameter will disables Samba's support
7187 for the SPOOLSS set of MS-RPC's and will yield identical behavior
7188 as Samba 2.0.x. Windows NT/2000 clients will downgrade to using
7189 Lanman style printing commands. Windows 9x/ME will be uneffected by
7190 the parameter. However, this will also disable the ability to upload
7191 printer drivers to a Samba server via the Windows NT Add Printer
7192 Wizard or by using the NT printer properties dialog window. It will
7193 also disable the capability of Windows NT/2000 clients to download
7194 print drivers from the Samba host upon demand.
7196 >Be very careful about enabling this parameter.</EM
7201 HREF="#USECLIENTDRIVER"
7202 >use client driver</A
7208 >disable spoolss = no</B
7223 when acting as a WINS server and finding that a NetBIOS name has not
7224 been registered, should treat the NetBIOS name word-for-word as a DNS
7225 name and do a lookup with the DNS server for that name on behalf of
7226 the name-querying client.</P
7228 >Note that the maximum length for a NetBIOS name is 15
7229 characters, so the DNS name (or DNS alias) can likewise only be
7230 15 characters, maximum.</P
7235 > spawns a second copy of itself to do the
7236 DNS name lookup requests, as doing a name lookup is a blocking
7239 >See also the parameter <A
7256 NAME="DOMAINADMINGROUP"
7258 >domain admin group (G)</DT
7261 >This parameter is intended as a temporary solution
7262 to enable users to be a member of the "Domain Admins" group when
7263 a Samba host is acting as a PDC. A complete solution will be provided
7264 by a system for mapping Windows NT/2000 groups onto UNIX groups.
7265 Please note that this parameter has a somewhat confusing name. It
7266 accepts a list of usernames and of group names in standard
7274 HREF="#DOMAINGUESTGROUP"
7283 HREF="#DOMAINLOGONS"
7295 >no domain administrators</EM
7300 >domain admin group = root @wheel</B
7305 NAME="DOMAINGUESTGROUP"
7307 >domain guest group (G)</DT
7310 >This parameter is intended as a temporary solution
7311 to enable users to be a member of the "Domain Guests" group when
7312 a Samba host is acting as a PDC. A complete solution will be provided
7313 by a system for mapping Windows NT/2000 groups onto UNIX groups.
7314 Please note that this parameter has a somewhat confusing name. It
7315 accepts a list of usernames and of group names in standard
7323 HREF="#DOMAINADMINGROUP"
7332 HREF="#DOMAINLOGONS"
7344 >no domain guests</EM
7349 >domain guest group = nobody @guest</B
7356 >domain logons (G)</DT
7362 >, the Samba server will serve
7363 Windows 95/98 Domain logons for the <A
7371 > it is in. Samba 2.2 also
7372 has limited capability to act as a domain controller for Windows
7373 NT 4 Domains. For more details on setting up this feature see
7374 the Samba-PDC-HOWTO included in the <TT
7378 directory shipped with the source code.</P
7382 >domain logons = no</B
7389 >domain master (G)</DT
7399 > to enable WAN-wide browse list
7400 collation. Setting this option causes <B
7404 claim a special domain specific NetBIOS name that identifies
7405 it as a domain master browser for its given <A
7413 >. Local master browsers
7419 > on broadcast-isolated
7420 subnets will give this <B
7423 > their local browse lists,
7432 for a complete copy of the browse list for the whole wide area
7433 network. Browser clients will then contact their local master browser,
7434 and will receive the domain-wide browse list, instead of just the list
7435 for their broadcast-isolated subnet.</P
7437 >Note that Windows NT Primary Domain Controllers expect to be
7438 able to claim this <TT
7444 NetBIOS name that identifies them as domain master browsers for
7450 > by default (i.e. there is no
7451 way to prevent a Windows NT PDC from attempting to do this). This
7452 means that if this parameter is set and <B
7456 the special name for a <TT
7462 NT PDC is able to do so then cross subnet browsing will behave
7463 strangely and may fail.</P
7466 HREF="#DOMAINLOGONS"
7469 >domain logons = yes</B
7472 >, then the default behavior is to enable the <TT
7484 not enabled (the default setting), then neither will <TT
7490 > be enabled by default.</P
7494 >domain master = auto</B
7501 >dont descend (S)</DT
7504 >There are certain directories on some systems
7508 > tree under Linux) that are either not
7509 of interest to clients or are infinitely deep (recursive). This
7510 parameter allows you to specify a comma-delimited list of directories
7511 that the server should always show as empty.</P
7513 >Note that Samba can be very fussy about the exact format
7514 of the "dont descend" entries. For example you may need <TT
7517 > instead of just <TT
7521 Experimentation is the best policy :-) </P
7524 >none (i.e., all directories are OK
7530 >dont descend = /proc,/dev</B
7537 >dos filemode (S)</DT
7540 > The default behavior in Samba is to provide
7541 UNIX-like behavior where only the owner of a file/directory is
7542 able to change the permissions on it. However, this behavior
7543 is often confusing to DOS/Windows users. Enabling this parameter
7544 allows a user who has write access to the file (by whatever
7545 means) to modify the permissions on it. Note that a user
7546 belonging to the group owning the file will not be allowed to
7547 change permissions if the group is only granted read access.
7548 Ownership of the file/directory is not changed, only the permissions
7553 >dos filemode = no</B
7558 NAME="DOSFILETIMERESOLUTION"
7560 >dos filetime resolution (S)</DT
7563 >Under the DOS and Windows FAT filesystem, the finest
7564 granularity on time resolution is two seconds. Setting this parameter
7565 for a share causes Samba to round the reported time down to the
7566 nearest two second boundary when a query call that requires one second
7567 resolution is made to <A
7577 >This option is mainly used as a compatibility option for Visual
7578 C++ when used against Samba shares. If oplocks are enabled on a
7579 share, Visual C++ uses two different time reading calls to check if a
7580 file has changed since it was last read. One of these calls uses a
7581 one-second granularity, the other uses a two second granularity. As
7582 the two second call rounds any odd second down, then if the file has a
7583 timestamp of an odd number of seconds then the two timestamps will not
7584 match and Visual C++ will keep reporting the file has changed. Setting
7585 this option causes the two timestamps to match, and Visual C++ is
7590 >dos filetime resolution = no</B
7597 >dos filetimes (S)</DT
7600 >Under DOS and Windows, if a user can write to a
7601 file they can change the timestamp on it. Under POSIX semantics,
7602 only the owner of the file or root may change the timestamp. By
7603 default, Samba runs with POSIX semantics and refuses to change the
7604 timestamp on a file if the user <B
7608 on behalf of is not the file owner. Setting this option to <TT
7611 > allows DOS semantics and <A
7615 > will change the file
7616 timestamp as DOS requires.</P
7620 >dos filetimes = no</B
7625 NAME="ENCRYPTPASSWORDS"
7627 >encrypt passwords (G)</DT
7630 >This boolean controls whether encrypted passwords
7631 will be negotiated with the client. Note that Windows NT 4.0 SP3 and
7632 above and also Windows 98 will by default expect encrypted passwords
7633 unless a registry entry is changed. To use encrypted passwords in
7634 Samba see the file ENCRYPTION.txt in the Samba documentation
7638 > shipped with the source code.</P
7640 >In order for encrypted passwords to work correctly
7649 have access to a local <A
7650 HREF="smbpasswd.5.html"
7658 HREF="smbpasswd.8.html"
7664 > program for information on how to set up
7665 and maintain this file), or set the <A
7667 >security = [server|domain|ads]</A
7672 > to authenticate against another
7677 >encrypt passwords = yes</B
7682 NAME="ENHANCEDBROWSING"
7684 >enhanced browsing (G)</DT
7687 >This option enables a couple of enhancements to
7688 cross-subnet browse propagation that have been added in Samba
7689 but which are not standard in Microsoft implementations.
7692 >The first enhancement to browse propagation consists of a regular
7693 wildcard query to a Samba WINS server for all Domain Master Browsers,
7694 followed by a browse synchronization with each of the returned
7695 DMBs. The second enhancement consists of a regular randomised browse
7696 synchronization with all currently known DMBs.</P
7698 >You may wish to disable this option if you have a problem with empty
7699 workgroups not disappearing from browse lists. Due to the restrictions
7700 of the browse protocols these enhancements can cause a empty workgroup
7701 to stay around forever which can be annoying.</P
7703 >In general you should leave this option enabled as it makes
7704 cross-subnet browse propagation much more reliable.</P
7708 >enhanced browsing = yes</B
7713 NAME="ENUMPORTSCOMMAND"
7715 >enumports command (G)</DT
7718 >The concept of a "port" is fairly foreign
7719 to UNIX hosts. Under Windows NT/2000 print servers, a port
7720 is associated with a port monitor and generally takes the form of
7721 a local port (i.e. LPT1:, COM1:, FILE:) or a remote port
7722 (i.e. LPD Port Monitor, etc...). By default, Samba has only one
7725 >"Samba Printer Port"</TT
7727 Windows NT/2000, all printers must have a valid port name.
7728 If you wish to have a list of ports displayed (<B
7732 > does not use a port name for anything) other than
7735 >"Samba Printer Port"</TT
7740 >enumports command</I
7743 a program which should generate a list of ports, one per line,
7744 to standard output. This listing will then be used in response
7745 to the level 1 and 2 EnumPorts() RPC.</P
7748 >no enumports command</EM
7753 >enumports command = /usr/bin/listports
7764 >This is a synonym for <A
7776 NAME="FAKEDIRECTORYCREATETIMES"
7778 >fake directory create times (S)</DT
7781 >NTFS and Windows VFAT file systems keep a create
7782 time for all files and directories. This is not the same as the
7783 ctime - status change time - that Unix keeps, so Samba by default
7784 reports the earliest of the various times Unix does keep. Setting
7785 this parameter for a share causes Samba to always report midnight
7786 1-1-1980 as the create time for directories.</P
7788 >This option is mainly used as a compatibility option for
7789 Visual C++ when used against Samba shares. Visual C++ generated
7790 makefiles have the object directory as a dependency for each object
7791 file, and a make rule to create the directory. Also, when NMAKE
7792 compares timestamps it uses the creation time when examining a
7793 directory. Thus the object directory will be created if it does not
7794 exist, but once it does exist it will always have an earlier
7795 timestamp than the object files it contains.</P
7797 >However, Unix time semantics mean that the create time
7798 reported by Samba will be updated whenever a file is created or
7799 or deleted in the directory. NMAKE finds all object files in
7800 the object directory. The timestamp of the last one built is then
7801 compared to the timestamp of the object directory. If the
7802 directory's timestamp if newer, then all object files
7803 will be rebuilt. Enabling this option
7804 ensures directories always predate their contents and an NMAKE build
7805 will proceed as expected.</P
7809 >fake directory create times = no</B
7816 >fake oplocks (S)</DT
7819 >Oplocks are the way that SMB clients get permission
7820 from a server to locally cache file operations. If a server grants
7821 an oplock (opportunistic lock) then the client is free to assume
7822 that it is the only one accessing the file and it will aggressively
7823 cache file data. With some oplock types the client may even cache
7824 file open/close operations. This can give enormous performance benefits.
7829 >fake oplocks = yes</B
7838 always grant oplock requests no matter how many clients are using
7841 >It is generally much better to use the real <A
7850 than this parameter.</P
7852 >If you enable this option on all read-only shares or
7853 shares that you know will only be accessed from one client at a
7854 time such as physically read-only media like CDROMs, you will see
7855 a big performance improvement on many operations. If you enable
7856 this option on shares where multiple clients may be accessing the
7857 files read-write at the same time you can get data corruption. Use
7858 this option carefully!</P
7862 >fake oplocks = no</B
7867 NAME="FOLLOWSYMLINKS"
7869 >follow symlinks (S)</DT
7872 >This parameter allows the Samba administrator
7881 from following symbolic links in a particular share. Setting this
7885 > prevents any file or directory
7886 that is a symbolic link from being followed (the user will get an
7887 error). This option is very useful to stop users from adding a
7888 symbolic link to <TT
7892 directory for instance. However it will slow filename lookups
7895 >This option is enabled (i.e. <B
7899 follow symbolic links) by default.</P
7903 >follow symlinks = yes</B
7908 NAME="FORCECREATEMODE"
7910 >force create mode (S)</DT
7913 >This parameter specifies a set of UNIX mode bit
7914 permissions that will <EM
7917 file created by Samba. This is done by bitwise 'OR'ing these bits onto
7918 the mode bits of a file that is being created or having its
7919 permissions changed. The default for this parameter is (in octal)
7920 000. The modes in this parameter are bitwise 'OR'ed onto the file
7921 mode after the mask set in the <TT
7927 parameter is applied.</P
7929 >See also the parameter <A
7938 > for details on masking mode bits on files.</P
7941 HREF="#INHERITPERMISSIONS"
7953 >force create mode = 000</B
7958 >force create mode = 0755</B
7961 >would force all created files to have read and execute
7962 permissions set for 'group' and 'other' as well as the
7963 read/write/execute bits set for the 'user'.</P
7967 NAME="FORCEDIRECTORYMODE"
7969 >force directory mode (S)</DT
7972 >This parameter specifies a set of UNIX mode bit
7973 permissions that will <EM
7975 > be set on a directory
7976 created by Samba. This is done by bitwise 'OR'ing these bits onto the
7977 mode bits of a directory that is being created. The default for this
7978 parameter is (in octal) 0000 which will not add any extra permission
7979 bits to a created directory. This operation is done after the mode
7980 mask in the parameter <TT
7988 >See also the parameter <A
7989 HREF="#DIRECTORYMASK"
7996 > for details on masking mode bits
7997 on created directories.</P
8000 HREF="#INHERITPERMISSIONS"
8004 > inherit permissions</I
8011 >force directory mode = 000</B
8016 >force directory mode = 0755</B
8019 >would force all created directories to have read and execute
8020 permissions set for 'group' and 'other' as well as the
8021 read/write/execute bits set for the 'user'.</P
8025 NAME="FORCEDIRECTORYSECURITYMODE"
8028 security mode (S)</DT
8031 >This parameter controls what UNIX permission bits
8032 can be modified when a Windows NT client is manipulating the UNIX
8033 permission on a directory using the native NT security dialog box.</P
8035 >This parameter is applied as a mask (OR'ed with) to the
8036 changed permission bits, thus forcing any bits in this mask that
8037 the user may have modified to be on. Essentially, one bits in this
8038 mask may be treated as a set of bits that, when modifying security
8039 on a directory, the user has always set to be 'on'.</P
8041 >If not set explicitly this parameter is 000, which
8042 allows a user to modify all the user/group/world permissions on a
8043 directory without restrictions.</P
8047 > that users who can access the
8048 Samba server through other means can easily bypass this restriction,
8049 so it is primarily useful for standalone "appliance" systems.
8050 Administrators of most normal systems will probably want to leave
8054 HREF="#DIRECTORYSECURITYMASK"
8058 > directory security mask</I
8062 HREF="#SECURITYMASK"
8071 HREF="#FORCESECURITYMODE"
8075 >force security mode
8083 >force directory security mode = 0</B
8088 >force directory security mode = 700</B
8095 >force group (S)</DT
8098 >This specifies a UNIX group name that will be
8099 assigned as the default primary group for all users connecting
8100 to this service. This is useful for sharing files by ensuring
8101 that all access to files on service will use the named group for
8102 their permissions checking. Thus, by assigning permissions for this
8103 group to the files and directories within this service the Samba
8104 administrator can restrict or allow sharing of these files.</P
8106 >In Samba 2.0.5 and above this parameter has extended
8107 functionality in the following way. If the group name listed here
8108 has a '+' character prepended to it then the current user accessing
8109 the share only has the primary group default assigned to this group
8110 if they are already assigned as a member of that group. This allows
8111 an administrator to decide that only users who are already in a
8112 particular group will create files with group ownership set to that
8113 group. This gives a finer granularity of ownership assignment. For
8114 example, the setting <TT
8116 >force group = +sys</TT
8118 that only users who are already in group sys will have their default
8119 primary group assigned to sys when accessing this Samba share. All
8120 other users will retain their ordinary primary group.</P
8131 > parameter is also set the group specified in
8137 > will override the primary group
8157 >no forced group</EM
8162 >force group = agroup</B
8167 NAME="FORCESECURITYMODE"
8169 >force security mode (S)</DT
8172 >This parameter controls what UNIX permission
8173 bits can be modified when a Windows NT client is manipulating
8174 the UNIX permission on a file using the native NT security dialog
8177 >This parameter is applied as a mask (OR'ed with) to the
8178 changed permission bits, thus forcing any bits in this mask that
8179 the user may have modified to be on. Essentially, one bits in this
8180 mask may be treated as a set of bits that, when modifying security
8181 on a file, the user has always set to be 'on'.</P
8183 >If not set explicitly this parameter is set to 0,
8184 and allows a user to modify all the user/group/world permissions on a file,
8185 with no restrictions.</P
8189 > that users who can access
8190 the Samba server through other means can easily bypass this restriction,
8191 so it is primarily useful for standalone "appliance" systems.
8192 Administrators of most normal systems will probably want to leave
8193 this set to 0000.</P
8196 HREF="#FORCEDIRECTORYSECURITYMODE"
8200 > force directory security mode</I
8205 HREF="#DIRECTORYSECURITYMASK"
8214 HREF="#SECURITYMASK"
8225 >force security mode = 0</B
8230 >force security mode = 700</B
8240 >This specifies a UNIX user name that will be
8241 assigned as the default user for all users connecting to this service.
8242 This is useful for sharing files. You should also use it carefully
8243 as using it incorrectly can cause security problems.</P
8245 >This user name only gets used once a connection is established.
8246 Thus clients still need to connect as a valid user and supply a
8247 valid password. Once connected, all file operations will be performed
8248 as the "forced user", no matter what username the client connected
8249 as. This can be very useful.</P
8251 >In Samba 2.0.5 and above this parameter also causes the
8252 primary group of the forced user to be used as the primary group
8253 for all file activity. Prior to 2.0.5 the primary group was left
8254 as the primary group of the connecting user (this was a bug).</P
8273 >force user = auser</B
8283 >This parameter allows the administrator to
8284 configure the string that specifies the type of filesystem a share
8285 is using that is reported by <A
8293 > when a client queries the filesystem type
8294 for a share. The default type is <TT
8298 compatibility with Windows NT but this can be changed to other
8322 >getwd cache (G)</DT
8325 >This is a tuning option. When this is enabled a
8326 caching algorithm will be used to reduce the time taken for getwd()
8327 calls. This can have a significant impact on performance, especially
8337 >parameter is set to <TT
8344 >getwd cache = yes</B
8369 >guest account (S)</DT
8372 >This is a username which will be used for access
8373 to services which are specified as <A
8381 > (see below). Whatever privileges this
8382 user has will be available to any client connecting to the guest service.
8383 Typically this user will exist in the password file, but will not
8384 have a valid login. The user account "ftp" is often a good choice
8385 for this parameter. If a username is specified in a given service,
8386 the specified username overrides this one.</P
8388 >One some systems the default guest account "nobody" may not
8389 be able to print. Use another account in this case. You should test
8390 this by trying to log in as your guest user (perhaps by using the
8394 > command) and trying to print using the
8395 system print command such as <B
8404 >specified at compile time, usually
8410 >guest account = ftp</B
8420 >If this parameter is <TT
8424 a service, then no password is required to connect to the service.
8425 Privileges will be those of the <A
8426 HREF="#GUESTACCOUNT"
8435 >See the section below on <A
8443 > for more information about this option.
8458 >If this parameter is <TT
8462 a service, then only guest connections to the service are permitted.
8463 This parameter will have no effect if <A
8471 > is not set for the service.</P
8473 >See the section below on <A
8481 > for more information about this option.
8493 >hide dot files (S)</DT
8496 >This is a boolean parameter that controls whether
8497 files starting with a dot appear as hidden files.</P
8501 >hide dot files = yes</B
8511 >This is a list of files or directories that are not
8512 visible but are accessible. The DOS 'hidden' attribute is applied
8513 to any files or directories that match.</P
8515 >Each entry in the list must be separated by a '/',
8516 which allows spaces to be included in the entry. '*'
8517 and '?' can be used to specify multiple files or directories
8518 as in DOS wildcards.</P
8520 >Each entry must be a Unix path, not a DOS path and must
8521 not include the Unix directory separator '/'.</P
8523 >Note that the case sensitivity option is applicable
8526 >Setting this parameter will affect the performance of Samba,
8527 as it will be forced to check all files and directories for a match
8528 as they are scanned.</P
8531 HREF="#HIDEDOTFILES"
8548 HREF="#CASESENSITIVE"
8558 >no file are hidden</EM
8564 /.*/DesktopFolderDB/TrashFor%m/resource.frk/</B
8567 >The above example is based on files that the Macintosh
8568 SMB client (DAVE) available from <A
8569 HREF="http://www.thursby.com"
8573 > creates for internal use, and also still hides
8574 all files beginning with a dot.</P
8578 NAME="HIDELOCALUSERS"
8580 >hide local users(G)</DT
8583 >This parameter toggles the hiding of local UNIX
8584 users (root, wheel, floppy, etc) from remote clients.</P
8588 >hide local users = no</B
8593 NAME="HIDEUNREADABLE"
8595 >hide unreadable (S)</DT
8598 >This parameter prevents clients from seeing the
8599 existance of files that cannot be read. Defaults to off.</P
8603 >hide unreadable = no</B
8610 >homedir map (G)</DT
8638 > then this parameter
8639 specifies the NIS (or YP) map from which the server for the user's
8640 home directory should be extracted. At present, only the Sun
8641 auto.home map format is understood. The form of the map is:</P
8645 >username server:/some/file/system</B
8648 >and the program will extract the servername from before
8649 the first ':'. There should probably be a better parsing system
8650 that copes with different map formats and also Amd (another
8651 automounter) maps.</P
8655 >A working NIS client is required on
8656 the system for this option to work.</P
8668 HREF="#DOMAINLOGONS"
8680 >homedir map = <empty string></B
8685 >homedir map = amd.homedir</B
8695 >This boolean parameter is only available
8696 if Samba has been configured and compiled with the <B
8699 > option. If set to <TT
8703 Samba will act as a Dfs server, and allow Dfs-aware clients
8704 to browse Dfs trees hosted on the server.</P
8714 > share level parameter. For
8715 more information on setting up a Dfs tree on Samba,
8717 HREF="msdfs_setup.html"
8719 >msdfs_setup.html</A
8732 >hosts allow (S)</DT
8735 >A synonym for this parameter is <TT
8743 >This parameter is a comma, space, or tab delimited
8744 set of hosts which are permitted to access a service.</P
8746 >If specified in the [global] section then it will
8747 apply to all services, regardless of whether the individual
8748 service has a different setting.</P
8750 >You can specify the hosts by name or IP number. For
8751 example, you could restrict access to only the hosts on a
8752 Class C subnet with something like <B
8754 >allow hosts = 150.203.5.
8756 >. The full syntax of the list is described in the man
8759 >hosts_access(5)</TT
8760 >. Note that this man
8761 page may not be present on your system, so a brief description will
8762 be given here also.</P
8764 >Note that the localhost address 127.0.0.1 will always
8765 be allowed access unless specifically denied by a <A
8775 >You can also specify hosts by network/netmask pairs and
8776 by netgroup names if your system supports netgroups. The
8779 > keyword can also be used to limit a
8780 wildcard list. The following examples may provide some help:</P
8782 >Example 1: allow all IPs in 150.203.*.*; except one</P
8786 >hosts allow = 150.203. EXCEPT 150.203.6.66</B
8789 >Example 2: allow hosts that match the given network/netmask</P
8793 >hosts allow = 150.203.15.0/255.255.255.0</B
8796 >Example 3: allow a couple of hosts</P
8800 >hosts allow = lapland, arvidsjaur</B
8803 >Example 4: allow only hosts in NIS netgroup "foonet", but
8804 deny access from one particular host</P
8808 >hosts allow = @foonet</B
8813 >hosts deny = pirate</B
8816 >Note that access still requires suitable user-level passwords.</P
8819 HREF="testparm.1.html"
8826 > for a way of testing your host access to see if it does
8830 >none (i.e., all hosts permitted access)
8836 >allow hosts = 150.203.5. myhost.mynet.edu.au
8847 >The opposite of <TT
8853 - hosts listed here are <EM
8855 > permitted access to
8856 services unless the specific services have their own lists to override
8857 this one. Where the lists conflict, the <TT
8863 list takes precedence.</P
8866 >none (i.e., no hosts specifically excluded)
8872 >hosts deny = 150.203.4. badhost.mynet.edu.au
8880 >hosts equiv (G)</DT
8883 >If this global parameter is a non-null string,
8884 it specifies the name of a file to read for the names of hosts
8885 and users who will be allowed access without specifying a password.
8888 >This is not be confused with <A
8896 > which is about hosts
8897 access to services and is more useful for guest services. <TT
8902 > may be useful for NT clients which will
8903 not supply passwords to Samba.</P
8913 > can be a major security hole. This is because you are
8914 trusting the PC to supply the correct username. It is very easy to
8915 get a PC to supply a false username. I recommend that the
8921 > option be only used if you really
8922 know what you are doing, or perhaps on a home network where you trust
8923 your spouse and kids. And only if you <EM
8929 >no host equivalences</EM
8934 >hosts equiv = /etc/hosts.equiv</B
8944 >This allows you to include one config file
8945 inside another. The file is included literally, as though typed
8948 >It takes the standard substitutions, except <TT
8968 >no file included</EM
8973 >include = /usr/local/samba/lib/admin_smb.conf
8981 >inherit acls (S)</DT
8984 >This parameter can be used to ensure
8985 that if default acls exist on parent directories,
8986 they are always honored when creating a subdirectory.
8987 The default behavior is to use the mode specified
8988 when creating the directory. Enabling this option
8989 sets the mode to 0777, thus guaranteeing that
8990 default directory acls are propagated.
8995 >inherit acls = no</B
9001 NAME="INHERITPERMISSIONS"
9003 >inherit permissions (S)</DT
9006 >The permissions on new files and directories
9007 are normally governed by <A
9016 HREF="#DIRECTORYMASK"
9024 HREF="#FORCECREATEMODE"
9028 >force create mode</I
9033 HREF="#FORCEDIRECTORYMODE"
9041 > but the boolean inherit
9042 permissions parameter overrides this.</P
9044 >New directories inherit the mode of the parent directory,
9045 including bits such as setgid.</P
9047 >New files inherit their read/write bits from the parent
9048 directory. Their execute bits continue to be determined by
9078 >Note that the setuid bit is <EM
9081 inheritance (the code explicitly prohibits this).</P
9083 >This can be particularly useful on large systems with
9084 many users, perhaps several thousand, to allow a single [homes]
9085 share to be used flexibly by each user.</P
9097 HREF="#DIRECTORYMASK"
9105 HREF="#FORCECREATEMODE"
9109 >force create mode</I
9113 HREF="#FORCEDIRECTORYMODE"
9117 >force directory mode</I
9125 >inherit permissions = no</B
9135 >This option allows you to override the default
9136 network interfaces list that Samba will use for browsing, name
9137 registration and other NBT traffic. By default Samba will query
9138 the kernel for the list of all active interfaces and use any
9139 interfaces except 127.0.0.1 that are broadcast capable.</P
9141 >The option takes a list of interface strings. Each string
9142 can be in any of the following forms:</P
9148 >a network interface name (such as eth0).
9149 This may include shell-like wildcards so eth* will match
9150 any interface starting with the substring "eth"</P
9154 >an IP address. In this case the netmask is
9155 determined from the list of interfaces obtained from the
9160 >an IP/mask pair. </P
9164 >a broadcast/mask pair.</P
9168 >The "mask" parameters can either be a bit length (such
9169 as 24 for a C class network) or a full netmask in dotted
9172 >The "IP" parameters above can either be a full dotted
9173 decimal IP address or a hostname which will be looked up via
9174 the OS's normal hostname resolution mechanisms.</P
9176 >For example, the following line:</P
9180 >interfaces = eth0 192.168.2.10/24 192.168.3.10/255.255.255.0
9184 >would configure three network interfaces corresponding
9185 to the eth0 device and IP addresses 192.168.2.10 and 192.168.3.10.
9186 The netmasks of the latter two interfaces would be set to 255.255.255.0.</P
9189 HREF="#BINDINTERFACESONLY"
9200 >all active interfaces except 127.0.0.1
9201 that are broadcast capable</EM
9208 >invalid users (S)</DT
9211 >This is a list of users that should not be allowed
9212 to login to this service. This is really a <EM
9215 check to absolutely ensure an improper setting does not breach
9218 >A name starting with a '@' is interpreted as an NIS
9219 netgroup first (if your system supports NIS), and then as a UNIX
9220 group if the name was not found in the NIS netgroup database.</P
9222 >A name starting with '+' is interpreted only
9223 by looking in the UNIX group database. A name starting with
9224 '&' is interpreted only by looking in the NIS netgroup database
9225 (this requires NIS to be working on your system). The characters
9226 '+' and '&' may be used at the start of the name in either order
9233 UNIX group database, followed by the NIS netgroup database, and
9239 > means check the NIS
9240 netgroup database, followed by the UNIX group database (the
9241 same as the '@' prefix).</P
9243 >The current servicename is substituted for <TT
9249 This is useful in the [homes] section.</P
9263 >no invalid users</EM
9268 >invalid users = root fred admin @wheel
9279 >The value of the parameter (an integer) represents
9280 the number of seconds between <TT
9286 packets. If this parameter is zero, no keepalive packets will be
9287 sent. Keepalive packets, if sent, allow the server to tell whether
9288 a client is still present and responding.</P
9290 >Keepalives should, in general, not be needed if the socket
9291 being used has the SO_KEEPALIVE attribute set on it (see <A
9292 HREF="#SOCKETOPTIONS"
9300 Basically you should only use this option if you strike difficulties.</P
9314 NAME="KERNELOPLOCKS"
9316 >kernel oplocks (G)</DT
9319 >For UNIXes that support kernel based <A
9328 (currently only IRIX and the Linux 2.4 kernel), this parameter
9329 allows the use of them to be turned on or off.</P
9331 >Kernel oplocks support allows Samba <TT
9337 > to be broken whenever a local UNIX process or NFS operation
9338 accesses a file that <A
9346 > has oplocked. This allows complete data consistency between
9347 SMB/CIFS, NFS and local file access (and is a <EM
9350 cool feature :-).</P
9352 >This parameter defaults to <TT
9355 >, but is translated
9356 to a no-op on systems that no not have the necessary kernel support.
9357 You should never need to touch this parameter.</P
9369 HREF="#LEVEL2OPLOCKS"
9381 >kernel oplocks = yes</B
9388 >lanman auth (G)</DT
9391 >This parameter determines whether or not <A
9396 attempt to authenticate users using the LANMAN password hash.
9397 If disabled, only clients which support NT password hashes (e.g. Windows
9398 NT/2000 clients, smbclient, etc... but not Windows 95/98 or the MS DOS
9399 network client) will be able to connect to the Samba host.</P
9403 >lanman auth = yes</B
9408 NAME="LARGEREADWRITE"
9410 >large readwrite (G)</DT
9413 >This parameter determines whether or not <A
9418 supports the new 64k streaming read and write varient SMB requests introduced
9419 with Windows 2000. Note that due to Windows 2000 client redirector bugs
9420 this requires Samba to be running on a 64-bit capable operating system such
9421 as IRIX, Solaris or a Linux 2.4 kernel. Can improve performance by 10% with
9422 Windows 2000 clients. Defaults to on. Not as tested as some other Samba
9428 >large readwrite = yes</B
9435 >ldap admin dn (G)</DT
9438 >This parameter is only available if Samba has been
9439 configure to include the <B
9443 at compile time. This option should be considered experimental and
9444 under active development.
9452 > defines the Distinguished
9453 Name (DN) name used by Samba to contact the <A
9457 > when retreiving user account information. The <TT
9463 > is used in conjunction with the admin dn password
9466 >private/secrets.tdb</TT
9469 HREF="smbpasswd.8.html"
9476 page for more information on how to accmplish this.
9487 >ldap filter (G)</DT
9490 >This parameter is only available if Samba has been
9491 configure to include the <B
9495 at compile time. This option should be considered experimental and
9496 under active development.
9499 > This parameter specifies the RFC 2254 compliant LDAP search filter.
9500 The default is to match the login name with the <TT
9504 attribute for all entries matching the <TT
9508 objectclass. Note that this filter should only return one entry.
9513 >ldap filter = (&(uid=%u)(objectclass=sambaAccount))</B
9523 >This parameter is only available if Samba has been
9524 configure to include the <B
9528 at compile time. This option should be considered experimental and
9529 under active development.
9532 > This option is used to control the tcp port number used to contact
9542 The default is to use the stand LDAPS port 636.
9560 >ldap server (G)</DT
9563 >This parameter is only available if Samba has been
9564 configure to include the <B
9568 at compile time. This option should be considered experimental and
9569 under active development.
9572 > This parameter should contains the FQDN of the ldap directory
9573 server which should be queried to locate user account information.
9578 >ldap server = localhost</B
9588 >This parameter is only available if Samba has been
9589 configure to include the <B
9593 at compile time. This option should be considered experimental and
9594 under active development.
9597 > This option is used to define whether or not Samba should
9598 use SSL when connecting to the <A
9610 Samba SSL support which is enabled by specifying the
9634 > can be set to one of three values:
9638 > - Always use SSL when contacting the
9648 Never use SSL when querying the directory, or (c) <TT
9652 - Use the LDAPv3 StartTLS extended operation
9653 (RFC2830) for communicating with the directory server.
9665 >ldap suffix (G)</DT
9668 >This parameter is only available if Samba has been
9669 configure to include the <B
9673 at compile time. This option should be considered experimental and
9674 under active development.
9683 NAME="LEVEL2OPLOCKS"
9685 >level2 oplocks (S)</DT
9688 >This parameter controls whether Samba supports
9689 level2 (read-only) oplocks on a share.</P
9691 >Level2, or read-only oplocks allow Windows NT clients
9692 that have an oplock on a file to downgrade from a read-write oplock
9693 to a read-only oplock once a second client opens the file (instead
9694 of releasing all oplocks on a second open, as in traditional,
9695 exclusive oplocks). This allows all openers of the file that
9696 support level2 oplocks to cache the file for read-ahead only (ie.
9697 they may not cache writes or lock requests) and increases performance
9698 for many accesses of files that are not commonly written (such as
9699 application .EXE files).</P
9701 >Once one of the clients which have a read-only oplock
9702 writes to the file all clients are notified (no reply is needed
9703 or waited for) and told to break their oplocks to "none" and
9704 delete any read-ahead caches.</P
9706 >It is recommended that this parameter be turned on
9707 to speed access to shared executables.</P
9709 >For more discussions on level2 oplocks see the CIFS spec.</P
9712 HREF="#KERNELOPLOCKS"
9720 > are supported then level2 oplocks are
9721 not granted (even if this parameter is set to <TT
9734 > parameter must be set to <TT
9737 > on this share in order for
9738 this parameter to have any effect.</P
9762 >level2 oplocks = yes</B
9769 >lm announce (G)</DT
9772 >This parameter determines if <A
9779 > will produce Lanman announce
9780 broadcasts that are needed by OS/2 clients in order for them to see
9781 the Samba server in their browse list. This parameter can have three
9792 >. The default is <TT
9799 > Samba will never produce these
9800 broadcasts. If set to <TT
9803 > Samba will produce
9804 Lanman announce broadcasts at a frequency set by the parameter
9814 Samba will not send Lanman announce broadcasts by default but will
9815 listen for them. If it hears such a broadcast on the wire it will
9816 then start sending them at a frequency set by the parameter
9837 >lm announce = auto</B
9842 >lm announce = yes</B
9849 >lm interval (G)</DT
9852 >If Samba is set to produce Lanman announce
9853 broadcasts needed by OS/2 clients (see the <A
9861 > parameter) then this
9862 parameter defines the frequency in seconds with which they will be
9863 made. If this is set to zero then no Lanman announcements will be
9864 made despite the setting of the <TT
9885 >lm interval = 60</B
9890 >lm interval = 120</B
9897 >load printers (G)</DT
9900 >A boolean variable that controls whether all
9901 printers in the printcap will be loaded for browsing by default.
9910 >load printers = yes</B
9917 >local master (G)</DT
9920 >This option allows <A
9927 > to try and become a local master browser
9928 on a subnet. If set to <TT
9934 > will not attempt to become a local master browser
9935 on a subnet and will also lose in all browsing elections. By
9936 default this value is set to <TT
9939 >. Setting this value to <TT
9943 mean that Samba will <EM
9946 browser on a subnet, just that <B
9951 > in elections for local master browser.</P
9953 >Setting this value to <TT
9962 > to become a local master browser.</P
9966 >local master = yes</B
9977 HREF="#LOCKDIRECTORY"
9988 NAME="LOCKDIRECTORY"
9990 >lock directory (G)</DT
9993 >This option specifies the directory where lock
9994 files will be placed. The lock files are used to implement the
9996 HREF="#MAXCONNECTIONS"
10000 >max connections</I
10008 >lock directory = ${prefix}/var/locks</B
10013 >lock directory = /var/run/samba/locks</B
10019 NAME="LOCKSPINCOUNT"
10021 >lock spin count (G)</DT
10024 >This parameter controls the number of times
10025 that smbd should attempt to gain a byte range lock on the
10026 behalf of a client request. Experiments have shown that
10027 Windows 2k servers do not reply with a failure if the lock
10028 could not be immediately granted, but try a few more times
10029 in case the lock could later be aquired. This behavior
10030 is used to support PC database formats such as MS Access
10036 >lock spin count = 2</B
10042 NAME="LOCKSPINTIME"
10044 >lock spin time (G)</DT
10047 >The time in microseconds that smbd should
10048 pause before attempting to gain a failed lock. See
10050 HREF="#LOCKSPINCOUNT"
10058 > for more details.
10063 >lock spin time = 10</B
10074 >This controls whether or not locking will be
10075 performed by the server in response to lock requests from the
10081 >, all lock and unlock
10082 requests will appear to succeed and all lock queries will report
10083 that the file in question is available for locking.</P
10088 >, real locking will be performed
10093 > be useful for read-only
10094 filesystems which <EM
10096 > not need locking (such as
10097 CDROM drives), although setting this parameter of <TT
10101 is not really recommended even in this case.</P
10103 >Be careful about disabling locking either globally or in a
10104 specific service, as lack of locking may result in data corruption.
10105 You should never need to set this parameter.</P
10119 >This option allows you to override the name
10120 of the Samba log file (also known as the debug file).</P
10122 >This option takes the standard substitutions, allowing
10123 you to have separate log files for each user or machine.</P
10127 >log file = /usr/local/samba/var/log.%m
10138 >The value of the parameter (an integer) allows
10139 the debug level (logging level) to be specified in the
10143 > file. This is to give greater
10144 flexibility in the configuration of the system.</P
10146 >The default will be the log level specified on
10147 the command line or level zero if none was specified.</P
10158 >logon drive (G)</DT
10161 >This parameter specifies the local path to
10162 which the home directory will be connected (see <A
10171 and is only used by NT Workstations. </P
10173 >Note that this option is only useful if Samba is set up as a
10178 >logon drive = z:</B
10183 >logon drive = h:</B
10190 >logon home (G)</DT
10193 >This parameter specifies the home directory
10194 location when a Win95/98 or NT Workstation logs into a Samba PDC.
10195 It allows you to do </P
10203 >NET USE H: /HOME</B
10208 >from a command prompt, for example.</P
10210 >This option takes the standard substitutions, allowing
10211 you to have separate logon scripts for each user or machine.</P
10213 >This parameter can be used with Win9X workstations to ensure
10214 that roaming profiles are stored in a subdirectory of the user's
10215 home directory. This is done in the following way:</P
10219 >logon home = \\%N\%U\profile</B
10222 >This tells Samba to return the above string, with
10223 substitutions made when a client requests the info, generally
10224 in a NetUserGetInfo request. Win9X clients truncate the info to
10225 \\server\share when a user does <B
10229 but use the whole string when dealing with profiles.</P
10231 >Note that in prior versions of Samba, the <A
10239 > was returned rather than
10249 > but allowed profiles outside the home directory.
10250 The current implementation is correct, and can be used for
10251 profiles if you use the above trick.</P
10253 >This option is only useful if Samba is set up as a logon
10258 >logon home = "\\%N\%U"</B
10263 >logon home = "\\remote_smb_server\%U"</B
10271 >logon path (G)</DT
10274 >This parameter specifies the home directory
10275 where roaming profiles (NTuser.dat etc files for Windows NT) are
10276 stored. Contrary to previous versions of these manual pages, it has
10277 nothing to do with Win 9X roaming profiles. To find out how to
10278 handle roaming profiles for Win 9X system, see the <A
10288 >This option takes the standard substitutions, allowing you
10289 to have separate logon scripts for each user or machine. It also
10290 specifies the directory from which the "Application Data",
10300 >network neighborhood</TT
10305 and other folders, and their contents, are loaded and displayed on
10306 your Windows NT client.</P
10308 >The share and the path must be readable by the user for
10309 the preferences and directories to be loaded onto the Windows NT
10310 client. The share must be writeable when the user logs in for the first
10311 time, in order that the Windows NT client can create the NTuser.dat
10312 and other directories.</P
10314 >Thereafter, the directories and any of the contents can,
10315 if required, be made read-only. It is not advisable that the
10316 NTuser.dat file be made read-only - rename it to NTuser.man to
10317 achieve the desired effect (a <EM
10322 >Windows clients can sometimes maintain a connection to
10323 the [homes] share, even though there is no user logged in.
10324 Therefore, it is vital that the logon path does not include a
10325 reference to the homes share (i.e. setting this parameter to
10326 \%N\%U\profile_path will cause problems).</P
10328 >This option takes the standard substitutions, allowing
10329 you to have separate logon scripts for each user or machine.</P
10331 >Note that this option is only useful if Samba is set up
10332 as a logon server.</P
10336 >logon path = \\%N\%U\profile</B
10341 >logon path = \\PROFILESERVER\PROFILE\%U</B
10348 >logon script (G)</DT
10351 >This parameter specifies the batch file (.bat) or
10352 NT command file (.cmd) to be downloaded and run on a machine when
10353 a user successfully logs in. The file must contain the DOS
10354 style CR/LF line endings. Using a DOS-style editor to create the
10355 file is recommended.</P
10357 >The script must be a relative path to the [netlogon]
10358 service. If the [netlogon] service specifies a <A
10368 >/usr/local/samba/netlogon
10372 >logon script = STARTUP.BAT</B
10374 the file that will be downloaded is:</P
10378 >/usr/local/samba/netlogon/STARTUP.BAT</TT
10381 >The contents of the batch file are entirely your choice. A
10382 suggested command would be to add <B
10384 >NET TIME \\SERVER /SET
10386 >, to force every machine to synchronize clocks with
10387 the same time server. Another use would be to add <B
10390 U: \\SERVER\UTILS</B
10391 > for commonly used utilities, or <B
10393 > NET USE Q: \\SERVER\ISO9001_QA</B
10396 >Note that it is particularly important not to allow write
10397 access to the [netlogon] share, or to grant users write permission
10398 on the batch files in a secure environment, as this would allow
10399 the batch files to be arbitrarily modified and security to be
10402 >This option takes the standard substitutions, allowing you
10403 to have separate logon scripts for each user or machine.</P
10405 >This option is only useful if Samba is set up as a logon
10409 >no logon script defined</EM
10414 >logon script = scripts\%U.bat</B
10419 NAME="LPPAUSECOMMAND"
10421 >lppause command (S)</DT
10424 >This parameter specifies the command to be
10425 executed on the server host in order to stop printing or spooling
10426 a specific print job.</P
10428 >This command should be a program or script which takes
10429 a printer name and job number to pause the print job. One way
10430 of implementing this is by using job priorities, where jobs
10431 having a too low priority won't be sent to the printer.</P
10438 > is given then the printer name
10439 is put in its place. A <TT
10445 the job number (an integer). On HPUX (see <TT
10457 to the lpq command, the job will show up with the correct status, i.e.
10458 if the job priority is lower than the set fence priority it will
10459 have the PAUSED status, whereas if the priority is equal or higher it
10460 will have the SPOOLED or PRINTING status.</P
10462 >Note that it is good practice to include the absolute path
10463 in the lppause command as the PATH may not be available to the server.</P
10476 >Default: Currently no default value is given to
10477 this string, unless the value of the <TT
10486 >, in which case the default is :</P
10490 >lp -i %p-%j -H hold</B
10493 >or if the value of the <TT
10502 >, then the default is:</P
10506 >qstat -s -j%j -h</B
10509 >Example for HPUX: <B
10511 >lppause command = /usr/bin/lpalt
10517 NAME="LPQCACHETIME"
10519 >lpq cache time (G)</DT
10522 >This controls how long lpq info will be cached
10523 for to prevent the <B
10526 > command being called too
10527 often. A separate cache is kept for each variation of the <B
10530 > command used by the system, so if you use different
10534 > commands for different users then they won't
10535 share cache information.</P
10537 >The cache files are stored in <TT
10541 where xxxx is a hash of the <B
10544 > command in use.</P
10546 >The default is 10 seconds, meaning that the cached results
10547 of a previous identical <B
10550 > command will be used
10551 if the cached data is less than 10 seconds old. A large value may
10552 be advisable if your <B
10555 > command is very slow.</P
10557 >A value of 0 will disable caching completely.</P
10572 >lpq cache time = 10</B
10577 >lpq cache time = 30</B
10584 >lpq command (S)</DT
10587 >This parameter specifies the command to be
10588 executed on the server host in order to obtain <B
10592 >-style printer status information.</P
10594 >This command should be a program or script which
10595 takes a printer name as its only parameter and outputs printer
10596 status information.</P
10598 >Currently nine styles of printer status information
10599 are supported; BSD, AIX, LPRNG, PLP, SYSV, HPUX, QNX, CUPS, and SOFTQ.
10600 This covers most UNIX systems. You control which type is expected
10608 >Some clients (notably Windows for Workgroups) may not
10609 correctly send the connection number for the printer they are
10610 requesting status information about. To get around this, the
10611 server reports on the first printer service connected to by the
10612 client. This only happens if the connection number sent is invalid.</P
10619 > is given then the printer name
10620 is put in its place. Otherwise it is placed at the end of the
10623 >Note that it is good practice to include the absolute path
10633 > may not be available to the server. When compiled with
10634 the CUPS libraries, no <TT
10640 needed because smbd will make a library call to obtain the
10641 print queue listing.</P
10655 >depends on the setting of <TT
10665 >lpq command = /usr/bin/lpq -P%p</B
10670 NAME="LPRESUMECOMMAND"
10672 >lpresume command (S)</DT
10675 >This parameter specifies the command to be
10676 executed on the server host in order to restart or continue
10677 printing or spooling a specific print job.</P
10679 >This command should be a program or script which takes
10680 a printer name and job number to resume the print job. See
10682 HREF="#LPPAUSECOMMAND"
10697 > is given then the printer name
10698 is put in its place. A <TT
10704 the job number (an integer).</P
10706 >Note that it is good practice to include the absolute path
10710 >lpresume command</I
10712 > as the PATH may not
10713 be available to the server.</P
10726 >Default: Currently no default value is given
10727 to this string, unless the value of the <TT
10736 >, in which case the default is :</P
10740 >lp -i %p-%j -H resume</B
10743 >or if the value of the <TT
10752 >, then the default is:</P
10756 >qstat -s -j%j -r</B
10759 >Example for HPUX: <B
10761 >lpresume command = /usr/bin/lpalt
10769 >lprm command (S)</DT
10772 >This parameter specifies the command to be
10773 executed on the server host in order to delete a print job.</P
10775 >This command should be a program or script which takes
10776 a printer name and job number, and deletes the print job.</P
10783 > is given then the printer name
10784 is put in its place. A <TT
10790 the job number (an integer).</P
10792 >Note that it is good practice to include the absolute
10798 > as the PATH may not be
10799 available to the server.</P
10813 >depends on the setting of <TT
10824 >lprm command = /usr/bin/lprm -P%p %j
10830 >lprm command = /usr/bin/cancel %p-%j
10836 NAME="MACHINEPASSWORDTIMEOUT"
10838 >machine password timeout (G)</DT
10841 >If a Samba server is a member of a Windows
10842 NT Domain (see the <A
10843 HREF="#SECURITYEQUALSDOMAIN"
10844 >security = domain</A
10846 parameter) then periodically a running <A
10850 > process will try and change the MACHINE ACCOUNT
10851 PASSWORD stored in the TDB called <TT
10853 >private/secrets.tdb
10855 >. This parameter specifies how often this password
10856 will be changed, in seconds. The default is one week (expressed in
10857 seconds), the same as a Windows NT Domain member server.</P
10860 HREF="smbpasswd.8.html"
10868 HREF="#SECURITYEQUALSDOMAIN"
10869 > security = domain</A
10874 >machine password timeout = 604800</B
10881 >magic output (S)</DT
10884 >This parameter specifies the name of a file
10885 which will contain output created by a magic script (see the
10887 HREF="#MAGICSCRIPT"
10895 parameter below).</P
10897 >Warning: If two clients use the same <TT
10903 > in the same directory the output file content
10908 >magic output = <magic script name>.out
10914 >magic output = myfile.txt</B
10921 >magic script (S)</DT
10924 >This parameter specifies the name of a file which,
10925 if opened, will be executed by the server when the file is closed.
10926 This allows a UNIX script to be sent to the Samba host and
10927 executed on behalf of the connected user.</P
10929 >Scripts executed in this way will be deleted upon
10930 completion assuming that the user has the appropriate level
10931 of privilege and the file permissions allow the deletion.</P
10933 >If the script generates output, output will be sent to
10934 the file specified by the <A
10935 HREF="#MAGICOUTPUT"
10942 > parameter (see above).</P
10944 >Note that some shells are unable to interpret scripts
10945 containing CR/LF instead of CR as
10946 the end-of-line marker. Magic scripts must be executable
10949 > on the host, which for some hosts and
10950 some shells will require filtering at the DOS end.</P
10952 >Magic scripts are <EM
10957 > be relied upon.</P
10960 >None. Magic scripts disabled.</EM
10965 >magic script = user.csh</B
10972 >mangle case (S)</DT
10975 >See the section on <A
10982 >mangle case = no</B
10989 >mangled map (S)</DT
10992 >This is for those who want to directly map UNIX
10993 file names which cannot be represented on Windows/DOS. The mangling
10994 of names is not always what is needed. In particular you may have
10995 documents with file extensions that differ between DOS and UNIX.
10996 For example, under UNIX it is common to use <TT
11000 for HTML files, whereas under Windows/DOS <TT
11004 is more commonly used.</P
11017 >mangled map = (*.html *.htm)</B
11020 >One very useful case is to remove the annoying <TT
11024 > off the ends of filenames on some CDROMs (only visible
11025 under some UNIXes). To do this use a map of (*;1 *;).</P
11028 >no mangled map</EM
11033 >mangled map = (*;1 *;)</B
11038 NAME="MANGLEDNAMES"
11040 >mangled names (S)</DT
11043 >This controls whether non-DOS names under UNIX
11044 should be mapped to DOS-compatible names ("mangled") and made visible,
11045 or whether non-DOS names should simply be ignored.</P
11047 >See the section on <A
11050 > for details on how to control the mangling process.</P
11052 >If mangling is used then the mangling algorithm is as follows:</P
11058 >The first (up to) five alphanumeric characters
11059 before the rightmost dot of the filename are preserved, forced
11060 to upper case, and appear as the first (up to) five characters
11061 of the mangled name.</P
11065 >A tilde "~" is appended to the first part of the mangled
11066 name, followed by a two-character unique sequence, based on the
11067 original root name (i.e., the original filename minus its final
11068 extension). The final extension is included in the hash calculation
11069 only if it contains any upper case characters or is longer than three
11072 >Note that the character to use may be specified using
11074 HREF="#MANGLINGCHAR"
11082 > option, if you don't like '~'.</P
11086 >The first three alphanumeric characters of the final
11087 extension are preserved, forced to upper case and appear as the
11088 extension of the mangled name. The final extension is defined as that
11089 part of the original filename after the rightmost dot. If there are no
11090 dots in the filename, the mangled name will have no extension (except
11091 in the case of "hidden files" - see below).</P
11095 >Files whose UNIX name begins with a dot will be
11096 presented as DOS hidden files. The mangled name will be created as
11097 for other filenames, but with the leading dot removed and "___" as
11098 its extension regardless of actual original extension (that's three
11103 >The two-digit hash value consists of upper case
11104 alphanumeric characters.</P
11106 >This algorithm can cause name collisions only if files
11107 in a directory share the same first five alphanumeric characters.
11108 The probability of such a clash is 1/1300.</P
11110 >The name mangling (if enabled) allows a file to be
11111 copied between UNIX directories from Windows/DOS while retaining
11112 the long UNIX filename. UNIX files can be renamed to a new extension
11113 from Windows/DOS and will retain the same basename. Mangled names
11114 do not change between sessions.</P
11118 >mangled names = yes</B
11123 NAME="MANGLEDSTACK"
11125 >mangled stack (G)</DT
11128 >This parameter controls the number of mangled names
11129 that should be cached in the Samba server <A
11135 >This stack is a list of recently mangled base names
11136 (extensions are only maintained if they are longer than 3 characters
11137 or contains upper case characters).</P
11139 >The larger this value, the more likely it is that mangled
11140 names can be successfully converted to correct long UNIX names.
11141 However, large stack sizes will slow most directory accesses. Smaller
11142 stacks save memory in the server (each stack element costs 256 bytes).
11145 >It is not possible to absolutely guarantee correct long
11146 filenames, so be prepared for some surprises!</P
11150 >mangled stack = 50</B
11155 >mangled stack = 100</B
11160 NAME="MANGLINGCHAR"
11162 >mangling char (S)</DT
11165 >This controls what character is used as
11171 >. The default is a '~'
11172 but this may interfere with some software. Use this option to set
11173 it to whatever you prefer.</P
11177 >mangling char = ~</B
11182 >mangling char = ^</B
11189 >map archive (S)</DT
11192 >This controls whether the DOS archive attribute
11193 should be mapped to the UNIX owner execute bit. The DOS archive bit
11194 is set when a file has been modified since its last backup. One
11195 motivation for this option it to keep Samba/your PC from making
11196 any file it touches from becoming executable under UNIX. This can
11197 be quite annoying for shared source code, documents, etc...</P
11199 >Note that this requires the <TT
11205 parameter to be set such that owner execute bit is not masked out
11206 (i.e. it must include 100). See the parameter <A
11218 >map archive = yes</B
11225 >map hidden (S)</DT
11228 >This controls whether DOS style hidden files
11229 should be mapped to the UNIX world execute bit.</P
11231 >Note that this requires the <TT
11237 to be set such that the world execute bit is not masked out (i.e.
11238 it must include 001). See the parameter <A
11250 >map hidden = no</B
11257 >map system (S)</DT
11260 >This controls whether DOS style system files
11261 should be mapped to the UNIX group execute bit.</P
11263 >Note that this requires the <TT
11269 to be set such that the group execute bit is not masked out (i.e.
11270 it must include 010). See the parameter <A
11282 >map system = no</B
11289 >map to guest (G)</DT
11292 >This parameter is only useful in <A
11295 > modes other than <TT
11298 >security = share</I
11313 >This parameter can take three different values, which tell
11318 > what to do with user
11319 login requests that don't match a valid UNIX user in some way.</P
11321 >The three settings are :</P
11330 > - Means user login
11331 requests with an invalid password are rejected. This is the
11340 logins with an invalid password are rejected, unless the username
11341 does not exist, in which case it is treated as a guest login and
11343 HREF="#GUESTACCOUNT"
11357 > - Means user logins
11358 with an invalid password are treated as a guest login and mapped
11360 HREF="#GUESTACCOUNT"
11363 this can cause problems as it means that any user incorrectly typing
11364 their password will be silently logged on as "guest" - and
11365 will not know the reason they cannot access files they think
11366 they should - there will have been no message given to them
11367 that they got their password wrong. Helpdesk services will
11370 > you if you set the <TT
11376 > parameter this way :-).</P
11380 >Note that this parameter is needed to set up "Guest"
11381 share services when using <TT
11387 share. This is because in these modes the name of the resource being
11390 > sent to the server until after
11391 the server has successfully authenticated the client so the server
11392 cannot make authentication decisions at the correct time (connection
11393 to the share) for "Guest" shares.</P
11395 >For people familiar with the older Samba releases, this
11396 parameter maps to the old compile-time setting of the <TT
11398 > GUEST_SESSSETUP</TT
11399 > value in local.h.</P
11403 >map to guest = Never</B
11408 >map to guest = Bad User</B
11413 NAME="MAXCONNECTIONS"
11415 >max connections (S)</DT
11418 >This option allows the number of simultaneous
11419 connections to a service to be limited. If <TT
11425 > is greater than 0 then connections will be refused if
11426 this number of connections to the service are already open. A value
11427 of zero mean an unlimited number of connections may be made.</P
11429 >Record lock files are used to implement this feature. The
11430 lock files will be stored in the directory specified by the <A
11431 HREF="#LOCKDIRECTORY"
11443 >max connections = 0</B
11448 >max connections = 10</B
11455 >max disk size (G)</DT
11458 >This option allows you to put an upper limit
11459 on the apparent size of disks. If you set this option to 100
11460 then all shares will appear to be not larger than 100 MB in
11463 >Note that this option does not limit the amount of
11464 data you can put on the disk. In the above case you could still
11465 store much more than 100 MB on the disk, but if a client ever asks
11466 for the amount of free disk space or the total disk size then the
11467 result will be bounded by the amount specified in <TT
11475 >This option is primarily useful to work around bugs
11476 in some pieces of software that can't handle very large disks,
11477 particularly disks over 1GB in size.</P
11484 > of 0 means no limit.</P
11488 >max disk size = 0</B
11493 >max disk size = 1000</B
11500 >max log size (G)</DT
11503 >This option (an integer in kilobytes) specifies
11504 the max size the log file should grow to. Samba periodically checks
11505 the size and if it is exceeded it will rename the file, adding
11511 >A size of 0 means no limit.</P
11515 >max log size = 5000</B
11520 >max log size = 1000</B
11530 >This option controls the maximum number of
11531 outstanding simultaneous SMB operations that Samba tells the client
11532 it will allow. You should never need to set this parameter.</P
11541 NAME="MAXOPENFILES"
11543 >max open files (G)</DT
11546 >This parameter limits the maximum number of
11547 open files that one <A
11552 serving process may have open for a client at any one time. The
11553 default for this parameter is set very high (10,000) as Samba uses
11554 only one bit per unopened file.</P
11556 >The limit of the number of open files is usually set
11557 by the UNIX per-process file descriptor limit rather than
11558 this parameter so you should never need to touch this parameter.</P
11562 >max open files = 10000</B
11567 NAME="MAXPRINTJOBS"
11569 >max print jobs (S)</DT
11572 >This parameter limits the maximum number of
11573 jobs allowable in a Samba printer queue at any given moment.
11574 If this number is exceeded, <A
11581 > will remote "Out of Space" to the client.
11583 HREF="#TOTALPRINTJOBS"
11596 >max print jobs = 1000</B
11601 >max print jobs = 5000</B
11608 >max protocol (G)</DT
11611 >The value of the parameter (a string) is the highest
11612 protocol level that will be supported by the server.</P
11614 >Possible values are :</P
11623 >: Earliest version. No
11624 concept of user names.</P
11631 >: Slight improvements on
11632 CORE for efficiency.</P
11641 > version of the protocol. Long filename
11649 >: Updates to Lanman1 protocol.
11657 >: Current up to date version of
11658 the protocol. Used by Windows NT. Known as CIFS.</P
11662 >Normally this option should not be set as the automatic
11663 negotiation phase in the SMB protocol takes care of choosing
11664 the appropriate protocol.</P
11667 HREF="#MINPROTOCOL"
11679 >max protocol = NT1</B
11684 >max protocol = LANMAN1</B
11689 NAME="MAXSMBDPROCESSES"
11691 >max smbd processes (G)</DT
11694 >This parameter limits the maximum number of
11703 processes concurrently running on a system and is intended
11704 as a stopgap to prevent degrading service to clients in the event
11705 that the server has insufficient resources to handle more than this
11706 number of connections. Remember that under normal operating
11707 conditions, each user will have an <A
11711 > associated with him or her
11712 to handle connections to all shares from a given host.
11717 >max smbd processes = 0</B
11722 >max smbd processes = 1000</B
11732 >This option tells <A
11737 what the default 'time to live' of NetBIOS names should be (in seconds)
11741 > is requesting a name using either a
11742 broadcast packet or from a WINS server. You should never need to
11743 change this parameter. The default is 3 days.</P
11747 >max ttl = 259200</B
11754 >max wins ttl (G)</DT
11757 >This option tells <A
11762 > when acting as a WINS server (<A
11763 HREF="#WINSSUPPORT"
11767 >wins support = yes</I
11770 >) what the maximum
11771 'time to live' of NetBIOS names that <B
11775 will grant will be (in seconds). You should never need to change this
11776 parameter. The default is 6 days (518400 seconds).</P
11791 >max wins ttl = 518400</B
11801 >This option controls the maximum packet size
11802 that will be negotiated by Samba. The default is 65535, which
11803 is the maximum. In some cases you may find you get better performance
11804 with a smaller value. A value below 2048 is likely to cause problems.
11809 >max xmit = 65535</B
11814 >max xmit = 8192</B
11819 NAME="MESSAGECOMMAND"
11821 >message command (G)</DT
11824 >This specifies what command to run when the
11825 server receives a WinPopup style message.</P
11827 >This would normally be a command that would
11828 deliver the message somehow. How this is to be done is
11829 up to your imagination.</P
11835 >message command = csh -c 'xedit %s;rm %s' &</B
11839 >This delivers the message using <B
11843 removes it afterwards. <EM
11844 >NOTE THAT IT IS VERY IMPORTANT
11845 THAT THIS COMMAND RETURN IMMEDIATELY</EM
11847 have the '&' on the end. If it doesn't return immediately then
11848 your PCs may freeze when sending messages (they should recover
11849 after 30 seconds, hopefully).</P
11851 >All messages are delivered as the global guest user.
11852 The command takes the standard substitutions, although <TT
11865 >Apart from the standard substitutions, some additional
11866 ones apply. In particular:</P
11877 > = the filename containing
11887 > = the destination that
11888 the message was sent to (probably the server name).</P
11897 > = who the message
11902 >You could make this command send mail, or whatever else
11903 takes your fancy. Please let us know of any really interesting
11906 >Here's a way of sending the messages as mail to root:</P
11910 >message command = /bin/mail -s 'message from %f on
11911 %m' root < %s; rm %s</B
11914 >If you don't have a message command then the message
11915 won't be delivered and Samba will tell the sender there was
11916 an error. Unfortunately WfWg totally ignores the error code
11917 and carries on regardless, saying that the message was delivered.
11920 >If you want to silently delete it then try:</P
11924 >message command = rm %s</B
11928 >no message command</EM
11933 >message command = csh -c 'xedit %s;
11939 NAME="MINPASSWDLENGTH"
11941 >min passwd length (G)</DT
11945 HREF="#MINPASSWORDLENGTH"
11949 >min password length</I
11956 NAME="MINPASSWORDLENGTH"
11958 >min password length (G)</DT
11961 >This option sets the minimum length in characters
11962 of a plaintext password that <B
11965 > will accept when performing
11966 UNIX password changing.</P
11969 HREF="#UNIXPASSWORDSYNC"
11978 HREF="#PASSWDPROGRAM"
11986 HREF="#PASSWDCHATDEBUG"
11990 >passwd chat debug</I
11998 >min password length = 5</B
12003 NAME="MINPRINTSPACE"
12005 >min print space (S)</DT
12008 >This sets the minimum amount of free disk
12009 space that must be available before a user will be able to spool
12010 a print job. It is specified in kilobytes. The default is 0, which
12011 means a user can always spool a print job.</P
12026 >min print space = 0</B
12031 >min print space = 2000</B
12038 >min protocol (G)</DT
12041 >The value of the parameter (a string) is the
12042 lowest SMB protocol dialect than Samba will support. Please refer
12044 HREF="#MAXPROTOCOL"
12052 parameter for a list of valid protocol names and a brief description
12053 of each. You may also wish to refer to the C source code in
12056 >source/smbd/negprot.c</TT
12057 > for a listing of known protocol
12058 dialects supported by clients.</P
12060 >If you are viewing this parameter as a security measure, you should
12061 also refer to the <A
12070 > parameter. Otherwise, you should never need
12071 to change this parameter.</P
12075 >min protocol = CORE</B
12080 >min protocol = NT1</B
12088 >min wins ttl (G)</DT
12091 >This option tells <A
12096 when acting as a WINS server (<A
12097 HREF="#WINSSUPPORT"
12101 > wins support = yes</I
12104 >) what the minimum 'time to live'
12105 of NetBIOS names that <B
12108 > will grant will be (in
12109 seconds). You should never need to change this parameter. The default
12110 is 6 hours (21600 seconds).</P
12114 >min wins ttl = 21600</B
12121 >msdfs root (S)</DT
12124 >This boolean parameter is only available if
12125 Samba is configured and compiled with the <B
12128 > option. If set to <TT
12132 Samba treats the share as a Dfs root and allows clients to browse
12133 the distributed file system tree rooted at the share directory.
12134 Dfs links are specified in the share directory by symbolic
12135 links of the form <TT
12137 >msdfs:serverA\shareA,serverB\shareB
12139 > and so on. For more information on setting up a Dfs tree
12140 on Samba, refer to <A
12141 HREF="msdfs_setup.html"
12160 >msdfs root = no</B
12165 NAME="NAMERESOLVEORDER"
12167 >name resolve order (G)</DT
12170 >This option is used by the programs in the Samba
12171 suite to determine what naming services to use and in what order
12172 to resolve host names to IP addresses. The option takes a space
12173 separated string of name resolution options.</P
12175 >The options are :"lmhosts", "host", "wins" and "bcast". They
12176 cause names to be resolved as follows :</P
12186 address in the Samba lmhosts file. If the line in lmhosts has
12187 no name type attached to the NetBIOS name (see the <A
12188 HREF="lmhosts.5.html"
12191 > for details) then
12192 any name type matches for lookup.</P
12199 > : Do a standard host
12200 name to IP address resolution, using the system <TT
12204 >, NIS, or DNS lookups. This method of name resolution
12205 is operating system depended for instance on IRIX or Solaris this
12206 may be controlled by the <TT
12208 >/etc/nsswitch.conf</TT
12210 file. Note that this method is only used if the NetBIOS name
12211 type being queried is the 0x20 (server) name type, otherwise
12219 > : Query a name with
12220 the IP address listed in the <A
12228 > parameter. If no WINS server has
12229 been specified this method will be ignored.</P
12236 > : Do a broadcast on
12237 each of the known local interfaces listed in the <A
12246 parameter. This is the least reliable of the name resolution
12247 methods as it depends on the target host being on a locally
12248 connected subnet.</P
12254 >name resolve order = lmhosts host wins bcast
12260 >name resolve order = lmhosts bcast host
12264 >This will cause the local lmhosts file to be examined
12265 first, followed by a broadcast attempt, followed by a normal
12266 system hostname lookup.</P
12270 NAME="NETBIOSALIASES"
12272 >netbios aliases (G)</DT
12275 >This is a list of NetBIOS names that <A
12279 > will advertise as additional
12280 names by which the Samba server is known. This allows one machine
12281 to appear in browse lists under multiple names. If a machine is
12282 acting as a browse server or logon server none
12283 of these names will be advertised as either browse server or logon
12284 servers, only the primary name of the machine will be advertised
12285 with these capabilities.</P
12288 HREF="#NETBIOSNAME"
12299 >empty string (no additional names)</EM
12304 >netbios aliases = TEST TEST1 TEST2</B
12311 >netbios name (G)</DT
12314 >This sets the NetBIOS name by which a Samba
12315 server is known. By default it is the same as the first component
12316 of the host's DNS name. If a machine is a browse server or
12317 logon server this name (or the first component
12318 of the hosts DNS name) will be the name that these services are
12319 advertised under.</P
12322 HREF="#NETBIOSALIASES"
12333 >machine DNS name</EM
12338 >netbios name = MYNAME</B
12343 NAME="NETBIOSSCOPE"
12345 >netbios scope (G)</DT
12348 >This sets the NetBIOS scope that Samba will
12349 operate under. This should not be set unless every machine
12350 on your LAN also sets this value.</P
12356 >nis homedir (G)</DT
12359 >Get the home share server from a NIS map. For
12360 UNIX systems that use an automounter, the user's home directory
12361 will often be mounted on a workstation on demand from a remote
12364 >When the Samba logon server is not the actual home directory
12365 server, but is mounting the home directories via NFS then two
12366 network hops would be required to access the users home directory
12367 if the logon server told the client to use itself as the SMB server
12368 for home directories (one over SMB and one over NFS). This can
12371 >This option allows Samba to return the home share as
12372 being on a different server to the logon server and as
12373 long as a Samba daemon is running on the home directory server,
12374 it will be mounted on the Samba client directly from the directory
12375 server. When Samba is returning the home share to the client, it
12376 will consult the NIS map specified in <A
12384 > and return the server
12387 >Note that for this option to work there must be a working
12388 NIS system and the Samba server with this option must also
12389 be a logon server.</P
12393 >nis homedir = no</B
12398 NAME="NONUNIXACCOUNTRANGE"
12400 >non unix account range (G)</DT
12403 >The non unix account range parameter specifies
12404 the range of 'user ids' that are allocated by the various 'non unix
12405 account' passdb backends. These backends allow
12406 the storage of passwords for users who don't exist in /etc/passwd.
12407 This is most often used for machine account creation.
12408 This range of ids should have no existing local or NIS users within
12409 it as strange conflicts can occur otherwise.</P
12411 >NOTE: These userids never appear on the system and Samba will never
12412 'become' these users. They are used only to ensure that the algorithmic
12413 RID mapping does not conflict with normal users.
12418 >non unix account range = <empty string>
12424 >non unix account range = 10000-20000</B
12429 NAME="NTACLSUPPORT"
12431 >nt acl support (S)</DT
12434 >This boolean parameter controls whether
12439 > will attempt to map
12440 UNIX permissions into Windows NT access control lists.
12441 This parameter was formally a global parameter in releases
12446 >nt acl support = yes</B
12451 NAME="NTPIPESUPPORT"
12453 >nt pipe support (G)</DT
12456 >This boolean parameter controls whether
12461 > will allow Windows NT
12462 clients to connect to the NT SMB specific <TT
12466 pipes. This is a developer debugging option and can be left
12471 >nt pipe support = yes</B
12476 NAME="NTSTATUSSUPPORT"
12478 >nt status support (G)</DT
12481 >This boolean parameter controls whether <A
12485 > will negotiate NT specific status
12486 support with Windows NT/2k/XP clients. This is a developer
12487 debugging option and should be left alone.
12488 If this option is set to <TT
12491 > then Samba offers
12492 exactly the same DOS error codes that versions prior to Samba 2.2.3
12495 >You should not need to ever disable this parameter.</P
12499 >nt status support = yes</B
12504 NAME="NULLPASSWORDS"
12506 >null passwords (G)</DT
12509 >Allow or disallow client access to accounts
12510 that have null passwords. </P
12513 HREF="smbpasswd.5.html"
12520 >null passwords = no</B
12525 NAME="OBEYPAMRESTRICTIONS"
12527 >obey pam restrictions (G)</DT
12530 >When Samba 2.2 is configured to enable PAM support
12531 (i.e. --with-pam), this parameter will control whether or not Samba
12532 should obey PAM's account and session management directives. The
12533 default behavior is to use PAM for clear text authentication only
12534 and to ignore any account or session management. Note that Samba
12535 always ignores PAM for authentication in the case of <A
12536 HREF="#ENCRYPTPASSWORDS"
12540 >encrypt passwords = yes</I
12544 >. The reason is that PAM modules cannot support the challenge/response
12545 authentication mechanism needed in the presence of SMB password encryption.
12550 >obey pam restrictions = no</B
12560 >This is a boolean option that controls whether
12561 connections with usernames not in the <TT
12567 list will be allowed. By default this option is disabled so that a
12568 client can supply a username to be used by the server. Enabling
12569 this parameter will force the server to only user the login
12575 > list and is only really
12577 HREF="#SECURITYEQUALSSHARE"
12582 >Note that this also means Samba won't try to deduce
12583 usernames from the service name. This can be annoying for
12584 the [homes] section. To get around this you could use <B
12588 > which means your <TT
12594 will be just the service name, which for home directories is the
12595 name of the user.</P
12617 >only guest (S)</DT
12632 NAME="OPLOCKBREAKWAITTIME"
12634 >oplock break wait time (G)</DT
12637 >This is a tuning parameter added due to bugs in
12638 both Windows 9x and WinNT. If Samba responds to a client too
12639 quickly when that client issues an SMB that can cause an oplock
12640 break request, then the network client can fail and not respond
12641 to the break request. This tuning parameter (which is set in milliseconds)
12642 is the amount of time Samba will wait before sending an oplock break
12643 request to such (broken) clients.</P
12646 >DO NOT CHANGE THIS PARAMETER UNLESS YOU HAVE READ
12647 AND UNDERSTOOD THE SAMBA OPLOCK CODE</EM
12652 >oplock break wait time = 0</B
12657 NAME="OPLOCKCONTENTIONLIMIT"
12659 >oplock contention limit (S)</DT
12670 improve the efficiency of the granting of oplocks under multiple
12671 client contention for the same file.</P
12673 >In brief it specifies a number, which causes <A
12678 grant an oplock even when requested if the approximate number of
12679 clients contending for an oplock on the same file goes over this
12680 limit. This causes <B
12683 > to behave in a similar
12684 way to Windows NT.</P
12687 >DO NOT CHANGE THIS PARAMETER UNLESS YOU HAVE READ
12688 AND UNDERSTOOD THE SAMBA OPLOCK CODE</EM
12693 >oplock contention limit = 2</B
12703 >This boolean option tells <B
12707 issue oplocks (opportunistic locks) to file open requests on this
12708 share. The oplock code can dramatically (approx. 30% or more) improve
12709 the speed of access to files on Samba servers. It allows the clients
12710 to aggressively cache files locally and you may want to disable this
12711 option for unreliable network environments (it is turned on by
12712 default in Windows NT Servers). For more information see the file
12722 >Oplocks may be selectively turned off on certain files with a
12724 HREF="#VETOOPLOCKFILES"
12728 > veto oplock files</I
12731 > parameter. On some systems
12732 oplocks are recognized by the underlying operating system. This
12733 allows data synchronization between all access to oplocked files,
12734 whether it be via Samba or NFS or a local UNIX process. See the
12740 > parameter for details.</P
12743 HREF="#KERNELOPLOCKS"
12752 HREF="#LEVEL2OPLOCKS"
12756 > level2 oplocks</I
12773 >This integer value controls what level Samba
12774 advertises itself as for browse elections. The value of this
12775 parameter determines whether <A
12780 has a chance of becoming a local master browser for the <TT
12785 > in the local broadcast area.</P
12789 >By default, Samba will win
12790 a local master browsing election over all Microsoft operating
12791 systems except a Windows NT 4.0/2000 Domain Controller. This
12792 means that a misconfigured Samba host can effectively isolate
12793 a subnet for browsing purposes. See <TT
12815 NAME="OS2DRIVERMAP"
12817 >os2 driver map (G)</DT
12820 >The parameter is used to define the absolute
12821 path to a file containing a mapping of Windows NT printer driver
12822 names to OS/2 printer driver names. The format is:</P
12824 ><nt driver name> = <os2 driver
12825 name>.<device name></P
12827 >For example, a valid entry using the HP LaserJet 5
12828 printer driver would appear as <B
12830 >HP LaserJet 5L = LASERJET.HP
12834 >The need for the file is due to the printer driver namespace
12835 problem described in the <A
12836 HREF="printer_driver2.html"
12840 >. For more details on OS/2 clients, please
12842 HREF="OS2-Client-HOWTO.html"
12846 > containing in the Samba documentation.</P
12850 >os2 driver map = <empty string>
12856 NAME="PAMPASSWORDCHANGE"
12858 >pam password change (G)</DT
12861 >With the addition of better PAM support in Samba 2.2,
12862 this parameter, it is possible to use PAM's password change control
12863 flag for Samba. If enabled, then PAM will be used for password
12864 changes when requested by an SMB client instead of the program listed in
12866 HREF="#PASSWDPROGRAM"
12874 It should be possible to enable this without changing your
12884 parameter for most setups.
12889 >pam password change = no</B
12896 >panic action (G)</DT
12899 >This is a Samba developer option that allows a
12900 system command to be called when either <A
12909 crashes. This is usually used to draw attention to the fact that
12910 a problem occurred.</P
12914 >panic action = <empty string></B
12919 >panic action = "/bin/sleep 90000"</B
12924 NAME="PASSDBBACKEND"
12926 >passdb backend (G)</DT
12929 >This option allows the administrator to chose which backends to retrieve and store passwords with. This allows (for example) both
12930 smbpasswd and tdbsam to be used without a recompile.
12931 Multiple backends can be specified, seperated by spaces. The backends will be searched in the order they are specified. New users are always added to the first backend specified.
12932 Experimental backends must still be selected
12933 (eg --with-tdbsam) at configure time.
12936 >This paramater is in two parts, the backend's name, and a 'location'
12937 string that has meaning only to that particular backed. These are separated
12938 by a : character.</P
12940 >Available backends can include:
12949 > - The default smbpasswd
12950 backend. Takes a path to the smbpasswd file as an optional argument.</P
12958 backend, but with support for 'not unix accounts'.
12959 Takes a path to the smbpasswd file as an optional argument.</P
12962 HREF="#NONUNIXACCOUNTRANGE"
12966 >non unix account range</I
12976 > - The TDB based password storage
12977 backend. Takes a path to the TDB as an optional argument (defaults to passdb.tdb
12993 > - The TDB based password storage
12994 backend, with non unix account support. Takes a path to the TDB as an optional argument (defaults to passdb.tdb
13006 HREF="#NONUNIXACCOUNTRANGE"
13010 >non unix account range</I
13020 > - The LDAP based passdb
13021 backend. Takes an LDAP URL as an optional argument (defaults to
13024 >ldap://localhost</B
13032 > - The LDAP based passdb
13033 backend, with non unix account support. Takes an LDAP URL as an optional argument (defaults to
13036 >ldap://localhost</B
13040 HREF="#NONUNIXACCOUNTRANGE"
13044 >non unix account range</I
13054 > - Allows Samba to load an
13055 arbitary passdb backend from the .so specified as a compulsary argument.
13058 >Any characters after the (optional) second : are passed to the plugin
13059 for its own processing</P
13067 >passdb backend = smbpasswd</B
13072 >passdb backend = tdbsam:/etc/samba/private/passdb.tdb smbpasswd:/etc/samba/smbpasswd</B
13077 >passdb backend = ldapsam_nua:ldaps://ldap.example.com</B
13082 >passdb backend = plugin:/usr/local/samba/lib/my_passdb.so:my_plugin_args tdbsam:/etc/samba/private/passdb.tdb</B
13089 >passwd chat (G)</DT
13092 >This string controls the <EM
13095 conversation that takes places between <A
13099 > and the local password changing
13100 program to change the user's password. The string describes a
13101 sequence of response-receive pairs that <A
13105 > uses to determine what to send to the
13107 HREF="#PASSWDPROGRAM"
13115 > and what to expect back. If the expected output is not
13116 received then the password is not changed.</P
13118 >This chat sequence is often quite site specific, depending
13119 on what local methods are used for password control (such as NIS
13122 >Note that this parameter only is only used if the <A
13123 HREF="#UNIXPASSWORDSYNC"
13131 > parameter is set to <TT
13135 sequence is then called <EM
13137 > when the SMB password
13138 in the smbpasswd file is being changed, without access to the old
13139 password cleartext. This means that root must be able to reset the user's password
13140 without knowing the text of the previous password. In the presence of NIS/YP,
13141 this means that the <A
13142 HREF="#PASSWDPROGRAM"
13145 executed on the NIS master.
13148 >The string can contain the macro <TT
13153 > which is substituted
13154 for the new password. The chat sequence can also contain the standard
13167 > to give line-feed,
13168 carriage-return, tab and space. The chat sequence string can also contain
13169 a '*' which matches any sequence of characters.
13170 Double quotes can be used to collect strings with spaces
13171 in them into a single string.</P
13173 >If the send string in any part of the chat sequence
13174 is a full stop ".", then no string is sent. Similarly,
13175 if the expect string is a full stop then no string is expected.</P
13178 HREF="#PAMPASSWORDCHANGE"
13186 > parameter is set to true, the chat pairs
13187 may be matched in any order, and success is determined by the PAM result,
13188 not any particular output. The \n macro is ignored for PAM conversions.
13192 HREF="#UNIXPASSWORDSYNC"
13201 HREF="#PASSWDPROGRAM"
13205 > passwd program</I
13209 HREF="#PASSWDCHATDEBUG"
13213 >passwd chat debug</I
13217 HREF="#PAMPASSWORDCHANGE"
13221 >pam password change</I
13228 >passwd chat = *new*password* %n\n
13229 *new*password* %n\n *changed*</B
13234 >passwd chat = "*Enter OLD password*" %o\n
13235 "*Enter NEW password*" %n\n "*Reenter NEW password*" %n\n "*Password
13241 NAME="PASSWDCHATDEBUG"
13243 >passwd chat debug (G)</DT
13246 >This boolean specifies if the passwd chat script
13247 parameter is run in <EM
13249 > mode. In this mode the
13250 strings passed to and received from the passwd chat are printed
13265 of 100. This is a dangerous option as it will allow plaintext passwords
13266 to be seen in the <B
13269 > log. It is available to help
13270 Samba admins debug their <TT
13276 when calling the <TT
13282 be turned off after this has been done. This option has no effect if the
13284 HREF="#PAMPASSWORDCHANGE"
13288 >pam password change</I
13292 paramter is set. This parameter is off by default.</P
13304 HREF="#PAMPASSWORDCHANGE"
13308 >pam password change</I
13313 HREF="#PASSWDPROGRAM"
13325 >passwd chat debug = no</B
13330 NAME="PASSWDPROGRAM"
13332 >passwd program (G)</DT
13335 >The name of a program that can be used to set
13336 UNIX user passwords. Any occurrences of <TT
13342 will be replaced with the user name. The user name is checked for
13343 existence before calling the password changing program.</P
13345 >Also note that many passwd programs insist in <EM
13348 > passwords, such as a minimum length, or the inclusion
13349 of mixed case chars and digits. This can pose a problem as some clients
13350 (such as Windows for Workgroups) uppercase the password before sending
13361 > parameter is set to <TT
13365 > then this program is called <EM
13368 before the SMB password in the <A
13369 HREF="smbpasswd.5.html"
13373 > file is changed. If this UNIX password change fails, then
13377 > will fail to change the SMB password also
13378 (this is by design).</P
13383 >unix password sync</I
13386 is set this parameter <EM
13387 >MUST USE ABSOLUTE PATHS</EM
13391 > programs called, and must be examined
13392 for security implications. Note that by default <TT
13404 HREF="#UNIXPASSWORDSYNC"
13416 >passwd program = /bin/passwd</B
13421 >passwd program = /sbin/npasswd %u</B
13427 NAME="PASSWORDLEVEL"
13429 >password level (G)</DT
13432 >Some client/server combinations have difficulty
13433 with mixed-case passwords. One offending client is Windows for
13434 Workgroups, which for some reason forces passwords to upper
13435 case when using the LANMAN1 protocol, but leaves them alone when
13436 using COREPLUS! Another problem child is the Windows 95/98
13437 family of operating systems. These clients upper case clear
13438 text passwords even when NT LM 0.12 selected by the protocol
13439 negotiation request/response.</P
13441 >This parameter defines the maximum number of characters
13442 that may be upper case in passwords.</P
13444 >For example, say the password given was "FRED". If <TT
13447 > password level</I
13449 > is set to 1, the following combinations
13450 would be tried if "FRED" failed:</P
13452 >"Fred", "fred", "fRed", "frEd","freD"</P
13460 the following combinations would also be tried: </P
13462 >"FRed", "FrEd", "FreD", "fREd", "fReD", "frED", ..</P
13466 >The higher value this parameter is set to the more likely
13467 it is that a mixed case password will be matched against a single
13468 case password. However, you should be aware that use of this
13469 parameter reduces security and increases the time taken to
13470 process a new connection.</P
13472 >A value of zero will cause only two attempts to be
13473 made - the password as is and the password in all-lower case.</P
13477 >password level = 0</B
13482 >password level = 4</B
13487 NAME="PASSWORDSERVER"
13489 >password server (G)</DT
13492 >By specifying the name of another SMB server (such
13493 as a WinNT box) with this option, and using <B
13499 >security = server</B
13500 > you can get Samba
13501 to do all its username/password validation via a remote server.</P
13503 >This option sets the name of the password server to use.
13504 It must be a NetBIOS name, so if the machine's NetBIOS name is
13505 different from its Internet name then you may have to add its NetBIOS
13506 name to the lmhosts file which is stored in the same directory
13512 >The name of the password server is looked up using the
13514 HREF="#NAMERESOLVEORDER"
13522 > and so may resolved
13523 by any method and order described in that parameter.</P
13525 >The password server much be a machine capable of using
13526 the "LM1.2X002" or the "NT LM 0.12" protocol, and it must be in
13527 user level security mode.</P
13531 > Using a password server
13532 means your UNIX box (running Samba) is only as secure as your
13533 password server. <EM
13534 >DO NOT CHOOSE A PASSWORD SERVER THAT
13535 YOU DON'T COMPLETELY TRUST</EM
13538 >Never point a Samba server at itself for password
13539 serving. This will cause a loop and could lock up your Samba
13542 >The name of the password server takes the standard
13543 substitutions, but probably the only useful one is <TT
13549 >, which means the Samba server will use the incoming
13550 client as the password server. If you use this then you better
13551 trust your clients, and you had better restrict them with hosts allow!</P
13558 > parameter is set to
13562 >, then the list of machines in this
13563 option must be a list of Primary or Backup Domain controllers for the
13564 Domain or the character '*', as the Samba server is effectively
13565 in that domain, and will use cryptographically authenticated RPC calls
13566 to authenticate the user logging on. The advantage of using <B
13568 > security = domain</B
13569 > is that if you list several hosts in the
13573 >password server</I
13579 > will try each in turn till it finds one that responds. This
13580 is useful in case your primary server goes down.</P
13585 >password server</I
13588 to the character '*', then Samba will attempt to auto-locate the
13589 Primary or Backup Domain controllers to authenticate against by
13590 doing a query for the name <TT
13592 >WORKGROUP<1C></TT
13594 and then contacting each server returned in the list of IP
13595 addresses from the name resolution source. </P
13606 >, then there are different
13607 restrictions that <B
13609 >security = domain</B
13617 >You may list several password servers in
13621 >password server</I
13623 > parameter, however if an
13627 > makes a connection to a password server,
13628 and then the password server fails, no more users will be able
13629 to be authenticated from this <B
13633 restriction of the SMB/CIFS protocol when in <B
13637 > mode and cannot be fixed in Samba.</P
13641 >If you are using a Windows NT server as your
13642 password server then you will have to ensure that your users
13643 are able to login from the Samba server, as when in <B
13645 > security = server</B
13646 > mode the network logon will appear to
13647 come from there rather than from the users workstation.</P
13664 >password server = <empty string></B
13670 >password server = NT-PDC, NT-BDC1, NT-BDC2
13676 >password server = *</B
13686 >This parameter specifies a directory to which
13687 the user of the service is to be given access. In the case of
13688 printable services, this is where print data will spool prior to
13689 being submitted to the host for printing.</P
13691 >For a printable service offering guest access, the service
13692 should be readonly and the path should be world-writeable and
13693 have the sticky bit set. This is not mandatory of course, but
13694 you probably won't get the results you expect if you do
13697 >Any occurrences of <TT
13703 will be replaced with the UNIX username that the client is using
13704 on this connection. Any occurrences of <TT
13710 will be replaced by the NetBIOS name of the machine they are
13711 connecting from. These replacements are very useful for setting
13712 up pseudo home directories for users.</P
13714 >Note that this path will be based on <A
13722 > if one was specified.</P
13730 >path = /home/fred</B
13735 NAME="PIDDIRECTORY"
13737 >pid directory (G)</DT
13740 >This option specifies the directory where pid
13741 files will be placed. </P
13745 >pid directory = ${prefix}/var/locks</B
13750 >pid directory = /var/run/</B
13756 NAME="POSIXLOCKING"
13758 >posix locking (S)</DT
13769 daemon maintains an database of file locks obtained by SMB clients.
13770 The default behavior is to map this internal database to POSIX
13771 locks. This means that file locks obtained by SMB clients are
13772 consistent with those seen by POSIX compliant applications accessing
13773 the files via a non-SMB method (e.g. NFS or local file access).
13774 You should never need to disable this parameter.</P
13778 >posix locking = yes</B
13788 >This option specifies a command to be run
13789 whenever the service is disconnected. It takes the usual
13790 substitutions. The command may be run as the root on some
13793 >An interesting example may be to unmount server
13798 >postexec = /etc/umount /cdrom</B
13813 >none (no command executed)</EM
13819 >postexec = echo \"%u disconnected from %S
13820 from %m (%I)\" >> /tmp/log</B
13827 >postscript (S)</DT
13830 >This parameter forces a printer to interpret
13831 the print files as PostScript. This is done by adding a <TT
13835 > to the start of print output.</P
13837 >This is most useful when you have lots of PCs that persist
13838 in putting a control-D at the start of print jobs, which then
13839 confuses your printer.</P
13843 >postscript = no</B
13853 >This option specifies a command to be run whenever
13854 the service is connected to. It takes the usual substitutions.</P
13856 >An interesting example is to send the users a welcome
13857 message every time they log in. Maybe a message of the day? Here
13862 >preexec = csh -c 'echo \"Welcome to %S!\" |
13863 /usr/local/samba/bin/smbclient -M %m -I %I' & </B
13866 >Of course, this could get annoying after a while :-)</P
13869 HREF="#PREEXECCLOSE"
13889 >none (no command executed)</EM
13894 >preexec = echo \"%u connected to %S from %m
13895 (%I)\" >> /tmp/log</B
13900 NAME="PREEXECCLOSE"
13902 >preexec close (S)</DT
13905 >This boolean option controls whether a non-zero
13906 return code from <A
13915 > should close the service being connected to.</P
13919 >preexec close = no</B
13924 NAME="PREFERREDMASTER"
13926 >preferred master (G)</DT
13929 >This boolean parameter controls if <A
13933 > is a preferred master browser
13934 for its workgroup.</P
13936 >If this is set to <TT
13943 will force an election, and it will have a slight advantage in
13944 winning the election. It is recommended that this parameter is
13945 used in conjunction with <B
13948 HREF="#DOMAINMASTER"
13959 > can guarantee becoming a domain master.</P
13961 >Use this option with caution, because if there are several
13962 hosts (whether Samba servers, Windows 95 or NT) that are preferred
13963 master browsers on the same subnet, they will each periodically
13964 and continuously attempt to become the local master browser.
13965 This will result in unnecessary broadcast traffic and reduced browsing
13981 >preferred master = auto</B
13986 NAME="PREFEREDMASTER"
13988 >prefered master (G)</DT
13992 HREF="#PREFERREDMASTER"
13996 > preferred master</I
13999 > for people who cannot spell :-).</P
14008 >This is a list of services that you want to be
14009 automatically added to the browse lists. This is most useful
14010 for homes and printers services that would otherwise not be
14013 >Note that if you just want all printers in your
14014 printcap file loaded then the <A
14015 HREF="#LOADPRINTERS"
14022 > option is easier.</P
14025 >no preloaded services</EM
14030 >preload = fred lp colorlp</B
14035 NAME="PRESERVECASE"
14037 >preserve case (S)</DT
14040 > This controls if new filenames are created
14041 with the case that the client passes, or if they are forced to
14043 HREF="#DEFAULTCASE"
14055 >preserve case = yes</B
14058 >See the section on <A
14062 > for a fuller discussion.</P
14066 NAME="PRINTCOMMAND"
14068 >print command (S)</DT
14071 >After a print job has finished spooling to
14072 a service, this command will be used via a <B
14076 call to process the spool file. Typically the command specified will
14077 submit the spool file to the host's printing subsystem, but there
14078 is no requirement that this be the case. The server will not remove
14079 the spool file, so whatever command you specify should remove the
14080 spool file when it has been processed, otherwise you will need to
14081 manually remove old spool files.</P
14083 >The print command is simply a text string. It will be used
14084 verbatim after macro substitutions have been made:</P
14086 >s, %p - the path to the spool
14089 >%p - the appropriate printer
14093 name as transmitted by the client.</P
14095 >%c - The number of printed pages
14096 of the spooled job (if known).</P
14098 >%z - the size of the spooled
14099 print job (in bytes)</P
14101 >The print command <EM
14104 one occurrence of <TT
14120 > is optional. At the time
14121 a job is submitted, if no printer name is supplied the <TT
14127 > will be silently removed from the printer command.</P
14129 >If specified in the [global] section, the print command given
14130 will be used for any printable service that does not have its own
14131 print command specified.</P
14133 >If there is neither a specified print command for a
14134 printable service nor a global print command, spool files will
14135 be created but not processed and (most importantly) not removed.</P
14137 >Note that printing may fail on some UNIXes from the
14141 > account. If this happens then create
14142 an alternative guest account that can print and set the <A
14143 HREF="#GUESTACCOUNT"
14151 in the [global] section.</P
14153 >You can form quite complex print commands by realizing
14154 that they are just passed to a shell. For example the following
14155 will log a print job, print the file, then remove it. Note that
14156 ';' is the usual separator for command in shell scripts.</P
14160 >print command = echo Printing %s >>
14161 /tmp/print.log; lpr -P %p %s; rm %s</B
14164 >You may have to vary this command considerably depending
14165 on how you normally print files on your system. The default for
14166 the parameter varies depending on the setting of the <A
14178 >printing = BSD, AIX, QNX, LPRNG
14184 >print command = lpr -r -P%p %s</B
14189 >printing = SYSV or HPUX :</B
14194 >print command = lp -c -d%p %s; rm %s</B
14199 >printing = SOFTQ :</B
14204 >print command = lp -d%p -s %s; rm %s</B
14207 >For printing = CUPS : If SAMBA is compiled against
14210 >printcap = cups</A
14212 uses the CUPS API to
14213 submit jobs, etc. Otherwise it maps to the System V
14214 commands with the -oraw option for printing, i.e. it
14217 >lp -c -d%p -oraw; rm %s</B
14221 >printing = cups</B
14223 and if SAMBA is compiled against libcups, any manually
14224 set print command will be ignored.</P
14228 >print command = /usr/local/samba/bin/myprintscript
14256 >If this parameter is <TT
14260 clients may open, write to and submit spool files on the directory
14261 specified for the service. </P
14263 >Note that a printable service will ALWAYS allow writing
14264 to the service path (user privileges permitting) via the spooling
14265 of print data. The <A
14274 > parameter controls only non-printing access to
14290 HREF="#PRINTCAPNAME"
14301 NAME="PRINTCAPNAME"
14303 >printcap name (G)</DT
14306 >This parameter may be used to override the
14307 compiled-in default printcap name used by the server (usually <TT
14309 > /etc/printcap</TT
14310 >). See the discussion of the <A
14313 > section above for reasons
14314 why you might want to do this.</P
14316 >To use the CUPS printing interface set <B
14318 >printcap name = cups
14320 >. This should be supplemented by an addtional setting
14323 >printing = cups</A
14327 >printcap name = cups</B
14329 "dummy" printcap created by CUPS, as specified in your CUPS
14330 configuration file.
14333 >On System V systems that use <B
14337 list available printers you can use <B
14339 >printcap name = lpstat
14341 > to automatically obtain lists of available printers. This
14342 is the default for systems that define SYSV at configure time in
14343 Samba (this includes most System V based systems). If <TT
14352 these systems then Samba will launch <B
14356 attempt to parse the output to obtain a printer list.</P
14358 >A minimal printcap file would look something like this:</P
14367 CLASS="PROGRAMLISTING"
14368 > print1|My Printer 1
14369 print2|My Printer 2
14370 print3|My Printer 3
14371 print4|My Printer 4
14372 print5|My Printer 5
14379 >where the '|' separates aliases of a printer. The fact
14380 that the second alias has a space in it gives a hint to Samba
14381 that it's a comment.</P
14385 >: Under AIX the default printcap
14389 >. Samba will assume the
14393 > format if the string
14397 > appears in the printcap filename.</P
14401 >printcap name = /etc/printcap</B
14406 >printcap name = /etc/myprintcap</B
14411 NAME="PRINTERADMIN"
14413 >printer admin (S)</DT
14416 >This is a list of users that can do anything to
14417 printers via the remote administration interfaces offered by MS-RPC
14418 (usually using a NT workstation). Note that the root user always
14419 has admin rights.</P
14423 >printer admin = <empty string></B
14429 >printer admin = admin, @staff</B
14434 NAME="PRINTERDRIVER"
14436 >printer driver (S)</DT
14441 >This is a deprecated
14442 parameter and will be removed in the next major release
14443 following version 2.2. Please see the instructions in
14445 HREF="printer_driver2.html"
14447 >Samba 2.2. Printing
14449 > for more information
14450 on the new method of loading printer drivers onto a Samba server.
14453 >This option allows you to control the string
14454 that clients receive when they ask the server for the printer driver
14455 associated with a printer. If you are using Windows95 or Windows NT
14456 then you can use this to automate the setup of printers on your
14459 >You need to set this parameter to the exact string (case
14460 sensitive) that describes the appropriate printer driver for your
14461 system. If you don't know the exact string to use then you should
14462 first try with no <A
14463 HREF="#PRINTERDRIVER"
14467 > printer driver</I
14470 > option set and the client will
14471 give you a list of printer drivers. The appropriate strings are
14472 shown in a scroll box after you have chosen the printer manufacturer.</P
14475 HREF="#PRINTERDRIVERFILE"
14487 >printer driver = HP LaserJet 4L</B
14492 NAME="PRINTERDRIVERFILE"
14494 >printer driver file (G)</DT
14499 >This is a deprecated
14500 parameter and will be removed in the next major release
14501 following version 2.2. Please see the instructions in
14503 HREF="printer_driver2.html"
14505 >Samba 2.2. Printing
14507 > for more information
14508 on the new method of loading printer drivers onto a Samba server.
14511 >This parameter tells Samba where the printer driver
14512 definition file, used when serving drivers to Windows 95 clients, is
14513 to be found. If this is not set, the default is :</P
14518 CLASS="REPLACEABLE"
14520 >SAMBA_INSTALL_DIRECTORY</I
14523 /lib/printers.def</TT
14526 >This file is created from Windows 95 <TT
14530 > files found on the Windows 95 client system. For more
14531 details on setting up serving of printer drivers to Windows 95
14532 clients, see the outdated documentation file in the <TT
14538 >PRINTER_DRIVER.txt</TT
14542 HREF="#PRINTERDRIVERLOCATION"
14546 > printer driver location</I
14552 >None (set in compile).</EM
14557 >printer driver file =
14558 /usr/local/samba/printers/drivers.def</B
14563 NAME="PRINTERDRIVERLOCATION"
14565 >printer driver location (S)</DT
14570 >This is a deprecated
14571 parameter and will be removed in the next major release
14572 following version 2.2. Please see the instructions in
14574 HREF="printer_driver2.html"
14576 >Samba 2.2. Printing
14578 > for more information
14579 on the new method of loading printer drivers onto a Samba server.
14582 >This parameter tells clients of a particular printer
14583 share where to find the printer driver files for the automatic
14584 installation of drivers for Windows 95 machines. If Samba is set up
14585 to serve printer drivers to Windows 95 machines, this should be set to</P
14589 >\\MACHINE\PRINTER$</B
14592 >Where MACHINE is the NetBIOS name of your Samba server,
14593 and PRINTER$ is a share you set up for serving printer driver
14594 files. For more details on setting this up see the outdated documentation
14600 > PRINTER_DRIVER.txt</TT
14604 HREF="#PRINTERDRIVERFILE"
14608 > printer driver file</I
14620 >printer driver location = \\MACHINE\PRINTER$
14628 >printer name (S)</DT
14631 >This parameter specifies the name of the printer
14632 to which print jobs spooled through a printable service will be sent.</P
14634 >If specified in the [global] section, the printer
14635 name given will be used for any printable service that does
14636 not have its own printer name specified.</P
14639 >none (but may be <TT
14643 on many systems)</EM
14648 >printer name = laserwriter</B
14659 HREF="#PRINTERNAME"
14675 >This parameters controls how printer status
14676 information is interpreted on your system. It also affects the
14677 default values for the <TT
14697 >lpresume command</I
14705 > if specified in the
14706 [global] section.</P
14708 >Currently nine printing styles are supported. They are
14742 >To see what the defaults are for the other print
14743 commands when using the various options use the <A
14744 HREF="testparm.1.html"
14749 >This option can be set on a per printer basis</P
14751 >See also the discussion in the <A
14760 >private dir (G)</DT
14763 >This parameters defines the directory
14764 smbd will use for storing such files as <TT
14776 >private dir = ${prefix}/private</B
14787 HREF="#MAXPROTOCOL"
14816 NAME="QUEUEPAUSECOMMAND"
14818 >queuepause command (S)</DT
14821 >This parameter specifies the command to be
14822 executed on the server host in order to pause the printer queue.</P
14824 >This command should be a program or script which takes
14825 a printer name as its only parameter and stops the printer queue,
14826 such that no longer jobs are submitted to the printer.</P
14828 >This command is not supported by Windows for Workgroups,
14829 but can be issued from the Printers window under Windows 95
14837 > is given then the printer name
14838 is put in its place. Otherwise it is placed at the end of the command.
14841 >Note that it is good practice to include the absolute
14842 path in the command as the PATH may not be available to the
14846 >depends on the setting of <TT
14857 >queuepause command = disable %p</B
14862 NAME="QUEUERESUMECOMMAND"
14864 >queueresume command (S)</DT
14867 >This parameter specifies the command to be
14868 executed on the server host in order to resume the printer queue. It
14869 is the command to undo the behavior that is caused by the
14870 previous parameter (<A
14871 HREF="#QUEUEPAUSECOMMAND"
14875 > queuepause command</I
14880 >This command should be a program or script which takes
14881 a printer name as its only parameter and resumes the printer queue,
14882 such that queued jobs are resubmitted to the printer.</P
14884 >This command is not supported by Windows for Workgroups,
14885 but can be issued from the Printers window under Windows 95
14893 > is given then the printer name
14894 is put in its place. Otherwise it is placed at the end of the
14897 >Note that it is good practice to include the absolute
14898 path in the command as the PATH may not be available to the
14902 >depends on the setting of <A
14916 >queuepause command = enable %p
14927 >This boolean parameter controls whether <A
14931 > will support the "Read
14932 Block Multiplex" SMB. This is now rarely used and defaults to
14936 >. You should never need to set this
14951 >This is a list of users that are given read-only
14952 access to a service. If the connecting user is in this list then
14953 they will not be given write access, no matter what the <A
14962 option is set to. The list can include group names using the
14963 syntax described in the <A
14964 HREF="#INVALIDUSERS"
14981 > parameter and the <A
14982 HREF="#INVALIDUSERS"
14994 >read list = <empty string></B
14999 >read list = mary, @students</B
15009 >Note that this is an inverted synonym for <A
15026 >This parameter controls whether or not the server
15027 will support the raw read SMB requests when transferring data
15030 >If enabled, raw reads allow reads of 65535 bytes in
15031 one packet. This typically provides a major performance benefit.
15034 >However, some clients either negotiate the allowable
15035 block size incorrectly or are incapable of supporting larger block
15036 sizes, and for these clients you may need to disable raw reads.</P
15038 >In general this parameter should be viewed as a system tuning
15039 tool and left severely alone. See also <A
15067 affects the overlap of disk reads/writes with network reads/writes.
15068 If the amount of data being transferred in several of the SMB
15069 commands (currently SMBwrite, SMBwriteX and SMBreadbraw) is larger
15070 than this value then the server begins writing the data before it
15071 has received the whole packet from the network, or in the case of
15072 SMBreadbraw, it begins writing to the network before all the data
15073 has been read from disk.</P
15075 >This overlapping works best when the speeds of disk and
15076 network access are similar, having very little effect when the
15077 speed of one is much greater than the other.</P
15079 >The default value is 16384, but very little experimentation
15080 has been done yet to determine the optimal value, and it is likely
15081 that the best value will vary greatly between systems anyway.
15082 A value over 65536 is pointless and will cause you to allocate
15083 memory unnecessarily.</P
15087 >read size = 16384</B
15092 >read size = 8192</B
15097 NAME="REMOTEANNOUNCE"
15099 >remote announce (G)</DT
15102 >This option allows you to setup <A
15106 > to periodically announce itself
15107 to arbitrary IP addresses with an arbitrary workgroup name.</P
15109 >This is useful if you want your Samba server to appear
15110 in a remote workgroup for which the normal browse propagation
15111 rules don't work. The remote workgroup can be anywhere that you
15112 can send IP packets to.</P
15118 >remote announce = 192.168.2.255/SERVERS
15119 192.168.4.255/STAFF</B
15122 >the above line would cause <B
15125 > to announce itself
15126 to the two given IP addresses using the given workgroup names.
15127 If you leave out the workgroup name then the one given in
15137 parameter is used instead.</P
15139 >The IP addresses you choose would normally be the broadcast
15140 addresses of the remote networks, but can also be the IP addresses
15141 of known browse masters if your network config is that stable.</P
15143 >See the documentation file <TT
15154 >remote announce = <empty string>
15160 NAME="REMOTEBROWSESYNC"
15162 >remote browse sync (G)</DT
15165 >This option allows you to setup <A
15169 > to periodically request
15170 synchronization of browse lists with the master browser of a Samba
15171 server that is on a remote segment. This option will allow you to
15172 gain browse lists for multiple workgroups across routed networks. This
15173 is done in a manner that does not work with any non-Samba servers.</P
15175 >This is useful if you want your Samba server and all local
15176 clients to appear in a remote workgroup for which the normal browse
15177 propagation rules don't work. The remote workgroup can be anywhere
15178 that you can send IP packets to.</P
15184 >remote browse sync = 192.168.2.255 192.168.4.255
15188 >the above line would cause <B
15192 the master browser on the specified subnets or addresses to
15193 synchronize their browse lists with the local server.</P
15195 >The IP addresses you choose would normally be the broadcast
15196 addresses of the remote networks, but can also be the IP addresses
15197 of known browse masters if your network config is that stable. If
15198 a machine IP address is given Samba makes NO attempt to validate
15199 that the remote machine is available, is listening, nor that it
15200 is in fact the browse master on its segment.</P
15204 >remote browse sync = <empty string>
15210 NAME="RESTRICTANONYMOUS"
15212 >restrict anonymous (G)</DT
15215 >This is a boolean parameter. If it is <TT
15219 anonymous access to the server will be restricted, namely in the
15220 case where the server is expecting the client to send a username,
15221 but it doesn't. Setting it to <TT
15224 > will force these anonymous
15225 connections to be denied, and the client will be required to always
15226 supply a username and password when connecting. Use of this parameter
15227 is only recommended for homogeneous NT client environments.</P
15229 >This parameter makes the use of macro expansions that rely
15230 on the username (%U, %G, etc) consistent. NT 4.0
15231 likes to use anonymous connections when refreshing the share list,
15232 and this is a way to work around that.</P
15234 >When restrict anonymous is <TT
15237 >, all anonymous connections
15238 are denied no matter what they are for. This can effect the ability
15239 of a machine to access the Samba Primary Domain Controller to revalidate
15240 its machine account after someone else has logged on the client
15241 interactively. The NT client will display a message saying that
15242 the machine's account in the domain doesn't exist or the password is
15243 bad. The best way to deal with this is to reboot NT client machines
15244 between interactive logons, using "Shutdown and Restart", rather
15245 than "Close all programs and logon as a different user".</P
15249 >restrict anonymous = no</B
15260 HREF="#ROOTDIRECTORY"
15264 >root directory"</I
15277 HREF="#ROOTDIRECTORY"
15281 >root directory"</I
15288 NAME="ROOTDIRECTORY"
15290 >root directory (G)</DT
15293 >The server will <B
15297 Change its root directory) to this directory on startup. This is
15298 not strictly necessary for secure operation. Even without it the
15299 server will deny access to files not in one of the service entries.
15300 It may also check for, and deny access to, soft links to other
15301 parts of the filesystem, or attempts to use ".." in file names
15302 to access other directories (depending on the setting of the <A
15319 than "/" adds an extra level of security, but at a price. It
15320 absolutely ensures that no access is given to files not in the
15321 sub-tree specified in the <TT
15329 > some files needed for
15330 complete operation of the server. To maintain full operability
15331 of the server you will need to mirror some system files
15337 > tree. In particular
15338 you will need to mirror <TT
15342 subset of it), and any binaries or configuration files needed for
15343 printing (if required). The set of files that must be mirrored is
15344 operating system dependent.</P
15348 >root directory = /</B
15353 >root directory = /homes/smb</B
15358 NAME="ROOTPOSTEXEC"
15360 >root postexec (S)</DT
15363 >This is the same as the <TT
15369 parameter except that the command is run as root. This
15370 is useful for unmounting filesystems
15371 (such as CDROMs) after a connection is closed.</P
15385 >root postexec = <empty string>
15393 >root preexec (S)</DT
15396 >This is the same as the <TT
15402 parameter except that the command is run as root. This
15403 is useful for mounting filesystems (such as CDROMs) when a
15404 connection is opened.</P
15415 HREF="#PREEXECCLOSE"
15426 >root preexec = <empty string>
15432 NAME="ROOTPREEXECCLOSE"
15434 >root preexec close (S)</DT
15437 >This is the same as the <TT
15443 > parameter except that the command is run as root.</P
15454 HREF="#PREEXECCLOSE"
15465 >root preexec close = no</B
15475 >This option affects how clients respond to
15476 Samba and is one of the most important settings in the <TT
15481 >The option sets the "security mode bit" in replies to
15482 protocol negotiations with <A
15487 > to turn share level security on or off. Clients decide
15488 based on this bit whether (and how) to transfer user and password
15489 information to the server.</P
15493 >security = user</B
15495 the most common setting needed when talking to Windows 98 and
15498 >The alternatives are <B
15500 >security = share</B
15504 >security = server</B
15511 >In versions of Samba prior to 2.0.0, the default was
15514 >security = share</B
15515 > mainly because that was
15516 the only option at one stage.</P
15518 >There is a bug in WfWg that has relevance to this
15519 setting. When in user or server level security a WfWg client
15520 will totally ignore the password you type in the "connect
15521 drive" dialog box. This makes it very difficult (if not impossible)
15522 to connect to a Samba service as anyone except the user that
15523 you are logged into WfWg as.</P
15525 >If your PCs use usernames that are the same as their
15526 usernames on the UNIX machine then you will want to use
15529 >security = user</B
15530 >. If you mostly use usernames
15531 that don't exist on the UNIX box then use <B
15537 >You should also use <B
15539 >security = share</B
15541 want to mainly setup shares without a password (guest shares). This
15542 is commonly used for a shared printer server. It is more difficult
15543 to setup guest shares with <B
15545 >security = user</B
15556 >parameter for details.</P
15558 >It is possible to use <B
15563 > where it is offers both user and share
15564 level security under different <A
15565 HREF="#NETBIOSALIASES"
15569 >NetBIOS aliases</I
15574 >The different settings will now be explained.</P
15577 NAME="SECURITYEQUALSSHARE"
15584 >When clients connect to a share level security server they
15585 need not log onto the server with a valid username and password before
15586 attempting to connect to a shared resource (although modern clients
15587 such as Windows 95/98 and Windows NT will send a logon request with
15588 a username but no password when talking to a <B
15592 > server). Instead, the clients send authentication information
15593 (passwords) on a per-share basis, at the time they attempt to connect
15602 uses a valid UNIX user to act on behalf of the client, even in
15605 >security = share</B
15606 > level security.</P
15608 >As clients are not required to send a username to the server
15609 in share level security, <B
15613 techniques to determine the correct UNIX user to use on behalf
15616 >A list of possible UNIX usernames to match with the given
15617 client password is constructed using the following methods :</P
15632 > parameter is set, then all the other
15633 stages are missed and only the <A
15634 HREF="#GUESTACCOUNT"
15641 > username is checked.
15646 >Is a username is sent with the share connection
15647 request, then this username (after mapping - see <A
15648 HREF="#USERNAMEMAP"
15656 is added as a potential username.</P
15660 >If the client did a previous <EM
15663 > request (the SessionSetup SMB call) then the
15664 username sent in this SMB will be added as a potential username.
15669 >The name of the service the client requested is
15670 added as a potential username.</P
15674 >The NetBIOS name of the client is added to
15675 the list as a potential username.</P
15679 >Any users on the <A
15687 > list are added as potential usernames.
15698 not set, then this list is then tried with the supplied password.
15699 The first user for whom the password matches will be used as the
15708 set, or no username can be determined then if the share is marked
15709 as available to the <TT
15715 guest user will be used, otherwise access is denied.</P
15717 >Note that it can be <EM
15720 in share-level security as to which UNIX username will eventually
15721 be used in granting access.</P
15723 >See also the section <A
15725 > NOTE ABOUT USERNAME/PASSWORD VALIDATION</A
15729 NAME="SECURITYEQUALSUSER"
15736 >This is the default security setting in Samba 2.2.
15737 With user-level security a client must first "log-on" with a
15738 valid username and password (which can be mapped using the <A
15739 HREF="#USERNAMEMAP"
15747 parameter). Encrypted passwords (see the <A
15748 HREF="#ENCRYPTPASSWORDS"
15752 >encrypted passwords</I
15755 > parameter) can also
15756 be used in this security mode. Parameters such as <A
15772 > if set are then applied and
15773 may change the UNIX user to use on this connection, but only after
15774 the user has been successfully authenticated.</P
15778 > that the name of the resource being
15781 > sent to the server until after
15782 the server has successfully authenticated the client. This is why
15783 guest shares don't work in user level security without allowing
15784 the server to automatically map unknown users into the <A
15785 HREF="#GUESTACCOUNT"
15802 > parameter for details on doing this.</P
15804 >See also the section <A
15806 > NOTE ABOUT USERNAME/PASSWORD VALIDATION</A
15810 NAME="SECURITYEQUALSSERVER"
15817 >In this mode Samba will try to validate the username/password
15818 by passing it to another SMB server, such as an NT box. If this
15819 fails it will revert to <B
15821 >security = user</B
15823 that if encrypted passwords have been negotiated then Samba cannot
15824 revert back to checking the UNIX password file, it must have a valid
15828 > file to check users against. See the
15829 documentation file in the <TT
15835 >ENCRYPTION.txt</TT
15836 > for details on how to set this
15841 > that from the client's point of
15844 >security = server</B
15845 > is the same as <B
15847 > security = user</B
15848 >. It only affects how the server deals
15849 with the authentication, it does not in any way affect what the
15854 > that the name of the resource being
15857 > sent to the server until after
15858 the server has successfully authenticated the client. This is why
15859 guest shares don't work in user level security without allowing
15860 the server to automatically map unknown users into the <A
15861 HREF="#GUESTACCOUNT"
15878 > parameter for details on doing this.</P
15880 >See also the section <A
15882 > NOTE ABOUT USERNAME/PASSWORD VALIDATION</A
15886 HREF="#PASSWORDSERVER"
15894 > parameter and the <A
15895 HREF="#ENCRYPTPASSWORDS"
15899 >encrypted passwords</I
15906 NAME="SECURITYEQUALSDOMAIN"
15913 >This mode will only work correctly if <A
15914 HREF="smbpasswd.8.html"
15917 > has been used to add this
15918 machine into a Windows NT Domain. It expects the <A
15919 HREF="#ENCRYPTPASSWORDS"
15923 >encrypted passwords</I
15927 > parameter to be set to <TT
15931 mode Samba will try to validate the username/password by passing
15932 it to a Windows NT Primary or Backup Domain Controller, in exactly
15933 the same way that a Windows NT Server would do.</P
15937 > that a valid UNIX user must still
15938 exist as well as the account on the Domain Controller to allow
15939 Samba to have a valid UNIX account to map file access to.</P
15943 > that from the client's point
15946 >security = domain</B
15947 > is the same as <B
15951 >. It only affects how the server deals with the authentication,
15952 it does not in any way affect what the client sees.</P
15956 > that the name of the resource being
15959 > sent to the server until after
15960 the server has successfully authenticated the client. This is why
15961 guest shares don't work in user level security without allowing
15962 the server to automatically map unknown users into the <A
15963 HREF="#GUESTACCOUNT"
15980 > parameter for details on doing this.</P
15984 > There is currently a bug in the
15985 implementation of <B
15987 >security = domain</B
15989 to multi-byte character set usernames. The communication with a
15990 Domain Controller must be done in UNICODE and Samba currently
15991 does not widen multi-byte user names to UNICODE correctly, thus
15992 a multi-byte username will not be recognized correctly at the
15993 Domain Controller. This issue will be addressed in a future release.</P
15995 >See also the section <A
15997 > NOTE ABOUT USERNAME/PASSWORD VALIDATION</A
16001 HREF="#PASSWORDSERVER"
16009 > parameter and the <A
16010 HREF="#ENCRYPTPASSWORDS"
16014 >encrypted passwords</I
16022 >security = USER</B
16027 >security = DOMAIN</B
16032 NAME="SECURITYMASK"
16034 >security mask (S)</DT
16037 >This parameter controls what UNIX permission
16038 bits can be modified when a Windows NT client is manipulating
16039 the UNIX permission on a file using the native NT security
16042 >This parameter is applied as a mask (AND'ed with) to
16043 the changed permission bits, thus preventing any bits not in
16044 this mask from being modified. Essentially, zero bits in this
16045 mask may be treated as a set of bits the user is not allowed
16048 >If not set explicitly this parameter is 0777, allowing
16049 a user to modify all the user/group/world permissions on a file.
16054 > that users who can access the
16055 Samba server through other means can easily bypass this
16056 restriction, so it is primarily useful for standalone
16057 "appliance" systems. Administrators of most normal systems will
16058 probably want to leave it set to <TT
16064 HREF="#FORCEDIRECTORYSECURITYMODE"
16068 >force directory security mode</I
16073 HREF="#DIRECTORYSECURITYMASK"
16082 HREF="#FORCESECURITYMODE"
16086 >force security mode</I
16093 >security mask = 0777</B
16098 >security mask = 0770</B
16103 NAME="SERVERSTRING"
16105 >server string (G)</DT
16108 >This controls what string will show up in the
16109 printer comment box in print manager and next to the IPC connection
16113 >. It can be any string that you wish
16114 to show to your users.</P
16116 >It also sets what will appear in browse lists next
16117 to the machine name.</P
16124 > will be replaced with the Samba
16132 > will be replaced with the
16137 >server string = Samba %v</B
16142 >server string = University of GNUs Samba
16148 NAME="SETDIRECTORY"
16150 >set directory (S)</DT
16155 >set directory = no</B
16157 users of the service may not use the setdir command to change
16163 > command is only implemented
16164 in the Digital Pathworks client. See the Pathworks documentation
16169 >set directory = no</B
16176 >share modes (S)</DT
16179 >This enables or disables the honoring of
16185 > during a file open. These
16186 modes are used by clients to gain exclusive read or write access
16189 >These open modes are not directly supported by UNIX, so
16190 they are simulated using shared memory, or lock files if your
16191 UNIX doesn't support shared memory (almost all do).</P
16193 >The share modes that are enabled by this option are
16217 >This option gives full share compatibility and enabled
16222 > turn this parameter
16223 off as many Windows applications will break if you do so.</P
16227 >share modes = yes</B
16232 NAME="SHORTPRESERVECASE"
16234 >short preserve case (S)</DT
16237 >This boolean parameter controls if new files
16238 which conform to 8.3 syntax, that is all in upper case and of
16239 suitable length, are created upper case, or if they are forced
16241 HREF="#DEFAULTCASE"
16249 >. This option can be use with <A
16250 HREF="#PRESERVECASE"
16253 >preserve case = yes</B
16256 > to permit long filenames to retain their case, while short
16257 names are lowered. </P
16259 >See the section on <A
16266 >short preserve case = yes</B
16271 NAME="SHOWADDPRINTERWIZARD"
16273 >show add printer wizard (G)</DT
16276 >With the introduction of MS-RPC based printing support
16277 for Windows NT/2000 client in Samba 2.2, a "Printers..." folder will
16278 appear on Samba hosts in the share listing. Normally this folder will
16279 contain an icon for the MS Add Printer Wizard (APW). However, it is
16280 possible to disable this feature regardless of the level of privilege
16281 of the connected user.</P
16283 >Under normal circumstances, the Windows NT/2000 client will
16284 open a handle on the printer server with OpenPrinterEx() asking for
16285 Administrator privileges. If the user does not have administrative
16286 access on the print server (i.e is not root or a member of the
16292 > group), the OpenPrinterEx()
16293 call fails and the client makes another open call with a request for
16294 a lower privilege level. This should succeed, however the APW
16295 icon will not be displayed.</P
16300 >show add printer wizard</I
16303 parameter will always cause the OpenPrinterEx() on the server
16304 to fail. Thus the APW icon will never be displayed. <EM
16306 >This does not prevent the same user from having
16307 administrative privilege on an individual printer.</P
16310 HREF="#ADDPRINTERCOMMAND"
16319 HREF="#DELETEPRINTERCOMMAND"
16323 >deleteprinter command</I
16327 HREF="#PRINTERADMIN"
16338 >show add printer wizard = yes</B
16343 NAME="SHUTDOWNSCRIPT"
16345 >shutdown script (G)</DT
16349 >This parameter only exists in the HEAD cvs branch</EM
16351 This a full path name to a script called by
16360 should start a shutdown procedure.</P
16362 >This command will be run as the user connected to the
16365 >%m %t %r %f parameters are expanded</P
16372 > will be substituted with the
16373 shutdown message sent to the server.</P
16380 > will be substituted with the
16381 number of seconds to wait before effectively starting the
16382 shutdown procedure.</P
16389 > will be substituted with the
16392 >. It means reboot after shutdown
16401 > will be substituted with the
16404 >. It means force the shutdown
16405 even if applications do not respond for NT.</P
16413 >abort shutdown script = /usr/local/samba/sbin/shutdown %m %t %r %f</B
16416 >Shutdown script example:
16424 CLASS="PROGRAMLISTING"
16431 /sbin/shutdown $3 $4 +$time $1 &
16437 Shutdown does not return so we need to launch it in background.
16441 HREF="#ABORTSHUTDOWNSCRIPT"
16445 >abort shutdown script</I
16452 NAME="SMBPASSWDFILE"
16454 >smb passwd file (G)</DT
16457 >This option sets the path to the encrypted
16458 smbpasswd file. By default the path to the smbpasswd file
16459 is compiled into Samba.</P
16463 >smb passwd file = ${prefix}/private/smbpasswd
16469 >smb passwd file = /etc/samba/smbpasswd
16475 NAME="SOCKETADDRESS"
16477 >socket address (G)</DT
16480 >This option allows you to control what
16481 address Samba will listen for connections on. This is used to
16482 support multiple virtual interfaces on the one server, each
16483 with a different configuration.</P
16485 >By default Samba will accept connections on any
16490 >socket address = 192.168.2.20</B
16496 NAME="SOCKETOPTIONS"
16498 >socket options (G)</DT
16501 >This option allows you to set socket options
16502 to be used when talking with the client.</P
16504 >Socket options are controls on the networking layer
16505 of the operating systems which allow the connection to be
16508 >This option will typically be used to tune your Samba
16509 server for optimal performance for your local network. There is
16510 no way that Samba can know what the optimal parameters are for
16511 your net, so you must experiment and choose them yourself. We
16512 strongly suggest you read the appropriate documentation for your
16513 operating system first (perhaps <B
16519 >You may find that on some systems Samba will say
16520 "Unknown socket option" when you supply an option. This means you
16521 either incorrectly typed it or you need to add an include file
16522 to includes.h for your OS. If the latter is the case please
16523 send the patch to <A
16524 HREF="mailto:samba@samba.org"
16526 > samba@samba.org</A
16529 >Any of the supported socket options may be combined
16530 in any way you like, as long as your OS allows it.</P
16532 >This is the list of socket options currently settable
16533 using this option:</P
16559 >IPTOS_THROUGHPUT</P
16579 >Those marked with a <EM
16582 argument. The others can optionally take a 1 or 0 argument to enable
16583 or disable the option, by default they will be enabled if you
16584 don't specify 1 or 0.</P
16586 >To specify an argument use the syntax SOME_OPTION = VALUE
16589 >SO_SNDBUF = 8192</B
16590 >. Note that you must
16591 not have any spaces before or after the = sign.</P
16593 >If you are on a local network then a sensible option
16598 >socket options = IPTOS_LOWDELAY</B
16601 >If you have a local network then you could try:</P
16605 >socket options = IPTOS_LOWDELAY TCP_NODELAY</B
16608 >If you are on a wide area network then perhaps try
16609 setting IPTOS_THROUGHPUT. </P
16611 >Note that several of the options may cause your Samba
16612 server to fail completely. Use these options with caution!</P
16616 >socket options = TCP_NODELAY</B
16621 >socket options = IPTOS_LOWDELAY</B
16626 NAME="SOURCEENVIRONMENT"
16628 >source environment (G)</DT
16631 >This parameter causes Samba to set environment
16632 variables as per the content of the file named.</P
16634 >If the value of this parameter starts with a "|" character
16635 then Samba will treat that value as a pipe command to open and
16636 will set the environment variables from the output of the pipe.</P
16638 >The contents of the file or the output of the pipe should
16639 be formatted as the output of the standard Unix <B
16643 > command. This is of the form :</P
16645 >Example environment entry:</P
16649 >SAMBA_NETBIOS_NAME = myhostname</B
16653 >No default value</EM
16658 >source environment = |/etc/smb.conf.sh
16664 >source environment =
16665 /usr/local/smb_env_vars</B
16675 >This variable is part of SSL-enabled Samba. This
16676 is only available if the SSL libraries have been compiled on your
16677 system and the configure option <B
16681 given at configure time.</P
16683 >This variable enables or disables the entire SSL mode. If
16687 >, the SSL-enabled Samba behaves
16688 exactly like the non-SSL Samba. If set to <TT
16692 it depends on the variables <A
16701 HREF="#SSLHOSTSRESIGN"
16705 >ssl hosts resign</I
16709 connection will be required.</P
16718 NAME="SSLCACERTDIR"
16720 >ssl CA certDir (G)</DT
16723 >This variable is part of SSL-enabled Samba. This
16724 is only available if the SSL libraries have been compiled on your
16725 system and the configure option <B
16729 given at configure time.</P
16731 >This variable defines where to look up the Certification
16732 Authorities. The given directory should contain one file for
16733 each CA that Samba will trust. The file name must be the hash
16734 value over the "Distinguished Name" of the CA. How this directory
16735 is set up is explained later in this document. All files within the
16736 directory that don't fit into this naming scheme are ignored. You
16737 don't need this variable if you don't verify client certificates.</P
16741 >ssl CA certDir = /usr/local/ssl/certs
16747 NAME="SSLCACERTFILE"
16749 >ssl CA certFile (G)</DT
16752 >This variable is part of SSL-enabled Samba. This
16753 is only available if the SSL libraries have been compiled on your
16754 system and the configure option <B
16758 given at configure time.</P
16760 >This variable is a second way to define the trusted CAs.
16761 The certificates of the trusted CAs are collected in one big
16762 file and this variable points to the file. You will probably
16763 only use one of the two ways to define your CAs. The first choice is
16764 preferable if you have many CAs or want to be flexible, the second
16765 is preferable if you only have one CA and want to keep things
16766 simple (you won't need to create the hashed file names). You
16767 don't need this variable if you don't verify client certificates.</P
16771 >ssl CA certFile = /usr/local/ssl/certs/trustedCAs.pem
16779 >ssl ciphers (G)</DT
16782 >This variable is part of SSL-enabled Samba. This
16783 is only available if the SSL libraries have been compiled on your
16784 system and the configure option <B
16788 given at configure time.</P
16790 >This variable defines the ciphers that should be offered
16791 during SSL negotiation. You should not set this variable unless
16792 you know what you are doing.</P
16796 NAME="SSLCLIENTCERT"
16798 >ssl client cert (G)</DT
16801 >This variable is part of SSL-enabled Samba. This
16802 is only available if the SSL libraries have been compiled on your
16803 system and the configure option <B
16807 given at configure time.</P
16809 >The certificate in this file is used by <A
16810 HREF="smbclient.1.html"
16816 > if it exists. It's needed
16817 if the server requires a client certificate.</P
16821 >ssl client cert = /usr/local/ssl/certs/smbclient.pem
16827 NAME="SSLCLIENTKEY"
16829 >ssl client key (G)</DT
16832 >This variable is part of SSL-enabled Samba. This
16833 is only available if the SSL libraries have been compiled on your
16834 system and the configure option <B
16838 given at configure time.</P
16840 >This is the private key for <A
16841 HREF="smbclient.1.html"
16847 >. It's only needed if the
16848 client should have a certificate. </P
16852 >ssl client key = /usr/local/ssl/private/smbclient.pem
16858 NAME="SSLCOMPATIBILITY"
16860 >ssl compatibility (G)</DT
16863 >This variable is part of SSL-enabled Samba. This
16864 is only available if the SSL libraries have been compiled on your
16865 system and the configure option <B
16869 given at configure time.</P
16871 >This variable defines whether OpenSSL should be configured
16872 for bug compatibility with other SSL implementations. This is
16873 probably not desirable because currently no clients with SSL
16874 implementations other than OpenSSL exist.</P
16878 >ssl compatibility = no</B
16883 NAME="SSLEGDSOCKET"
16885 >ssl egd socket (G)</DT
16888 >This variable is part of SSL-enabled Samba. This
16889 is only available if the SSL libraries have been compiled on your
16890 system and the configure option <B
16894 given at configure time.</P
16896 > This option is used to define the location of the communiation socket of
16897 an EGD or PRNGD daemon, from which entropy can be retrieved. This option
16898 can be used instead of or together with the <A
16899 HREF="#SSLENTROPYFILE"
16903 >ssl entropy file</I
16907 directive. 255 bytes of entropy will be retrieved from the daemon.
16916 NAME="SSLENTROPYBYTES"
16918 >ssl entropy bytes (G)</DT
16921 >This variable is part of SSL-enabled Samba. This
16922 is only available if the SSL libraries have been compiled on your
16923 system and the configure option <B
16927 given at configure time.</P
16929 > This parameter is used to define the number of bytes which should
16930 be read from the <A
16931 HREF="#SSLENTROPYFILE"
16939 > If a -1 is specified, the entire file will
16945 >ssl entropy bytes = 255</B
16950 NAME="SSLENTROPYFILE"
16952 >ssl entropy file (G)</DT
16955 >This variable is part of SSL-enabled Samba. This
16956 is only available if the SSL libraries have been compiled on your
16957 system and the configure option <B
16961 given at configure time.</P
16963 > This parameter is used to specify a file from which processes will
16964 read "random bytes" on startup. In order to seed the internal pseudo
16965 random number generator, entropy must be provided. On system with a
16969 > device file, the processes
16970 will retrieve its entropy from the kernel. On systems without kernel
16971 entropy support, a file can be supplied that will be read on startup
16972 and that will be used to seed the PRNG.
16987 HREF="#SSLHOSTSRESIGN"
16991 > ssl hosts resign</I
16998 NAME="SSLHOSTSRESIGN"
17000 >ssl hosts resign (G)</DT
17003 >This variable is part of SSL-enabled Samba. This
17004 is only available if the SSL libraries have been compiled on your
17005 system and the configure option <B
17009 given at configure time.</P
17011 >These two variables define whether Samba will go
17012 into SSL mode or not. If none of them is defined, Samba will
17013 allow only SSL connections. If the <A
17022 hosts (by IP-address, IP-address range, net group or name),
17023 only these hosts will be forced into SSL mode. If the <TT
17026 > ssl hosts resign</I
17028 > variable lists hosts, only these
17031 > be forced into SSL mode. The syntax for these two
17032 variables is the same as for the <A
17048 > pair of variables, only
17049 that the subject of the decision is different: It's not the access
17050 right but whether SSL is used or not. </P
17052 >The example below requires SSL connections from all hosts
17053 outside the local net (which is 192.168.*.*).</P
17057 >ssl hosts = <empty string></B
17062 >ssl hosts resign = <empty string></B
17067 >ssl hosts resign = 192.168.</B
17072 NAME="SSLREQUIRECLIENTCERT"
17074 >ssl require clientcert (G)</DT
17077 >This variable is part of SSL-enabled Samba. This
17078 is only available if the SSL libraries have been compiled on your
17079 system and the configure option <B
17083 given at configure time.</P
17085 >If this variable is set to <TT
17089 server will not tolerate connections from clients that don't
17090 have a valid certificate. The directory/file given in <A
17091 HREF="#SSLCACERTDIR"
17100 HREF="#SSLCACERTFILE"
17108 > will be used to look up the CAs that issued
17109 the client's certificate. If the certificate can't be verified
17110 positively, the connection will be terminated. If this variable
17114 >, clients don't need certificates.
17115 Contrary to web applications you really <EM
17118 require client certificates. In the web environment the client's
17119 data is sensitive (credit card numbers) and the server must prove
17120 to be trustworthy. In a file server environment the server's data
17121 will be sensitive and the clients must prove to be trustworthy.</P
17125 >ssl require clientcert = no</B
17130 NAME="SSLREQUIRESERVERCERT"
17132 >ssl require servercert (G)</DT
17135 >This variable is part of SSL-enabled Samba. This
17136 is only available if the SSL libraries have been compiled on your
17137 system and the configure option <B
17141 given at configure time.</P
17143 >If this variable is set to <TT
17148 HREF="smbclient.1.html"
17155 > will request a certificate from the server. Same as
17157 HREF="#SSLREQUIRECLIENTCERT"
17165 > for the server.</P
17169 >ssl require servercert = no</B
17175 NAME="SSLSERVERCERT"
17177 >ssl server cert (G)</DT
17180 >This variable is part of SSL-enabled Samba. This
17181 is only available if the SSL libraries have been compiled on your
17182 system and the configure option <B
17186 given at configure time.</P
17188 >This is the file containing the server's certificate.
17191 > have a certificate. The
17192 file may also contain the server's private key. See later for
17193 how certificates and private keys are created.</P
17197 >ssl server cert = <empty string>
17203 NAME="SSLSERVERKEY"
17205 >ssl server key (G)</DT
17208 >This variable is part of SSL-enabled Samba. This
17209 is only available if the SSL libraries have been compiled on your
17210 system and the configure option <B
17214 given at configure time.</P
17216 >This file contains the private key of the server. If
17217 this variable is not defined, the key is looked up in the
17218 certificate file (it may be appended to the certificate).
17221 > have a private key
17222 and the certificate <EM
17225 match this private key.</P
17229 >ssl server key = <empty string>
17237 >ssl version (G)</DT
17240 >This variable is part of SSL-enabled Samba. This
17241 is only available if the SSL libraries have been compiled on your
17242 system and the configure option <B
17246 given at configure time.</P
17248 >This enumeration variable defines the versions of the
17249 SSL protocol that will be used. <TT
17253 dynamic negotiation of SSL v2 or v3, <TT
17260 > results in SSL v3 and
17264 > results in TLS v1. TLS (Transport Layer
17265 Security) is the new standard for SSL.</P
17269 >ssl version = "ssl2or3"</B
17276 >stat cache (G)</DT
17279 >This parameter determines if <A
17283 > will use a cache in order to
17284 speed up case insensitive name mappings. You should never need
17285 to change this parameter.</P
17289 >stat cache = yes</B
17294 NAME="STATCACHESIZE"
17296 >stat cache size (G)</DT
17299 >This parameter determines the number of
17306 never need to change this parameter.</P
17310 >stat cache size = 50</B
17320 >This enables or disables logging of connections
17321 to a status file that <A
17322 HREF="smbstatus.1.html"
17328 >With this disabled <B
17332 to tell you what connections are active. You should never need to
17333 change this parameter.</P
17342 NAME="STRICTALLOCATE"
17344 >strict allocate (S)</DT
17347 >This is a boolean that controls the handling of
17348 disk space allocation in the server. When this is set to <TT
17352 the server will change from UNIX behaviour of not committing real
17353 disk storage blocks when a file is extended to the Windows behaviour
17354 of actually forcing the disk system to allocate real storage blocks
17355 when a file is created or extended to be a given size. In UNIX
17356 terminology this means that Samba will stop creating sparse files.
17357 This can be slow on some systems.</P
17359 >When strict allocate is <TT
17362 > the server does sparse
17363 disk block allocation when a file is extended.</P
17365 >Setting this to <TT
17368 > can help Samba return
17369 out of quota messages on systems that are restricting the disk quota
17374 >strict allocate = no</B
17379 NAME="STRICTLOCKING"
17381 >strict locking (S)</DT
17384 >This is a boolean that controls the handling of
17385 file locking in the server. When this is set to <TT
17389 the server will check every read and write access for file locks, and
17390 deny access if locks exist. This can be slow on some systems.</P
17392 >When strict locking is <TT
17395 > the server does file
17396 lock checks only when the client explicitly asks for them.</P
17398 >Well-behaved clients always ask for lock checks when it
17399 is important, so in the vast majority of cases <B
17403 > is preferable.</P
17407 >strict locking = no</B
17414 >strict sync (S)</DT
17417 >Many Windows applications (including the Windows
17418 98 explorer shell) seem to confuse flushing buffer contents to
17419 disk with doing a sync to disk. Under UNIX, a sync call forces
17420 the process to be suspended until the kernel has ensured that
17421 all outstanding data in kernel disk buffers has been safely stored
17422 onto stable storage. This is very slow and should only be done
17423 rarely. Setting this parameter to <TT
17427 default) means that <A
17431 > ignores the Windows applications requests for
17432 a sync call. There is only a possibility of losing data if the
17433 operating system itself that Samba is running on crashes, so there is
17434 little danger in this default setting. In addition, this fixes many
17435 performance problems that people have reported with the new Windows98
17436 explorer shell file copies.</P
17451 >strict sync = no</B
17461 >This is a boolean that controls whether to
17462 strip trailing dots off UNIX filenames. This helps with some
17463 CDROMs that have filenames ending in a single dot.</P
17474 >sync always (S)</DT
17477 >This is a boolean parameter that controls
17478 whether writes will always be written to stable storage before
17479 the write call returns. If this is <TT
17482 > then the server will be
17483 guided by the client's request in each write call (clients can
17484 set a bit indicating that a particular write should be synchronous).
17488 > then every write will be followed by a <B
17492 > call to ensure the data is written to disk. Note that
17498 > parameter must be set to
17502 > in order for this parameter to have
17518 >sync always = no</B
17528 >This parameter maps how Samba debug messages
17529 are logged onto the system syslog logging levels. Samba debug
17530 level zero maps onto syslog <TT
17534 level one maps onto <TT
17541 >, debug level three
17542 maps onto LOG_INFO. All higher levels are mapped to <TT
17547 >This parameter sets the threshold for sending messages
17548 to syslog. Only messages with debug level less than this value
17549 will be sent to syslog.</P
17560 >syslog only (G)</DT
17563 >If this parameter is set then Samba debug
17564 messages are logged into the system syslog only, and not to
17565 the debug log files.</P
17569 >syslog only = no</B
17574 NAME="TEMPLATEHOMEDIR"
17576 >template homedir (G)</DT
17579 >When filling out the user information for a Windows NT
17581 HREF="winbindd.8.html"
17585 uses this parameter to fill in the home directory for that user.
17591 > is present it is substituted
17592 with the user's Windows NT domain name. If the string <TT
17598 > is present it is substituted with the user's Windows
17603 >template homedir = /home/%D/%U</B
17608 NAME="TEMPLATESHELL"
17610 >template shell (G)</DT
17613 >When filling out the user information for a Windows NT
17615 HREF="winbindd.8.html"
17619 uses this parameter to fill in the login shell for that user.</P
17623 >template shell = /bin/false</B
17630 >time offset (G)</DT
17633 >This parameter is a setting in minutes to add
17634 to the normal GMT to local time conversion. This is useful if
17635 you are serving a lot of PCs that have incorrect daylight
17636 saving time handling.</P
17640 >time offset = 0</B
17645 >time offset = 60</B
17652 >time server (G)</DT
17655 >This parameter determines if <A
17660 > advertises itself as a time server to Windows
17665 >time server = no</B
17670 NAME="TIMESTAMPLOGS"
17672 >timestamp logs (G)</DT
17676 HREF="#DEBUGTIMESTAMP"
17680 > debug timestamp</I
17687 NAME="TOTALPRINTJOBS"
17689 >total print jobs (G)</DT
17692 >This parameter accepts an integer value which defines
17693 a limit on the maximum number of print jobs that will be accepted
17694 system wide at any given time. If a print job is submitted
17695 by a client which will exceed this number, then <A
17700 error indicating that no space is available on the server. The
17701 default value of 0 means that no such limit exists. This parameter
17702 can be used to prevent a server from exceeding its capacity and is
17703 designed as a printing throttle. See also
17705 HREF="#MAXPRINTJOBS"
17717 >total print jobs = 0</B
17722 >total print jobs = 5000</B
17727 NAME="UNIXEXTENSIONS"
17729 >unix extensions(G)</DT
17732 >This boolean parameter controls whether Samba
17733 implments the CIFS UNIX extensions, as defined by HP. These
17734 extensions enable CIFS to server UNIX clients to UNIX servers
17735 better, and allow such things as symbolic links, hard links etc.
17736 These extensions require a similarly enabled client, and are of
17737 no current use to Windows clients.</P
17741 >unix extensions = no</B
17746 NAME="UNIXPASSWORDSYNC"
17748 >unix password sync (G)</DT
17751 >This boolean parameter controls whether Samba
17752 attempts to synchronize the UNIX password with the SMB password
17753 when the encrypted SMB password in the smbpasswd file is changed.
17754 If this is set to <TT
17757 > the program specified in the <TT
17763 >parameter is called <EM
17766 to allow the new UNIX password to be set without access to the
17767 old UNIX password (as the SMB password change code has no
17768 access to the old password cleartext, only the new).</P
17771 HREF="#PASSWDPROGRAM"
17791 >unix password sync = no</B
17796 NAME="UPDATEENCRYPTED"
17798 >update encrypted (G)</DT
17801 >This boolean parameter allows a user logging
17802 on with a plaintext password to have their encrypted (hashed)
17803 password in the smbpasswd file to be updated automatically as
17804 they log on. This option allows a site to migrate from plaintext
17805 password authentication (users authenticate with plaintext
17806 password over the wire, and are checked against a UNIX account
17807 database) to encrypted password authentication (the SMB
17808 challenge/response authentication mechanism) without forcing
17809 all users to re-enter their passwords via smbpasswd at the time the
17810 change is made. This is a convenience option to allow the change over
17811 to encrypted passwords to be made over a longer period. Once all users
17812 have encrypted representations of their passwords in the smbpasswd
17813 file this parameter should be set to <TT
17818 >In order for this parameter to work correctly the <A
17819 HREF="#ENCRYPTPASSWORDS"
17823 >encrypt passwords</I
17827 > parameter must be set to <TT
17831 this parameter is set to <TT
17836 >Note that even when this parameter is set a user
17837 authenticating to <B
17840 > must still enter a valid
17841 password in order to connect correctly, and to update their hashed
17842 (smbpasswd) passwords.</P
17846 >update encrypted = no</B
17851 NAME="USECLIENTDRIVER"
17853 >use client driver (S)</DT
17856 >This parameter applies only to Windows NT/2000
17857 clients. It has no affect on Windows 95/98/ME clients. When
17858 serving a printer to Windows NT/2000 clients without first installing
17859 a valid printer driver on the Samba host, the client will be required
17860 to install a local printer driver. From this point on, the client
17861 will treat the print as a local printer and not a network printer
17862 connection. This is much the same behavior that will occur
17865 >disable spoolss = yes</B
17868 >The differentiating
17869 factor is that under normal circumstances, the NT/2000 client will
17870 attempt to open the network printer using MS-RPC. The problem is that
17871 because the client considers the printer to be local, it will attempt
17872 to issue the OpenPrinterEx() call requesting access rights associated
17873 with the logged on user. If the user possesses local administator rights
17874 but not root privilegde on the Samba host (often the case), the OpenPrinterEx()
17875 call will fail. The result is that the client will now display an "Access
17876 Denied; Unable to connect" message in the printer queue window (even though
17877 jobs may successfully be printed). </P
17879 >If this parameter is enabled for a printer, then any attempt
17880 to open the printer with the PRINTER_ACCESS_ADMINISTER right is mapped
17881 to PRINTER_ACCESS_USE instead. Thus allowing the OpenPrinterEx()
17882 call to succeed. <EM
17883 >This parameter MUST not be able enabled
17884 on a print share which has valid print driver installed on the Samba
17889 HREF="#DISABLESPOOLSS"
17890 >disable spoolss</A
17896 >use client driver = no</B
17906 >This global parameter determines if the tdb internals of Samba can
17907 depend on mmap working correctly on the running system. Samba requires a coherent
17908 mmap/read-write system memory cache. Currently only HPUX does not have such a
17909 coherent cache, and so this parameter is set to <TT
17913 default on HPUX. On all other systems this parameter should be left alone. This
17914 parameter is provided to help the Samba developers track down problems with
17915 the tdb internal code.
17927 >use rhosts (G)</DT
17930 >If this global parameter is <TT
17934 that the UNIX user's <TT
17937 > file in their home directory
17938 will be read to find the names of hosts and users who will be allowed
17939 access without specifying a password.</P
17949 > can be a major security hole. This is because you are
17950 trusting the PC to supply the correct username. It is very easy to
17951 get a PC to supply a false username. I recommend that the <TT
17956 > option be only used if you really know what
17961 >use rhosts = no</B
18005 >Multiple users may be specified in a comma-delimited
18006 list, in which case the supplied password will be tested against
18007 each username in turn (left to right).</P
18014 > line is needed only when
18015 the PC is unable to supply its own username. This is the case
18016 for the COREPLUS protocol or where your users have different WfWg
18017 usernames to UNIX usernames. In both these cases you may also be
18018 better using the \\server\share%user syntax instead.</P
18025 > line is not a great
18026 solution in many cases as it means Samba will try to validate
18027 the supplied password against each of the usernames in the
18033 > line in turn. This is slow and
18034 a bad idea for lots of users in case of duplicate passwords.
18035 You may get timeouts or security breaches using this parameter
18038 >Samba relies on the underlying UNIX security. This
18039 parameter does not restrict who can login, it just offers hints
18040 to the Samba server as to what usernames might correspond to the
18041 supplied password. Users can login as whoever they please and
18042 they will be able to do no more damage than if they started a
18043 telnet session. The daemon runs as the user that they log in as,
18044 so they cannot do anything that user cannot do.</P
18046 >To restrict a service to a particular set of users you
18058 >If any of the usernames begin with a '@' then the name
18059 will be looked up first in the NIS netgroups list (if Samba
18060 is compiled with netgroup support), followed by a lookup in
18061 the UNIX groups database and will expand to a list of all users
18062 in the group of that name.</P
18064 >If any of the usernames begin with a '+' then the name
18065 will be looked up only in the UNIX groups database and will
18066 expand to a list of all users in the group of that name.</P
18068 >If any of the usernames begin with a '&'then the name
18069 will be looked up only in the NIS netgroups database (if Samba
18070 is compiled with netgroup support) and will expand to a list
18071 of all users in the netgroup group of that name.</P
18073 >Note that searching though a groups database can take
18074 quite some time, and some clients may time out during the
18077 >See the section <A
18080 USERNAME/PASSWORD VALIDATION</A
18081 > for more information on how
18082 this parameter determines access to the services.</P
18086 >The guest account if a guest service,
18087 else <empty string>.</B
18092 >username = fred, mary, jack, jane,
18093 @users, @pcgroup</B
18098 NAME="USERNAMELEVEL"
18100 >username level (G)</DT
18103 >This option helps Samba to try and 'guess' at
18104 the real UNIX username, as many DOS clients send an all-uppercase
18105 username. By default Samba tries all lowercase, followed by the
18106 username with the first letter capitalized, and fails if the
18107 username is not found on the UNIX machine.</P
18109 >If this parameter is set to non-zero the behavior changes.
18110 This parameter is a number that specifies the number of uppercase
18111 combinations to try while trying to determine the UNIX user name. The
18112 higher the number the more combinations will be tried, but the slower
18113 the discovery of usernames will be. Use this parameter when you have
18114 strange usernames on your UNIX machine, such as <TT
18122 >username level = 0</B
18127 >username level = 5</B
18134 >username map (G)</DT
18137 >This option allows you to specify a file containing
18138 a mapping of usernames from the clients to the server. This can be
18139 used for several purposes. The most common is to map usernames
18140 that users use on DOS or Windows machines to those that the UNIX
18141 box uses. The other is to map multiple users to a single username
18142 so that they can more easily share files.</P
18144 >The map file is parsed line by line. Each line should
18145 contain a single UNIX username on the left then a '=' followed
18146 by a list of usernames on the right. The list of usernames on the
18147 right may contain names of the form @group in which case they
18148 will match any UNIX username in that group. The special client
18149 name '*' is a wildcard and matches any name. Each line of the
18150 map file may be up to 1023 characters long.</P
18152 >The file is processed on each line by taking the
18153 supplied username and comparing it with each username on the right
18154 hand side of the '=' signs. If the supplied name matches any of
18155 the names on the right hand side then it is replaced with the name
18156 on the left. Processing then continues with the next line.</P
18158 >If any line begins with a '#' or a ';' then it is
18161 >If any line begins with an '!' then the processing
18162 will stop after that line if a mapping was done by the line.
18163 Otherwise mapping continues with every line being processed.
18164 Using '!' is most useful when you have a wildcard mapping line
18165 later in the file.</P
18167 >For example to map from the name <TT
18174 > to the UNIX name <TT
18177 > you would use:</P
18181 >root = admin administrator</B
18184 >Or to map anyone in the UNIX group <TT
18188 to the UNIX name <TT
18191 > you would use:</P
18198 >You can have as many mappings as you like in a username
18201 >If your system supports the NIS NETGROUP option then
18202 the netgroup database is checked before the <TT
18206 > database for matching groups.</P
18208 >You can map Windows usernames that have spaces in them
18209 by using double quotes around the name. For example:</P
18213 >tridge = "Andrew Tridgell"</B
18216 >would map the windows username "Andrew Tridgell" to the
18217 unix username "tridge".</P
18219 >The following example would map mary and fred to the
18220 unix user sys, and map the rest to guest. Note the use of the
18221 '!' to tell Samba to stop processing if it gets a match on
18231 CLASS="PROGRAMLISTING"
18240 >Note that the remapping is applied to all occurrences
18241 of usernames. Thus if you connect to \\server\fred and <TT
18244 > is remapped to <TT
18248 will actually be connecting to \\server\mary and will need to
18249 supply a password suitable for <TT
18256 >. The only exception to this is the
18257 username passed to the <A
18258 HREF="#PASSWORDSERVER"
18262 > password server</I
18265 > (if you have one). The password
18266 server will receive whatever username the client supplies without
18269 >Also note that no reverse mapping is done. The main effect
18270 this has is with printing. Users who have been mapped may have
18271 trouble deleting print jobs as PrintManager under WfWg will think
18272 they don't own the print job.</P
18275 >no username map</EM
18280 >username map = /usr/local/samba/lib/users.map
18291 >This boolean parameter is only available if
18292 Samba has been configured and compiled with the option <B
18298 > then Samba will attempt
18299 to add utmp or utmpx records (depending on the UNIX system) whenever a
18300 connection is made to a Samba server. Sites may use this to record the
18301 user connecting to a Samba share.</P
18304 HREF="#UTMPDIRECTORY"
18308 > utmp directory</I
18320 NAME="UTMPDIRECTORY"
18322 >utmp directory(G)</DT
18325 >This parameter is only available if Samba has
18326 been configured and compiled with the option <B
18329 >. It specifies a directory pathname that is
18330 used to store the utmp or utmpx files (depending on the UNIX system) that
18331 record user connections to a Samba server. See also the <A
18339 > parameter. By default this is
18340 not set, meaning the system will use whatever utmp file the
18341 native system is set to use (usually
18348 >no utmp directory</EM
18355 >valid users (S)</DT
18358 >This is a list of users that should be allowed
18359 to login to this service. Names starting with '@', '+' and '&'
18360 are interpreted using the same rules as described in the
18368 >If this is empty (the default) then any user can login.
18369 If a username is in both this list and the <TT
18375 > list then access is denied for that user.</P
18377 >The current servicename is substituted for <TT
18383 >. This is useful in the [homes] section.</P
18386 HREF="#INVALIDUSERS"
18397 >No valid users list (anyone can login)
18403 >valid users = greg, @pcusers</B
18413 >This is a list of files and directories that
18414 are neither visible nor accessible. Each entry in the list must
18415 be separated by a '/', which allows spaces to be included
18416 in the entry. '*' and '?' can be used to specify multiple files
18417 or directories as in DOS wildcards.</P
18419 >Each entry must be a unix path, not a DOS path and
18422 > include the unix directory
18431 is applicable in vetoing files.</P
18433 >One feature of the veto files parameter that it
18434 is important to be aware of is Samba's behaviour when
18435 trying to delete a directory. If a directory that is
18436 to be deleted contains nothing but veto files this
18439 > unless you also set
18443 >delete veto files</I
18453 >Setting this parameter will affect the performance
18454 of Samba, as it will be forced to check all files and directories
18455 for a match as they are scanned.</P
18467 HREF="#CASESENSITIVE"
18471 > case sensitive</I
18477 >No files or directories are vetoed.
18488 CLASS="PROGRAMLISTING"
18489 >; Veto any files containing the word Security,
18490 ; any ending in .tmp, and any directory containing the
18492 veto files = /*Security*/*.tmp/*root*/
18494 ; Veto the Apple specific files that a NetAtalk server
18496 veto files = /.AppleDouble/.bin/.AppleDesktop/Network Trash Folder/</PRE
18504 NAME="VETOOPLOCKFILES"
18506 >veto oplock files (S)</DT
18509 >This parameter is only valid when the <A
18518 parameter is turned on for a share. It allows the Samba administrator
18519 to selectively turn off the granting of oplocks on selected files that
18520 match a wildcarded list, similar to the wildcarded list used in the
18533 >No files are vetoed for oplock
18537 >You might want to do this on files that you know will
18538 be heavily contended for by clients. A good example of this
18539 is in the NetBench SMB benchmark program, which causes heavy
18540 client contention for files ending in <TT
18544 To cause Samba not to grant oplocks on these files you would use
18545 the line (either in the [global] section or in the section for
18546 the particular NetBench share :</P
18550 >veto oplock files = /*.SEM/
18558 >vfs object (S)</DT
18561 >This parameter specifies a shared object file that
18562 is used for Samba VFS I/O operations. By default, normal
18563 disk I/O operations are used but these can be overloaded
18564 with a VFS object. The Samba VFS layer is new to Samba 2.2 and
18565 must be enabled at compile time with --with-vfs.</P
18575 >vfs options (S)</DT
18578 >This parameter allows parameters to be passed
18579 to the vfs layer at initialization time. The Samba VFS layer
18580 is new to Samba 2.2 and must be enabled at compile time
18581 with --with-vfs. See also <A
18602 > This allows you to override the volume label
18603 returned for a share. Useful for CDROMs with installation programs
18604 that insist on a particular volume label.</P
18607 >the name of the share</EM
18614 >wide links (S)</DT
18617 >This parameter controls whether or not links
18618 in the UNIX file system may be followed by the server. Links
18619 that point to areas within the directory tree exported by the
18620 server are always allowed; this parameter controls access only
18621 to areas that are outside the directory tree being exported.</P
18623 >Note that setting this parameter can have a negative
18624 effect on your server performance due to the extra system calls
18625 that Samba has to do in order to perform the link checks.</P
18629 >wide links = yes</B
18634 NAME="WINBINDCACHETIME"
18636 >winbind cache time (G)</DT
18639 >This parameter specifies the number of seconds the
18641 HREF="winbindd.8.html"
18644 > daemon will cache
18645 user and group information before querying a Windows NT server
18650 >winbind cache type = 15</B
18655 NAME="WINBINDENUMUSERS"
18657 >winbind enum users (G)</DT
18660 >On large installations using
18662 HREF="winbindd.8.html"
18666 necessary to suppress the enumeration of users through the
18678 > group of system calls. If
18682 >winbind enum users</I
18685 false, calls to the <B
18689 will not return any data. </P
18694 enumeration may cause some programs to behave oddly. For
18695 example, the finger program relies on having access to the
18696 full user list when searching for matching
18701 >winbind enum users = yes </B
18706 NAME="WINBINDENUMGROUPS"
18708 >winbind enum groups (G)</DT
18711 >On large installations using
18713 HREF="winbindd.8.html"
18717 necessary to suppress the enumeration of groups through the
18729 > group of system calls. If
18733 >winbind enum groups</I
18736 false, calls to the <B
18740 call will not return any data. </P
18744 > Turning off group
18745 enumeration may cause some programs to behave oddly.
18750 >winbind enum groups = yes </B
18758 >winbind gid (G)</DT
18761 >The winbind gid parameter specifies the range of group
18762 ids that are allocated by the <A
18763 HREF="winbindd.8.html"
18766 > daemon. This range of group ids should have no
18767 existing local or NIS groups within it as strange conflicts can
18768 occur otherwise.</P
18772 >winbind gid = <empty string>
18778 >winbind gid = 10000-20000</B
18783 NAME="WINBINDSEPARATOR"
18785 >winbind separator (G)</DT
18788 >This parameter allows an admin to define the character
18789 used when listing a username of the form of <TT
18790 CLASS="REPLACEABLE"
18796 CLASS="REPLACEABLE"
18801 is only applicable when using the <TT
18803 >pam_winbind.so</TT
18807 >nss_winbind.so</TT
18808 > modules for UNIX services.
18811 >Please note that setting this parameter to + causes problems
18812 with group membership at least on glibc systems, as the character +
18813 is used as a special character for NIS in /etc/group.</P
18817 >winbind separator = '\'</B
18822 >winbind separator = +</B
18829 >winbind uid (G)</DT
18832 >The winbind gid parameter specifies the range of group
18833 ids that are allocated by the <A
18834 HREF="winbindd.8.html"
18837 > daemon. This range of ids should have no
18838 existing local or NIS users within it as strange conflicts can
18839 occur otherwise.</P
18843 >winbind uid = <empty string>
18849 >winbind uid = 10000-20000</B
18853 >winbind use default domain, <A
18854 NAME="WINBINDUSEDEFAULTDOMAIN"
18856 >winbind use default domain</DT
18859 >This parameter specifies whether the <A
18860 HREF="winbindd.8.html"
18864 daemon should operate on users without domain component in their username.
18865 Users without a domain component are treated as is part of the winbindd server's
18866 own domain. While this does not benifit Windows users, it makes SSH, FTP and e-mail
18867 function in a way much closer to the way they would in a native unix system.</P
18871 >winbind use default domain = <falseg>
18877 >winbind use default domain = true</B
18887 >When Samba is running as a WINS server this
18888 allows you to call an external program for all changes to the
18889 WINS database. The primary use for this option is to allow the
18890 dynamic update of external name resolution databases such as
18893 >The wins hook parameter specifies the name of a script
18894 or executable that will be called as follows:</P
18898 >wins_hook operation name nametype ttl IP_list
18906 >The first argument is the operation and is one
18907 of "add", "delete", or "refresh". In most cases the operation can
18908 be ignored as the rest of the parameters provide sufficient
18909 information. Note that "refresh" may sometimes be called when the
18910 name has not previously been added, in that case it should be treated
18915 >The second argument is the NetBIOS name. If the
18916 name is not a legal name then the wins hook is not called.
18917 Legal names contain only letters, digits, hyphens, underscores
18922 >The third argument is the NetBIOS name
18923 type as a 2 digit hexadecimal number. </P
18927 >The fourth argument is the TTL (time to live)
18928 for the name in seconds.</P
18932 >The fifth and subsequent arguments are the IP
18933 addresses currently registered for that name. If this list is
18934 empty then the name should be deleted.</P
18938 >An example script that calls the BIND dynamic DNS update
18942 > is provided in the examples
18943 directory of the Samba source code. </P
18949 >wins proxy (G)</DT
18952 >This is a boolean that controls if <A
18956 > will respond to broadcast name
18957 queries on behalf of other hosts. You may need to set this
18961 > for some older clients.</P
18965 >wins proxy = no</B
18972 >wins server (G)</DT
18975 >This specifies the IP address (or DNS name: IP
18976 address for preference) of the WINS server that <A
18980 > should register with. If you have a WINS server on
18981 your network then you should set this to the WINS server's IP.</P
18983 >You should point this at your WINS server if you have a
18984 multi-subnetted network.</P
18988 >. You need to set up Samba to point
18989 to a WINS server if you have multiple subnets and wish cross-subnet
18990 browsing to work correctly.</P
18992 >See the documentation file <TT
18996 in the docs/ directory of your Samba source distribution.</P
19004 >wins server = 192.9.200.1</B
19011 >wins support (G)</DT
19014 >This boolean controls if the <A
19019 > process in Samba will act as a WINS server. You should
19020 not set this to <TT
19023 > unless you have a multi-subnetted network and
19024 you wish a particular <B
19027 > to be your WINS server.
19028 Note that you should <EM
19034 on more than one machine in your network.</P
19038 >wins support = no</B
19048 >This controls what workgroup your server will
19049 appear to be in when queried by clients. Note that this parameter
19050 also controls the Domain name used with the <A
19051 HREF="#SECURITYEQUALSDOMAIN"
19054 >security = domain</B
19060 >set at compile time to WORKGROUP</EM
19065 >workgroup = MYGROUP</B
19083 > for people who can't spell :-).</P
19087 NAME="WRITECACHESIZE"
19089 >write cache size (S)</DT
19092 >If this integer parameter is set to non-zero value,
19093 Samba will create an in-memory cache for each oplocked file
19097 non-oplocked files). All writes that the client does not request
19098 to be flushed directly to disk will be stored in this cache if possible.
19099 The cache is flushed onto disk when a write comes in whose offset
19100 would not fit into the cache or when the file is closed by the client.
19101 Reads for the file are also served from this cache if the data is stored
19104 >This cache allows Samba to batch client writes into a more
19105 efficient write size for RAID disks (i.e. writes may be tuned to
19106 be the RAID stripe size) and can improve performance on systems
19107 where the disk subsystem is a bottleneck but there is free
19108 memory for userspace programs.</P
19110 >The integer parameter specifies the size of this cache
19111 (per oplocked file) in bytes.</P
19115 >write cache size = 0</B
19120 >write cache size = 262144</B
19123 >for a 256k cache size per file.</P
19129 >write list (S)</DT
19132 >This is a list of users that are given read-write
19133 access to a service. If the connecting user is in this list then
19134 they will be given write access, no matter what the <A
19143 option is set to. The list can include group names using the
19146 >Note that if a user is in both the read list and the
19147 write list then they will be given write access.</P
19162 >write list = <empty string>
19168 >write list = admin, root, @staff
19196 >This parameter controls whether or not the server
19197 will support raw write SMB's when transferring data from clients.
19198 You should never need to change this parameter.</P
19202 >write raw = yes</B
19212 >An inverted synonym is <A
19222 >If this parameter is <TT
19226 of a service may not create or modify files in the service's
19229 >Note that a printable service (<B
19231 >printable = yes</B
19235 > allow writing to the directory
19236 (user privileges permitting), but only via spooling operations.</P
19254 >Although the configuration file permits service names
19255 to contain spaces, your client software may not. Spaces will
19256 be ignored in comparisons anyway, so it shouldn't be a
19257 problem - but be aware of the possibility.</P
19259 >On a similar note, many clients - especially DOS clients -
19260 limit service names to eight characters. <A
19265 > has no such limitation, but attempts to connect from such
19266 clients will fail if they truncate the service names. For this reason
19267 you should probably keep your service names down to eight characters
19270 >Use of the [homes] and [printers] special sections make life
19271 for an administrator easy, but the various combinations of default
19272 attributes can be tricky. Take extreme care when designing these
19273 sections. In particular, ensure that the permissions on spool
19274 directories are correct.</P
19284 >This man page is correct for version 2.2 of
19285 the Samba suite.</P
19296 HREF="samba.7.html"
19301 HREF="smbpasswd.8.html"
19333 HREF="smbclient.1.html"
19341 HREF="nmblookup.1.html"
19349 HREF="testparm.1.html"
19357 HREF="testprns.1.html"
19374 >The original Samba software and related utilities
19375 were created by Andrew Tridgell. Samba is now developed
19376 by the Samba Team as an Open Source project similar
19377 to the way the Linux kernel is developed.</P
19379 >The original Samba man pages were written by Karl Auer.
19380 The man page sources were converted to YODL format (another
19381 excellent piece of Open Source software, available at
19383 HREF="ftp://ftp.icce.rug.nl/pub/unix/"
19385 > ftp://ftp.icce.rug.nl/pub/unix/</A
19386 >) and updated for the Samba 2.0
19387 release by Jeremy Allison. The conversion to DocBook for
19388 Samba 2.2 was done by Gerald Carter</P