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
339 it means setting browseable=no in the [homes] section
340 will hide the [homes] share but make any auto home
341 directories visible.
</P
349 >The [printers] section
</H3
351 >This section works like [homes],
354 >If a [printers] section occurs in the
355 configuration file, users are able to connect to any printer
356 specified in the local host's printcap file.
</P
358 >When a connection request is made, the existing sections
359 are scanned. If a match is found, it is used. If no match is found,
360 but a [homes] section exists, it is used as described
361 above. Otherwise, the requested section name is treated as a
362 printer name and the appropriate printcap file is scanned to see
363 if the requested section name is a valid printer share name. If
364 a match is found, a new printer share is created by cloning
365 the [printers] section.
</P
367 >A few modifications are then made to the newly created
374 >The share name is set to the located printer
379 >If no printer name was given, the printer name
380 is set to the located printer name
</P
384 >If the share does not permit guest access and
385 no username was given, the username is set to the located
390 >Note that the [printers] service MUST be
391 printable - if you specify otherwise, the server will refuse
392 to load the configuration file.
</P
394 >Typically the path specified would be that of a
395 world-writeable spool directory with the sticky bit set on
396 it. A typical [printers] entry would look like
407 CLASS=
"COMPUTEROUTPUT"
409 path = /usr/spool/public
418 >All aliases given for a printer in the printcap file
419 are legitimate printer names as far as the server is concerned.
420 If your printing subsystem doesn't work like that, you will have
421 to set up a pseudo-printcap. This is a file consisting of one or
422 more lines like this:
</P
432 CLASS=
"COMPUTEROUTPUT"
433 > alias|alias|alias|alias...
441 >Each alias should be an acceptable printer name for
442 your printing subsystem. In the [global] section, specify
443 the new file as your printcap. The server will then only recognize
444 names found in your pseudo-printcap, which of course can contain
445 whatever aliases you like. The same technique could be used
446 simply to limit access to a subset of your local printers.
</P
448 >An alias, by the way, is defined as any component of the
449 first entry of a printcap record. Records are separated by newlines,
450 components (if there are more than one) are separated by vertical
451 bar symbols ('|').
</P
453 >NOTE: On SYSV systems which use lpstat to determine what
454 printers are defined on the system you may be able to use
455 "printcap name = lpstat" to automatically obtain a list
456 of printers. See the
"printcap name" option
468 >parameters define the specific attributes of sections.
</P
470 >Some parameters are specific to the [global] section
473 >). Some parameters are usable
474 in all sections (e.g.,
<EM
477 are permissible only in normal sections. For the purposes of the
478 following descriptions the [homes] and [printers]
479 sections will be considered normal. The letter
<EM
482 in parentheses indicates that a parameter is specific to the
483 [global] section. The letter
<EM
486 indicates that a parameter can be specified in a service specific
487 section. Note that all
<EM
489 > parameters can also be specified in
490 the [global] section - in which case they will define
491 the default behavior for all services.
</P
493 >parameters are arranged here in alphabetical order - this may
494 not create best bedfellows, but at least you can find them! Where
495 there are synonyms, the preferred synonym is described, others refer
496 to the preferred synonym.
</P
504 >VARIABLE SUBSTITUTIONS
</H2
506 >Many of the strings that are settable in the config file
507 can take substitutions. For example the option
"path =
508 /tmp/%u" would be interpreted as
"path =
509 /tmp/john" if the user connected with the username john.
</P
511 >These substitutions are mostly noted in the descriptions below,
512 but there are some general substitutions which apply whenever they
513 might be relevant. These are:
</P
523 >the name of the current service, if any.
</P
529 >the root directory of the current service,
536 >user name of the current service, if any.
</P
542 >primary group name of %u.
</P
548 >session user name (the user name that the client
549 wanted, not necessarily the same as the one they got).
</P
555 >primary group name of %U.
</P
561 >the home directory of the user given
568 >the Samba version.
</P
574 >the Internet hostname that Samba is running
581 >the NetBIOS name of the client machine
588 >the NetBIOS name of the server. This allows you
589 to change your config based on what the client calls you. Your
590 server can have a
"dual personality".
</P
596 >the Internet name of the client machine.
603 >the name of your NIS home directory server.
604 This is obtained from your NIS auto.map entry. If you have
605 not compiled Samba with the
<EM
606 >--with-automount
</EM
608 option then this value will be the same as %.
</P
614 >the path of the service's home directory,
615 obtained from your NIS auto.map entry. The NIS auto.map entry
616 is split up as
"%N:%p".
</P
622 >the selected protocol level after
623 protocol negotiation. It can be one of CORE, COREPLUS,
624 LANMAN1, LANMAN2 or NT1.
</P
630 >The process id of the current server
637 >the architecture of the remote
638 machine. Only some are recognized, and those may not be
639 100% reliable. It currently recognizes Samba, WfWg,
640 WinNT and Win95. Anything else will be known as
641 "UNKNOWN". If it gets it wrong then sending a level
643 HREF=
"mailto:samba@samba.org"
647 > should allow it to be fixed.
</P
653 >The IP address of the client machine.
</P
659 >the current date and time.
</P
670 >The value of the environment variable
681 >There are some quite creative things that can be done
682 with these substitutions and other smb.conf options.
</P
692 >Samba supports
"name mangling" so that DOS and
693 Windows clients can use files that don't conform to the
8.3 format.
694 It can also be set to adjust the case of
8.3 format filenames.
</P
696 >There are several options that control the way mangling is
697 performed, and they are grouped here rather than listed separately.
698 For the defaults look at the output of the testparm program.
</P
700 >All of these options can be set separately for each service
701 (or globally, of course).
</P
703 >The options are:
</P
710 >mangle case= yes/no
</DT
713 > controls if names that have characters that
714 aren't of the
"default" case are mangled. For example,
715 if this is yes then a name like
"Mail" would be mangled.
721 >case sensitive = yes/no
</DT
724 >controls whether filenames are case sensitive. If
725 they aren't then Samba must do a filename search and match on passed
731 >default case = upper/lower
</DT
734 >controls what the default case is for new
735 filenames. Default
<EM
740 >preserve case = yes/no
</DT
743 >controls if new files are created with the
744 case that the client passes, or if they are forced to be the
745 "default" case. Default
<EM
751 >short preserve case = yes/no
</DT
754 >controls if new files which conform to
8.3 syntax,
755 that is all in upper case and of suitable length, are created
756 upper case, or if they are forced to be the
"default"
757 case. This option can be use with
"preserve case = yes"
758 to permit long filenames to retain their case, while short names
759 are lowered. Default
<EM
766 >By default, Samba
2.2 has the same semantics as a Windows
767 NT server, in that it is case insensitive but case preserving.
</P
775 >NOTE ABOUT USERNAME/PASSWORD VALIDATION
</H2
777 >There are a number of ways in which a user can connect
778 to a service. The server uses the following steps in determining
779 if it will allow a connection to a specified service. If all the
780 steps fail, then the connection request is rejected. However, if one of the
781 steps succeeds, then the following steps are not checked.
</P
783 >If the service is marked
"guest only = yes" then
784 steps
1 to
5 are skipped.
</P
791 >If the client has passed a username/password
792 pair and that username/password pair is validated by the UNIX
793 system's password programs then the connection is made as that
794 username. Note that this includes the
805 >If the client has previously registered a username
806 with the system and now supplies a correct password for that
807 username then the connection is allowed.
</P
811 >The client's netbios name and any previously
812 used user names are checked against the supplied password, if
813 they match then the connection is allowed as the corresponding
818 >If the client has previously validated a
819 username/password pair with the server and the client has passed
820 the validation token then that username is used.
</P
824 >If a
"user = " field is given in the
828 > file for the service and the client
829 has supplied a password, and that password matches (according to
830 the UNIX system's password checking) with one of the usernames
831 from the
"user=" field then the connection is made as
832 the username in the
"user=" line. If one
833 of the username in the
"user=" list begins with a
834 '@' then that name expands to a list of names in
835 the group of the same name.
</P
839 >If the service is a guest service then a
840 connection is made as the username given in the
"guest
841 account =" for the service, irrespective of the
842 supplied password.
</P
852 >COMPLETE LIST OF GLOBAL PARAMETERS
</H2
854 >Here is a list of all global parameters. See the section of
855 each parameter for details. Note that some are synonyms.
</P
862 HREF=
"#ADDPRINTERCOMMAND"
866 >add printer command
</I
874 HREF=
"#ADDSHARECOMMAND"
878 >add share command
</I
886 HREF=
"#ADDUSERSCRIPT"
898 HREF=
"#ALLOWTRUSTEDDOMAINS"
902 >allow trusted domains
</I
922 HREF=
"#ANNOUNCEVERSION"
946 HREF=
"#BINDINTERFACESONLY"
950 >bind interfaces only
</I
970 HREF=
"#CHANGENOTIFYTIMEOUT"
974 >change notify timeout
</I
982 HREF=
"#CHANGESHARECOMMAND"
986 >change share command
</I
1006 HREF=
"#CLIENTCODEPAGE"
1010 >client code page
</I
1018 HREF=
"#CODEPAGEDIRECTORY"
1022 >code page directory
</I
1030 HREF=
"#CODINGSYSTEM"
1066 HREF=
"#DEBUGHIRESTIMESTAMP"
1070 >debug hires timestamp
</I
1090 HREF=
"#DEBUGTIMESTAMP"
1138 HREF=
"#DEFAULTSERVICE"
1150 HREF=
"#DELETEPRINTERCOMMAND"
1154 >delete printer command
</I
1162 HREF=
"#DELETESHARECOMMAND"
1166 >delete share command
</I
1174 HREF=
"#DELETEUSERSCRIPT"
1178 >delete user script
</I
1186 HREF=
"#DFREECOMMAND"
1210 HREF=
"#DOMAINADMINGROUP"
1214 >domain admin group
</I
1222 HREF=
"#DOMAINGUESTGROUP"
1226 >domain guest group
</I
1234 HREF=
"#DOMAINLOGONS"
1246 HREF=
"#DOMAINMASTER"
1258 HREF=
"#ENCRYPTPASSWORDS"
1262 >encrypt passwords
</I
1270 HREF=
"#ENHANCEDBROWSING"
1274 >enhanced browsing
</I
1282 HREF=
"#ENUMPORTSCOMMAND"
1286 >enumports command
</I
1306 HREF=
"#HIDELOCALUSERS"
1310 >hide local users
</I
1378 HREF=
"#KERNELOPLOCKS"
1426 HREF=
"#LOADPRINTERS"
1462 HREF=
"#LOCKDIRECTORY"
1546 HREF=
"#LPQCACHETIME"
1558 HREF=
"#MACHINEPASSWORDTIMEOUT"
1562 >machine password timeout
</I
1570 HREF=
"#MANGLEDSTACK"
1630 HREF=
"#MAXOPENFILES"
1654 HREF=
"#MAXSMBDPROCESSES"
1658 >max smbd processes
</I
1702 HREF=
"#MESSAGECOMMAND"
1714 HREF=
"#MINPASSWDLENGTH"
1718 >min passwd length
</I
1726 HREF=
"#MINPASSWORDLENGTH"
1730 >min password length
</I
1762 HREF=
"#NAMERESOLVEORDER"
1766 >name resolve order
</I
1774 HREF=
"#NETBIOSALIASES"
1798 HREF=
"#NETBIOSSCOPE"
1822 HREF=
"#NTACLSUPPORT"
1834 HREF=
"#NTPIPESUPPORT"
1846 HREF=
"#NTSMBSUPPORT"
1858 HREF=
"#NULLPASSWORDS"
1870 HREF=
"#OBEYPAMRESTRICTIONS"
1874 >obey pam restrictions
</I
1882 HREF=
"#OPLOCKBREAKWAITTIME"
1886 >oplock break wait time
</I
1906 HREF=
"#OS2DRIVERMAP"
1918 HREF=
"#PAMPASSWORDCHANGE"
1922 >pam password change
</I
1954 HREF=
"#PASSWDCHATDEBUG"
1958 >passwd chat debug
</I
1966 HREF=
"#PASSWDPROGRAM"
1978 HREF=
"#PASSWORDLEVEL"
1990 HREF=
"#PASSWORDSERVER"
2002 HREF=
"#PREFEREDMASTER"
2014 HREF=
"#PREFERREDMASTER"
2018 >preferred master
</I
2050 HREF=
"#PRINTCAPNAME"
2062 HREF=
"#PRINTERDRIVERFILE"
2066 >printer driver file
</I
2122 HREF=
"#REMOTEANNOUNCE"
2134 HREF=
"#REMOTEBROWSESYNC"
2138 >remote browse sync
</I
2146 HREF=
"#RESTRICTANONYMOUS"
2150 >restrict anonymous
</I
2182 HREF=
"#ROOTDIRECTORY"
2206 HREF=
"#SERVERSTRING"
2218 HREF=
"#SHOWADDPRINTERWIZARD"
2222 >show add printer wizard
</I
2230 HREF=
"#SMBPASSWDFILE"
2242 HREF=
"#SOCKETADDRESS"
2254 HREF=
"#SOCKETOPTIONS"
2266 HREF=
"#SOURCEENVIRONMENT"
2270 >source environment
</I
2290 HREF=
"#SSLCACERTDIR"
2302 HREF=
"#SSLCACERTFILE"
2326 HREF=
"#SSLCLIENTCERT"
2338 HREF=
"#SSLCLIENTKEY"
2350 HREF=
"#SSLCOMPATIBILITY"
2354 >ssl compatibility
</I
2374 HREF=
"#SSLHOSTSRESIGN"
2378 >ssl hosts resign
</I
2386 HREF=
"#SSLREQUIRECLIENTCERT"
2390 >ssl require clientcert
</I
2398 HREF=
"#SSLREQUIRESERVERCERT"
2402 >ssl require servercert
</I
2410 HREF=
"#SSLSERVERCERT"
2422 HREF=
"#SSLSERVERKEY"
2458 HREF=
"#STATCACHESIZE"
2506 HREF=
"#TEMPLATEHOMEDIR"
2510 >template homedir
</I
2518 HREF=
"#TEMPLATESHELL"
2554 HREF=
"#TIMESTAMPLOGS"
2566 HREF=
"#TOTALPRINTJOBS"
2570 >total print jobs
</I
2578 HREF=
"#UNIXPASSWORDSYNC"
2582 >unix password sync
</I
2590 HREF=
"#UPDATEENCRYPTED"
2594 >update encrypted
</I
2614 HREF=
"#USERNAMELEVEL"
2638 HREF=
"#UTMPDIRECTORY"
2662 HREF=
"#WINBINDCACHETIME"
2666 >winbind cache time
</I
2686 HREF=
"#WINBINDSEPARATOR"
2690 >winbind separator
</I
2787 >COMPLETE LIST OF SERVICE PARAMETERS
</H2
2789 >Here is a list of all service parameters. See the section on
2790 each parameter for details. Note that some are synonyms.
</P
2833 HREF=
"#BLOCKINGLOCKS"
2869 HREF=
"#CASESENSITIVE"
2881 HREF=
"#CASESIGNAMES"
2953 HREF=
"#DELETEREADONLY"
2965 HREF=
"#DELETEVETOFILES"
2969 >delete veto files
</I
3001 HREF=
"#DIRECTORYMASK"
3013 HREF=
"#DIRECTORYMODE"
3025 HREF=
"#DIRECTORYSECURITYMASK"
3029 >directory security mask
</I
3061 HREF=
"#DOSFILETIMERESOLUTION"
3065 >dos filetime resolution
</I
3073 HREF=
"#DOSFILETIMES"
3097 HREF=
"#FAKEDIRECTORYCREATETIMES"
3101 >fake directory create times
</I
3121 HREF=
"#FOLLOWSYMLINKS"
3133 HREF=
"#FORCECREATEMODE"
3137 >force create mode
</I
3145 HREF=
"#FORCEDIRECTORYMODE"
3149 >force directory mode
</I
3157 HREF=
"#FORCEDIRECTORYSECURITYMODE"
3161 >force directory security mode
</I
3181 HREF=
"#FORCESECURITYMODE"
3185 >force security mode
</I
3229 HREF=
"#GUESTACCOUNT"
3265 HREF=
"#HIDEDOTFILES"
3325 HREF=
"#INHERITPERMISSIONS"
3329 >inherit permissions
</I
3337 HREF=
"#INVALIDUSERS"
3349 HREF=
"#LEVEL2OPLOCKS"
3373 HREF=
"#LPPAUSECOMMAND"
3397 HREF=
"#LPRESUMECOMMAND"
3401 >lpresume command
</I
3469 HREF=
"#MANGLEDNAMES"
3481 HREF=
"#MANGLINGCHAR"
3529 HREF=
"#MAXCONNECTIONS"
3541 HREF=
"#MAXPRINTJOBS"
3553 HREF=
"#MINPRINTSPACE"
3601 HREF=
"#OPLOCKCONTENTIONLIMIT"
3605 >oplock contention limit
</I
3637 HREF=
"#POSIXLOCKING"
3685 HREF=
"#PREEXECCLOSE"
3697 HREF=
"#PRESERVECASE"
3709 HREF=
"#PRINTCOMMAND"
3757 HREF=
"#PRINTERADMIN"
3769 HREF=
"#PRINTERDRIVER"
3781 HREF=
"#PRINTERDRIVERLOCATION"
3785 >printer driver location
</I
3829 HREF=
"#QUEUEPAUSECOMMAND"
3833 >queuepause command
</I
3841 HREF=
"#QUEUERESUMECOMMAND"
3845 >queueresume command
</I
3877 HREF=
"#RESTRICTACLWITHMASK"
3881 >restrict acl with mask
</I
3889 HREF=
"#ROOTPOSTEXEC"
3913 HREF=
"#ROOTPREEXECCLOSE"
3917 >root preexec close
</I
3925 HREF=
"#SECURITYMASK"
3937 HREF=
"#SETDIRECTORY"
3961 HREF=
"#SHORTPRESERVECASE"
3965 >short preserve case
</I
3985 HREF=
"#STRICTLOCKING"
4093 HREF=
"#VETOOPLOCKFILES"
4097 >veto oplock files
</I
4165 HREF=
"#WRITECACHESIZE"
4169 >write cache size
</I
4218 >EXPLANATION OF EACH PARAMETER
</H2
4222 CLASS=
"VARIABLELIST"
4226 NAME=
"ADDPRINTERCOMMAND"
4228 >add printer command (G)
</DT
4231 >With the introduction of MS-RPC based printing
4232 support for Windows NT/
2000 clients in Samba
2.2, The MS Add
4233 Printer Wizard (APW) icon is now also available in the
4234 "Printers..." folder displayed a share listing. The APW
4235 allows for printers to be add remotely to a Samba or Windows
4236 NT/
2000 print server.
</P
4238 >For a Samba host this means that the printer must be
4239 physically added to underlying printing system. The
<TT
4245 > defines a script to be run which
4246 will perform the necessary operations for adding the printer
4247 to the print system and to add the appropriate service definition
4251 > file in order that it can be
4265 >add printer command
</I
4268 automatically invoked with the following parameter (in
4323 >Windows
9x driver location
</I
4330 >All parameters are filled in from the PRINTER_INFO_2 structure sent
4331 by the Windows NT/
2000 client with one exception. The
"Windows 9x
4332 driver location" parameter is included for backwards compatibility
4333 only. The remaining fields in the structure are generated from answers
4334 to the APW questions.
</P
4339 >add printer command
</I
4345 > will reparse the
<TT
4348 > to determine if the share defined by the APW
4349 exists. If the sharename is still invalid, then
<B
4353 > will return an ACCESS_DENIED error to the client.
</P
4356 HREF=
"#DELETEPRINTERCOMMAND"
4360 > delete printer command
</I
4373 HREF=
"#SHOWADDPRINTERWIZARD"
4389 >addprinter command = /usr/bin/addprinter
4395 NAME=
"ADDSHARECOMMAND"
4397 >add share command (G)
</DT
4400 >Samba
2.2.0 introduced the ability to dynamically
4401 add and delete shares via the Windows NT
4.0 Server Manager. The
4405 >add share command
</I
4407 > is used to define an
4408 external program or script which will add a new service definition
4412 >. In order to successfully
4416 >add share command
</I
4422 requires that the administrator be connected using a root account (i.e.
4429 > will automatically invoke the
4433 >add share command
</I
4435 > with four parameters.
4461 > - the name of the new
4472 > - path to an **existing**
4483 > - comment string to associate
4489 > This parameter is only used for add file shares. To add printer shares,
4491 HREF=
"#ADDPRINTERCOMMAND"
4503 HREF=
"#CHANGESHARECOMMAND"
4512 HREF=
"#DELETESHARECOMMAND"
4529 >add share command = /usr/local/bin/addshare
</B
4534 NAME=
"ADDUSERSCRIPT"
4536 >add user script (G)
</DT
4539 >This is the full pathname to a script that will
4547 > under special circumstances described below.
</P
4549 >Normally, a Samba server requires that UNIX users are
4550 created for all users accessing files on this server. For sites
4551 that use Windows NT account databases as their primary user database
4552 creating these users and keeping the user list in sync with the
4553 Windows NT PDC is an onerous task. This option allows
<A
4557 > to create the required UNIX users
4560 > when a user accesses the Samba server.
</P
4562 >In order to use this option,
<A
4575 > security=domain
</I
4583 must be set to a full pathname for a script that will create a UNIX
4584 user given one argument of
<TT
4589 >, which expands into
4590 the UNIX user name to create.
</P
4592 >When the Windows user attempts to access the Samba server,
4593 at login (session setup in the SMB protocol) time,
<A
4603 attempts to authenticate the given user with the given password. If the
4604 authentication succeeds then
<B
4608 attempts to find a UNIX user in the UNIX password database to map the
4609 Windows user into. If this lookup fails, and
<TT
4619 call the specified script
<EM
4627 > argument to be the user name to create.
</P
4629 >If this script successfully creates the user then
<B
4633 > will continue on as though the UNIX user
4634 already existed. In this way, UNIX users are dynamically created to
4635 match existing Windows NT accounts.
</P
4646 HREF=
"#PASSWORDSERVER"
4655 HREF=
"#DELETEUSERSCRIPT"
4667 >add user script =
<empty string
>
4673 >add user script = /usr/local/samba/bin/add_user
4681 >admin users (S)
</DT
4684 >This is a list of users who will be granted
4685 administrative privileges on the share. This means that they
4686 will do all file operations as the super-user (root).
</P
4688 >You should use this option very carefully, as any user in
4689 this list will be able to do anything they like on the share,
4690 irrespective of file permissions.
</P
4698 >admin users = jason
</B
4705 >allow hosts (S)
</DT
4720 NAME=
"ALLOWTRUSTEDDOMAINS"
4722 >allow trusted domains (G)
</DT
4725 >This option only takes effect when the
<A
4741 If it is set to no, then attempts to connect to a resource from
4742 a domain or workgroup other than the one which smbd is running
4743 in will fail, even if that domain is trusted by the remote server
4744 doing the authentication.
</P
4746 >This is useful if you only want your Samba server to
4747 serve resources to users in the domain it is a member of. As
4748 an example, suppose that there are two domains DOMA and DOMB. DOMB
4749 is trusted by DOMA, which contains the Samba server. Under normal
4750 circumstances, a user with an account in DOMB can then access the
4751 resources of a UNIX account with the same account name on the
4752 Samba server even if they do not have an account in DOMA. This
4753 can make implementing a security boundary difficult.
</P
4757 >allow trusted domains = yes
</B
4764 >announce as (G)
</DT
4767 >This specifies what type of server
4776 will announce itself as, to a network neighborhood browse
4777 list. By default this is set to Windows NT. The valid options
4778 are :
"NT Server" (which can also be written as
"NT"),
4779 "NT Workstation",
"Win95" or
"WfW" meaning Windows NT Server,
4780 Windows NT Workstation, Windows
95 and Windows for Workgroups
4781 respectively. Do not change this parameter unless you have a
4782 specific need to stop Samba appearing as an NT server as this
4783 may prevent Samba servers from participating as browser servers
4788 >announce as = NT Server
</B
4793 >announce as = Win95
</B
4798 NAME=
"ANNOUNCEVERSION"
4800 >annouce version (G)
</DT
4803 >This specifies the major and minor version numbers
4804 that nmbd will use when announcing itself as a server. The default
4805 is
4.2. Do not change this parameter unless you have a specific
4806 need to set a Samba server to be a downlevel server.
</P
4810 >announce version =
4.2</B
4815 >announce version =
2.0</B
4822 >auto services (G)
</DT
4825 >This is a synonym for the
<A
4842 >This parameter lets you
"turn off" a service. If
4851 attempts to connect to the service will fail. Such failures are
4861 NAME=
"BINDINTERFACESONLY"
4863 >bind interfaces only (G)
</DT
4866 >This global parameter allows the Samba admin
4867 to limit what interfaces on a machine will serve smb requests. If
4868 affects file service
<A
4880 >For name service it causes
<B
4884 to ports
137 and
138 on the interfaces listed in the
<A
4891 > also binds to the
"all addresses" interface (
0.0.0.0)
4892 on ports
137 and
138 for the purposes of reading broadcast messages.
4893 If this option is not set then
<B
4897 name requests on all of these sockets. If
<TT
4907 source address of any packets coming in on the broadcast sockets
4908 and discard any that don't match the broadcast addresses of the
4909 interfaces in the
<TT
4915 As unicast packets are received on the other sockets it allows
4919 > to refuse to serve names to machines that
4920 send packets that arrive through any interfaces not listed in the
4926 > list. IP Source address spoofing
4927 does defeat this simple check, however so it must not be used
4928 seriously as a security feature for
<B
4933 >For file service it causes
<A
4938 to bind only to the interface list given in the
<A
4941 > parameter. This restricts the networks that
4945 > will serve to packets coming in those
4946 interfaces. Note that you should not use this parameter for machines
4947 that are serving PPP or other intermittent or non-broadcast network
4948 interfaces as it will not cope with non-permanent interfaces.
</P
4953 >bind interfaces only
</I
4956 unless the network address
<EM
4965 HREF=
"smbpasswd.8.html"
4980 not work as expected due to the reasons covered below.
</P
4982 >To change a users SMB password, the
<B
4986 by default connects to the
<EM
4987 >localhost -
127.0.0.1</EM
4989 address as an SMB client to issue the password change request. If
4993 >bind interfaces only
</I
4995 > is set then unless the
5004 > parameter list then
<B
5007 > will fail to connect in it's default mode.
5011 > can be forced to use the primary IP interface
5012 of the local host by using its
<A
5013 HREF=
"smbpasswd.8.html#minusr"
5027 > parameter, with
<TT
5033 to the IP name of the primary interface of the local host.
</P
5038 > status page tries to connect with
5048 > to determine if they are running.
5058 "not running" even if they really are. This can prevent
<B
5061 > from starting/stopping/restarting
<B
5072 >bind interfaces only = no
</B
5077 NAME=
"BLOCKINGLOCKS"
5079 >blocking locks (S)
</DT
5082 >This parameter controls the behavior of
<A
5086 > when given a request by a client
5087 to obtain a byte range lock on a region of an open file, and the
5088 request has a time limit associated with it.
</P
5090 >If this parameter is set and the lock range requested
5091 cannot be immediately satisfied, Samba
2.2 will internally
5092 queue the lock request, and periodically attempt to obtain
5093 the lock until the timeout period expires.
</P
5095 >If this parameter is set to
<TT
5099 Samba
2.2 will behave as previous versions of Samba would and
5100 will fail the lock request immediately if the lock range
5101 cannot be obtained.
</P
5105 >blocking locks = yes
</B
5129 >browse list (G)
</DT
5132 >This controls whether
<A
5139 > will serve a browse list to
5147 >. You should never need to change
5152 >browse list = yes
</B
5162 >This controls whether this share is seen in
5163 the list of available shares in a net view and in the browse list.
</P
5167 >browseable = yes
</B
5172 NAME=
"CASESENSITIVE"
5174 >case sensitive (S)
</DT
5177 >See the discussion in the section
<A
5184 >case sensitive = no
</B
5191 >casesignames (S)
</DT
5195 HREF=
"#CASESENSITIVE"
5202 NAME=
"CHANGENOTIFYTIMEOUT"
5204 >change notify timeout (G)
</DT
5207 >This SMB allows a client to tell a server to
5208 "watch" a particular directory for any changes and only reply to
5209 the SMB request when a change has occurred. Such constant scanning of
5210 a directory is expensive under UNIX, hence an
<A
5217 > daemon only performs such a scan
5218 on each requested directory once every
<TT
5228 >change notify timeout =
60</B
5233 >change notify timeout =
300</B
5236 >Would change the scan time to every
5 minutes.
</P
5240 NAME=
"CHANGESHARECOMMAND"
5242 >change share command (G)
</DT
5245 >Samba
2.2.0 introduced the ability to dynamically
5246 add and delete shares via the Windows NT
4.0 Server Manager. The
5250 >change share command
</I
5252 > is used to define an
5253 external program or script which will modify an existing service definition
5257 >. In order to successfully
5261 >change share command
</I
5267 requires that the administrator be connected using a root account (i.e.
5274 > will automatically invoke the
5278 >change share command
</I
5280 > with four parameters.
5306 > - the name of the new
5317 > - path to an **existing**
5328 > - comment string to associate
5334 > This parameter is only used modify existing file shares definitions. To modify
5335 printer shares, use the
"Printers..." folder as seen when browsing the Samba host.
5339 HREF=
"#ADDSHARECOMMAND"
5348 HREF=
"#DELETESHARECOMMAND"
5365 >change share command = /usr/local/bin/addshare
</B
5372 >character set (G)
</DT
5375 >This allows a smbd to map incoming filenames
5376 from a DOS Code page (see the
<A
5377 HREF=
"#CLIENTCODEPAGE"
5380 > parameter) to several built in UNIX character sets.
5381 The built in code page translations are:
</P
5390 > : Western European
5391 UNIX character set. The parameter
<TT
5394 >client code page
</I
5399 > be set to code page
850 if the
5405 > parameter is set to
5409 > in order for the conversion to the
5410 UNIX character set to be done correctly.
</P
5417 > : Eastern European
5418 UNIX character set. The parameter
<TT
5426 > be set to code page
852 if
5436 > in order for the conversion
5437 to the UNIX character set to be done correctly.
</P
5444 > : Russian Cyrillic
5445 UNIX character set. The parameter
<TT
5453 > be set to code page
5463 > in order for the conversion
5464 to the UNIX character set to be done correctly.
</P
5472 character set. The parameter
<TT
5480 > be set to code page
5490 > in order for the conversion
5491 to the UNIX character set to be done correctly.
</P
5498 > : Alternate mapping
5499 for Russian Cyrillic UNIX character set. The parameter
5503 >client code page
</I
5508 be set to code page
866 if the
<TT
5514 parameter is set to
<TT
5518 conversion to the UNIX character set to be done correctly.
</P
5524 >. These MSDOS code page to UNIX character
5525 set mappings should be dynamic, like the loading of MS DOS code pages,
5528 >Normally this parameter is not set, meaning no filename
5529 translation is done.
</P
5533 >character set =
<empty string
></B
5538 >character set = ISO8859-
1</B
5543 NAME=
"CLIENTCODEPAGE"
5545 >client code page (G)
</DT
5548 >This parameter specifies the DOS code page
5549 that the clients accessing Samba are using. To determine what code
5550 page a Windows or DOS client is using, open a DOS command prompt
5551 and type the command
<B
5555 the code page. The default for USA MS-DOS, Windows
95, and
5556 Windows NT releases is code page
437. The default for western
5557 European releases of the above operating systems is code page
850.
</P
5559 >This parameter tells
<A
5573 > files to dynamically load on startup. These files,
5574 described more fully in the manual page
<A
5575 HREF=
"make_smbcodepage.1.html"
5579 >make_smbcodepage(
1)
</B
5584 > how to map lower to upper case characters to provide
5585 the case insensitivity of filenames that Windows clients expect.
</P
5587 >Samba currently ships with the following code page files :
</P
5593 >Code Page
437 - MS-DOS Latin US
</P
5597 >Code Page
737 - Windows '
95 Greek
</P
5601 >Code Page
850 - MS-DOS Latin
1</P
5605 >Code Page
852 - MS-DOS Latin
2</P
5609 >Code Page
861 - MS-DOS Icelandic
</P
5613 >Code Page
866 - MS-DOS Cyrillic
</P
5617 >Code Page
932 - MS-DOS Japanese SJIS
</P
5621 >Code Page
936 - MS-DOS Simplified Chinese
</P
5625 >Code Page
949 - MS-DOS Korean Hangul
</P
5629 >Code Page
950 - MS-DOS Traditional Chinese
</P
5633 >Thus this parameter may have any of the values
437,
737,
850,
852,
5634 861,
932,
936,
949, or
950. If you don't find the codepage you need,
5635 read the comments in one of the other codepage files and the
5638 >make_smbcodepage(
1)
</B
5639 > man page and write one. Please
5640 remember to donate it back to the Samba user community.
</P
5642 >This parameter co-operates with the
<TT
5648 > parameter in determining what characters are
5649 valid in filenames and how capitalization is done. If you set both
5650 this parameter and the
<TT
5659 >client code page
</I
5664 > be set before the
<TT
5670 > parameter in the
<TT
5680 augment the character settings in the
<TT
5683 >client code page
</I
5691 >client code page
</I
5706 HREF=
"#CODEPAGEDIRECTORY"
5710 >code page directory
</I
5717 >client code page =
850</B
5722 >client code page =
936</B
5727 NAME=
"CODEPAGEDIRECTORY"
5729 >code page directory (G)
</DT
5732 >Define the location of the various client code page
5736 HREF=
"#CLIENTCODEPAGE"
5748 >code page directory = ${prefix}/lib/codepages
5754 >code page directory = /usr/share/samba/codepages
5762 >codingsystem (G)
</DT
5765 >This parameter is used to determine how incoming
5766 Shift-JIS Japanese characters are mapped from the incoming
<A
5767 HREF=
"#CLIENTCODEPAGE"
5771 >client code page
</I
5775 > used by the client, into file names in the UNIX filesystem.
5779 >client code page
</I
5782 932 (Japanese Shift-JIS). The options are :
</P
5791 > - Shift-JIS. Does no
5792 conversion of the incoming filename.
</P
5798 >JIS8, J8BB, J8BH, J8@B,
5800 > - Convert from incoming Shift-JIS to eight
5801 bit JIS code with different shift-in, shift out codes.
</P
5807 >JIS7, J7BB, J7BH, J7@B, J7@J,
5809 > - Convert from incoming Shift-JIS to seven bit
5810 JIS code with different shift-in, shift out codes.
</P
5816 >JUNET, JUBB, JUBH, JU@B, JU@J, JU@H
</TT
5818 - Convert from incoming Shift-JIS to JUNET code with different shift-in,
5826 > - Convert an incoming
5827 Shift-JIS character to EUC code.
</P
5834 > - Convert an incoming
5835 Shift-JIS character to a
3 byte hex representation, i.e.
5846 > - Convert an incoming
5847 Shift-JIS character to the
3 byte hex representation used by
5848 the Columbia AppleTalk Program (CAP), i.e.
<TT
5852 This is used for compatibility between Samba and CAP.
</P
5858 >coding system =
<empty value
></B
5869 >This is a text field that is seen next to a share
5870 when a client does a queries the server, either via the network
5871 neighborhood or via
<B
5874 > to list what shares
5877 >If you want to set the string that is displayed next to the
5878 machine name then see the
<A
5879 HREF=
"#SERVERSTRING"
5889 >No comment string
</EM
5894 >comment = Fred's Files
</B
5901 >config file (G)
</DT
5904 >This allows you to override the config file
5905 to use, instead of the default (usually
<TT
5909 There is a chicken and egg problem here as this option is set
5910 in the config file!
</P
5912 >For this reason, if the name of the config file has changed
5913 when the parameters are loaded then it will reload them from
5914 the new config file.
</P
5916 >This option takes the usual substitutions, which can
5919 >If the config file doesn't exist then it won't be loaded
5920 (allowing you to special case the config files of just a few
5925 >config file = /usr/local/samba/lib/smb.conf.%m
5936 >This parameter allows you to
"clone" service
5937 entries. The specified service is simply duplicated under the
5938 current service's name. Any parameters specified in the current
5939 section will override those in the section being copied.
</P
5941 >This feature lets you set up a 'template' service and
5942 create similar services easily. Note that the service being
5943 copied must occur earlier in the configuration file than the
5944 service doing the copying.
</P
5952 >copy = otherservice
</B
5959 >create mask (S)
</DT
5962 >A synonym for this parameter is
5974 >When a file is created, the necessary permissions are
5975 calculated according to the mapping from DOS modes to UNIX
5976 permissions, and the resulting UNIX mode is then bit-wise 'AND'ed
5977 with this parameter. This parameter may be thought of as a bit-wise
5978 MASK for the UNIX modes of a file. Any bit
<EM
5981 set here will be removed from the modes set on a file when it is
5984 >The default value of this parameter removes the
5985 'group' and 'other' write and execute bits from the UNIX modes.
</P
5987 >Following this Samba will bit-wise 'OR' the UNIX mode created
5988 from this parameter with the value of the
<A
5989 HREF=
"#FORCECREATEMODE"
5993 >force create mode
</I
5997 parameter which is set to
000 by default.
</P
5999 >This parameter does not affect directory modes. See the
6001 HREF=
"#DIRECTORYMODE"
6012 HREF=
"#FORCECREATEMODE"
6020 > parameter for forcing particular mode
6021 bits to be set on created files. See also the
<A
6022 HREF=
"#DIRECTORYMODE"
6029 > parameter for masking
6030 mode bits on created directories. See also the <A
6031 HREF="#INHERITPERMISSIONS
"
6035 >inherit permissions</I
6040 >Note that by default this parameter does not apply to permissions
6041 set by Windows NT/2000 ACL editors. If the administrator wishes to enforce
6042 this mask on access control lists also, they need to set the <A
6043 HREF="#RESTRICTACLWITHMASK
"
6055 >create mask = 0744</B
6060 >create mask = 0775</B
6067 >create mode (S)</DT
6070 >This is a synonym for <A
6087 >The value of the parameter (a decimal integer)
6088 represents the number of minutes of inactivity before a connection
6089 is considered dead, and it is disconnected. The deadtime only takes
6090 effect if the number of open files is zero.</P
6092 >This is useful to stop a server's resources being
6093 exhausted by a large number of inactive connections.</P
6095 >Most clients have an auto-reconnect feature when a
6096 connection is broken so in most cases this parameter should be
6097 transparent to users.</P
6099 >Using this parameter with a timeout of a few minutes
6100 is recommended for most systems.</P
6102 >A deadtime of zero indicates that no auto-disconnection
6103 should be performed.</P
6117 NAME="DEBUGHIRESTIMESTAMP
"
6119 >debug hires timestamp (G)</DT
6122 >Sometimes the timestamps in the log messages
6123 are needed with a resolution of higher that seconds, this
6124 boolean parameter adds microsecond resolution to the timestamp
6125 message header when turned on.</P
6127 >Note that the parameter <A
6128 HREF="#DEBUGTIMESTAMP
"
6132 > debug timestamp</I
6135 > must be on for this to have an
6140 >debug hires timestamp = no</B
6150 >When using only one log file for more then one
6151 forked smbd-process there may be hard to follow which process
6152 outputs which message. This boolean parameter is adds the process-id
6153 to the timestamp message headers in the logfile when turned on.</P
6155 >Note that the parameter <A
6156 HREF="#DEBUGTIMESTAMP
"
6160 > debug timestamp</I
6163 > must be on for this to have an
6173 NAME="DEBUGTIMESTAMP
"
6175 >debug timestamp (G)</DT
6178 >Samba 2.2 debug log messages are timestamped
6179 by default. If you are running at a high <A
6188 can be distracting. This boolean parameter allows timestamping
6189 to be turned off.</P
6193 >debug timestamp = yes</B
6203 >Samba is sometimes run as root and sometime
6204 run as the connected user, this boolean parameter inserts the
6205 current euid, egid, uid and gid to the timestamp message headers
6206 in the log file if turned on.</P
6208 >Note that the parameter <A
6209 HREF="#DEBUGTIMESTAMP
"
6213 > debug timestamp</I
6216 > must be on for this to have an
6231 >The value of the parameter (an integer) allows
6232 the debug level (logging level) to be specified in the
6236 > file. This is to give greater
6237 flexibility in the configuration of the system.</P
6239 >The default will be the debug level specified on
6240 the command line or level zero if none was specified.</P
6255 HREF="#DEFAULTSERVICE
"
6259 > default service</I
6268 >default case (S)</DT
6271 >See the section on <A
6275 HREF="#SHORTPRESERVECASE
"
6279 >short preserve case"</I
6286 >default case = lower
</B
6291 NAME=
"DEFAULTSERVICE"
6293 >default service (G)
</DT
6296 >This parameter specifies the name of a service
6297 which will be connected to if the service actually requested cannot
6298 be found. Note that the square brackets are
<EM
6301 given in the parameter value (see example below).
</P
6303 >There is no default value for this parameter. If this
6304 parameter is not given, attempting to connect to a nonexistent
6305 service results in an error.
</P
6307 >Typically the default service would be a
<A
6325 >Also note that the apparent service name will be changed
6326 to equal that of the requested service, this is very useful as it
6327 allows you to use macros like
<TT
6333 a wildcard service.
</P
6335 >Note also that any
"_" characters in the name of the service
6336 used in the default service will get mapped to a
"/". This allows for
6337 interesting things.
</P
6348 CLASS=
"PROGRAMLISTING"
6350 default service = pub
6362 NAME=
"DELETEPRINTERCOMMAND"
6364 >delete printer command (G)
</DT
6367 >With the introduction of MS-RPC based printer
6368 support for Windows NT/
2000 clients in Samba
2.2, it is now
6369 possible to delete printer at run time by issuing the
6370 DeletePrinter() RPC call.
</P
6372 >For a Samba host this means that the printer must be
6373 physically deleted from underlying printing system. The
<TT
6376 > deleteprinter command
</I
6378 > defines a script to be run which
6379 will perform the necessary operations for removing the printer
6380 from the print system and from
<TT
6389 >delete printer command
</I
6392 automatically called with only one parameter:
<TT
6402 >delete printer command
</I
6408 > will reparse the
<TT
6411 > to associated printer no longer exists.
6412 If the sharename is still valid, then
<B
6416 > will return an ACCESS_DENIED error to the client.
</P
6419 HREF=
"#ADDPRINTERCOMMAND"
6423 > add printer command
</I
6436 HREF=
"#SHOWADDPRINTERWIZARD"
6452 >deleteprinter command = /usr/bin/removeprinter
6458 NAME=
"DELETEREADONLY"
6460 >delete readonly (S)
</DT
6463 >This parameter allows readonly files to be deleted.
6464 This is not normal DOS semantics, but is allowed by UNIX.
</P
6466 >This option may be useful for running applications such
6467 as rcs, where UNIX file ownership prevents changing file
6468 permissions, and DOS semantics prevent deletion of a read only file.
</P
6472 >delete readonly = no
</B
6477 NAME=
"DELETESHARECOMMAND"
6479 >delete share command (G)
</DT
6482 >Samba
2.2.0 introduced the ability to dynamically
6483 add and delete shares via the Windows NT
4.0 Server Manager. The
6487 >delete share command
</I
6489 > is used to define an
6490 external program or script which will remove an existing service
6494 >. In order to successfully
6498 >delete share command
</I
6504 requires that the administrator be connected using a root account (i.e.
6511 > will automatically invoke the
6515 >delete share command
</I
6517 > with two parameters.
6544 the existing service.
6549 > This parameter is only used to remove file shares. To delete printer shares,
6551 HREF=
"#DELETEPRINTERCOMMAND"
6563 HREF=
"#ADDSHARECOMMAND"
6572 HREF=
"#CHANGESHARECOMMAND"
6589 >delete share command = /usr/local/bin/delshare
</B
6594 NAME=
"DELETEUSERSCRIPT"
6596 >delete user script (G)
</DT
6599 >This is the full pathname to a script that will
6609 > under special circumstances
6612 >Normally, a Samba server requires that UNIX users are
6613 created for all users accessing files on this server. For sites
6614 that use Windows NT account databases as their primary user database
6615 creating these users and keeping the user list in sync with the
6616 Windows NT PDC is an onerous task. This option allows
<B
6619 > to delete the required UNIX users
<EM
6622 > when a user accesses the Samba server and the
6623 Windows NT user no longer exists.
</P
6625 >In order to use this option,
<B
6640 > must be set to a full pathname for a script
6641 that will delete a UNIX user given one argument of
<TT
6647 >, which expands into the UNIX user name to delete.
6650 > that this is different to the
<A
6651 HREF=
"#ADDUSERSCRIPT"
6659 which will work with the
<TT
6670 >. The reason for this
6671 is only when Samba is a domain member does it get the information
6672 on an attempted user logon that a user no longer exists. In the
6678 > mode a missing user
6679 is treated the same as an invalid password logon attempt. Deleting
6680 the user in this circumstance would not be a good idea.
</P
6682 >When the Windows user attempts to access the Samba server,
6685 > (session setup in the SMB protocol)
6690 HREF=
"#PASSWORDSERVER"
6697 > and attempts to authenticate
6698 the given user with the given password. If the authentication fails
6699 with the specific Domain error code meaning that the user no longer
6703 > attempts to find a UNIX user in
6704 the UNIX password database that matches the Windows user account. If
6705 this lookup succeeds, and
<TT
6708 >delete user script
</I
6714 > will all the specified script
6717 >, expanding any
<TT
6723 argument to be the user name to delete.
</P
6725 >This script should delete the given UNIX username. In this way,
6726 UNIX users are dynamically deleted to match existing Windows NT
6730 HREF=
"#SECURITYEQUALSDOMAIN"
6734 HREF=
"#PASSWORDSERVER"
6743 HREF=
"#ADDUSERSCRIPT"
6755 >delete user script =
<empty string
>
6761 >delete user script = /usr/local/samba/bin/del_user
6767 NAME=
"DELETEVETOFILES"
6769 >delete veto files (S)
</DT
6772 >This option is used when Samba is attempting to
6773 delete a directory that contains one or more vetoed directories
6783 option). If this option is set to False (the default) then if a vetoed
6784 directory contains any non-vetoed files or directories then the
6785 directory delete will fail. This is usually what you want.
</P
6787 >If this option is set to
<TT
6791 will attempt to recursively delete any files and directories within
6792 the vetoed directory. This can be useful for integration with file
6793 serving systems such as NetAtalk which create meta-files within
6794 directories you might normally veto DOS/Windows users from seeing
6802 >delete veto files = yes
</B
6804 directories to be transparently deleted when the parent directory
6805 is deleted (so long as the user has permissions to do so).
</P
6820 >delete veto files = no
</B
6845 >dfree command (G)
</DT
6854 only be used on systems where a problem occurs with the internal
6855 disk space calculations. This has been known to happen with Ultrix,
6856 but may occur with other operating systems. The symptom that was
6857 seen was an error of
"Abort Retry Ignore" at the end of each
6858 directory listing.
</P
6860 >This setting allows the replacement of the internal routines to
6861 calculate the total disk space and amount available with an external
6862 routine. The example below gives a possible script that might fulfill
6865 >The external program will be passed a single parameter indicating
6866 a directory in the filesystem being queried. This will typically consist
6870 >. The script should return two
6871 integers in ASCII. The first should be the total disk space in blocks,
6872 and the second should be the number of available blocks. An optional
6873 third return value can give the block size in bytes. The default
6874 blocksize is
1024 bytes.
</P
6876 >Note: Your script should
<EM
6879 setgid and should be owned by (and writeable only by) root!
</P
6882 >By default internal routines for
6883 determining the disk capacity and remaining space will be used.
6889 >dfree command = /usr/local/samba/bin/dfree
6893 >Where the script dfree (which must be made executable) could be:
</P
6902 CLASS=
"PROGRAMLISTING"
6905 df $
1 | tail -
1 | awk '{print $
2" "$
4}'
6912 >or perhaps (on Sys V based systems):
</P
6921 CLASS=
"PROGRAMLISTING"
6924 /usr/bin/df -k $
1 | tail -
1 | awk '{print $
3" "$
5}'
6931 >Note that you may have to replace the command names
6932 with full path names on some systems.
</P
6954 NAME=
"DIRECTORYMASK"
6956 >directory mask (S)
</DT
6959 >This parameter is the octal modes which are
6960 used when converting DOS modes to UNIX modes when creating UNIX
6963 >When a directory is created, the necessary permissions are
6964 calculated according to the mapping from DOS modes to UNIX permissions,
6965 and the resulting UNIX mode is then bit-wise 'AND'ed with this
6966 parameter. This parameter may be thought of as a bit-wise MASK for
6967 the UNIX modes of a directory. Any bit
<EM
6970 here will be removed from the modes set on a directory when it is
6973 >The default value of this parameter removes the 'group'
6974 and 'other' write bits from the UNIX mode, allowing only the
6975 user who owns the directory to modify it.
</P
6977 >Following this Samba will bit-wise 'OR' the UNIX mode
6978 created from this parameter with the value of the
<A
6979 HREF=
"#FORCEDIRECTORYMODE"
6983 >force directory mode
6987 > parameter. This parameter is set to
000 by
6988 default (i.e. no extra mode bits are added).
</P
6990 >Note that by default this parameter does not apply to permissions
6991 set by Windows NT/
2000 ACL editors. If the administrator wishes to enforce
6992 this mask on access control lists also, they need to set the
<A
6993 HREF=
"#RESTRICTACLWITHMASK"
7004 HREF=
"#FORCEDIRECTORYMODE"
7012 > parameter to cause particular mode
7013 bits to always be set on created directories.
</P
7024 > parameter for masking mode bits on created files,
7026 HREF=
"#DIRECTORYSECURITYMASK"
7036 >Also refer to the
<A
7037 HREF=
"#INHERITPERMISSIONS"
7041 > inherit permissions
</I
7048 >directory mask =
0755</B
7053 >directory mask =
0775</B
7058 NAME=
"DIRECTORYMODE"
7060 >directory mode (S)
</DT
7064 HREF=
"#DIRECTORYMASK"
7075 NAME=
"DIRECTORYSECURITYMASK"
7077 >directory security mask (S)
</DT
7080 >This parameter controls what UNIX permission bits
7081 can be modified when a Windows NT client is manipulating the UNIX
7082 permission on a directory using the native NT security dialog
7085 >This parameter is applied as a mask (AND'ed with) to
7086 the changed permission bits, thus preventing any bits not in
7087 this mask from being modified. Essentially, zero bits in this
7088 mask may be treated as a set of bits the user is not allowed
7091 >If not set explicitly this parameter is set to the same
7093 HREF=
"#DIRECTORYMASK"
7101 > parameter. To allow a user to
7102 modify all the user/group/world permissions on a directory, set
7103 this parameter to
0777.
</P
7107 > that users who can access the
7108 Samba server through other means can easily bypass this restriction,
7109 so it is primarily useful for standalone
"appliance" systems.
7110 Administrators of most normal systems will probably want to set
7114 HREF=
"#FORCEDIRECTORYSECURITYMODE"
7118 > force directory security mode
</I
7122 HREF=
"#SECURITYMASK"
7131 HREF=
"#FORCESECURITYMODE"
7135 >force security mode
7143 >directory security mask =
<same as
7144 directory mask
></B
7149 >directory security mask =
0777</B
7164 when acting as a WINS server and finding that a NetBIOS name has not
7165 been registered, should treat the NetBIOS name word-for-word as a DNS
7166 name and do a lookup with the DNS server for that name on behalf of
7167 the name-querying client.
</P
7169 >Note that the maximum length for a NetBIOS name is
15
7170 characters, so the DNS name (or DNS alias) can likewise only be
7171 15 characters, maximum.
</P
7176 > spawns a second copy of itself to do the
7177 DNS name lookup requests, as doing a name lookup is a blocking
7180 >See also the parameter
<A
7197 NAME=
"DOMAINADMINGROUP"
7199 >domain admin group (G)
</DT
7202 >This parameter is intended as a temporary solution
7203 to enable users to be a member of the
"Domain Admins" group when
7204 a Samba host is acting as a PDC. A complete solution will be provided
7205 by a system for mapping Windows NT/
2000 groups onto UNIX groups.
7206 Please note that this parameter has a somewhat confusing name. It
7207 accepts a list of usernames and of group names in standard
7215 HREF=
"#DOMAINGUESTGROUP"
7224 HREF=
"#DOMAINLOGONS"
7236 >no domain administrators
</EM
7241 >domain admin group = root @wheel
</B
7246 NAME=
"DOMAINGUESTGROUP"
7248 >domain guest group (G)
</DT
7251 >This parameter is intended as a temporary solution
7252 to enable users to be a member of the
"Domain Guests" group when
7253 a Samba host is acting as a PDC. A complete solution will be provided
7254 by a system for mapping Windows NT/
2000 groups onto UNIX groups.
7255 Please note that this parameter has a somewhat confusing name. It
7256 accepts a list of usernames and of group names in standard
7264 HREF=
"#DOMAINADMINGROUP"
7273 HREF=
"#DOMAINLOGONS"
7285 >no domain guests
</EM
7290 >domain guest group = nobody @guest
</B
7297 >domain logons (G)
</DT
7300 >If set to true, the Samba server will serve
7301 Windows
95/
98 Domain logons for the
<A
7309 > it is in. Samba
2.2 also
7310 has limited capability to act as a domain controller for Windows
7311 NT
4 Domains. For more details on setting up this feature see
7312 the file DOMAINS.txt in the Samba documentation directory
<TT
7316 > shipped with the source code.
</P
7320 >domain logons = no
</B
7327 >domain master (G)
</DT
7337 > to enable WAN-wide browse list
7338 collation. Setting this option causes
<B
7342 claim a special domain specific NetBIOS name that identifies
7343 it as a domain master browser for its given
<A
7351 >. Local master browsers
7357 > on broadcast-isolated
7358 subnets will give this
<B
7361 > their local browse lists,
7370 for a complete copy of the browse list for the whole wide area
7371 network. Browser clients will then contact their local master browser,
7372 and will receive the domain-wide browse list, instead of just the list
7373 for their broadcast-isolated subnet.
</P
7375 >Note that Windows NT Primary Domain Controllers expect to be
7376 able to claim this
<TT
7382 NetBIOS name that identifies them as domain master browsers for
7388 > by default (i.e. there is no
7389 way to prevent a Windows NT PDC from attempting to do this). This
7390 means that if this parameter is set and
<B
7394 the special name for a
<TT
7400 NT PDC is able to do so then cross subnet browsing will behave
7401 strangely and may fail.
</P
7404 HREF=
"#DOMAINLOGONS"
7407 >domain logons = yes
</B
7410 >, then the default behavior is to enable the
<TT
7422 not enabled (the default setting), then neither will
<TT
7428 > be enabled by default.
</P
7432 >domain master = auto
</B
7439 >dont descend (S)
</DT
7442 >There are certain directories on some systems
7446 > tree under Linux) that are either not
7447 of interest to clients or are infinitely deep (recursive). This
7448 parameter allows you to specify a comma-delimited list of directories
7449 that the server should always show as empty.
</P
7451 >Note that Samba can be very fussy about the exact format
7452 of the
"dont descend" entries. For example you may need
<TT
7455 > instead of just
<TT
7459 Experimentation is the best policy :-)
</P
7462 >none (i.e., all directories are OK
7468 >dont descend = /proc,/dev
</B
7475 >dos filemode (S)
</DT
7478 > The default behavior in Samba is to provide
7479 UNIX-like behavor where only the owner of a file/directory is
7480 able to change the permissions on it. However, this behavior
7481 is often confusing to DOS/Windows users. Enabling this parameter
7482 allows a user who has write access to the file (by whatever
7483 means) to modify the permissions on it. Note that a user
7484 belonging to the group owning the file will not be allowed to
7485 change permissions if the group is only granted read access.
7486 Ownership of the file/directory is not changed, only the permissions
7491 >dos filemode = no
</B
7496 NAME=
"DOSFILETIMERESOLUTION"
7498 >dos filetime resolution (S)
</DT
7501 >Under the DOS and Windows FAT filesystem, the finest
7502 granularity on time resolution is two seconds. Setting this parameter
7503 for a share causes Samba to round the reported time down to the
7504 nearest two second boundary when a query call that requires one second
7505 resolution is made to
<A
7515 >This option is mainly used as a compatibility option for Visual
7516 C++ when used against Samba shares. If oplocks are enabled on a
7517 share, Visual C++ uses two different time reading calls to check if a
7518 file has changed since it was last read. One of these calls uses a
7519 one-second granularity, the other uses a two second granularity. As
7520 the two second call rounds any odd second down, then if the file has a
7521 timestamp of an odd number of seconds then the two timestamps will not
7522 match and Visual C++ will keep reporting the file has changed. Setting
7523 this option causes the two timestamps to match, and Visual C++ is
7528 >dos filetime resolution = no
</B
7535 >dos filetimes (S)
</DT
7538 >Under DOS and Windows, if a user can write to a
7539 file they can change the timestamp on it. Under POSIX semantics,
7540 only the owner of the file or root may change the timestamp. By
7541 default, Samba runs with POSIX semantics and refuses to change the
7542 timestamp on a file if the user
<B
7546 on behalf of is not the file owner. Setting this option to
<TT
7549 > allows DOS semantics and smbd will change the file
7550 timestamp as DOS requires.
</P
7554 >dos filetimes = no
</B
7559 NAME=
"ENCRYPTPASSWORDS"
7561 >encrypt passwords (G)
</DT
7564 >This boolean controls whether encrypted passwords
7565 will be negotiated with the client. Note that Windows NT
4.0 SP3 and
7566 above and also Windows
98 will by default expect encrypted passwords
7567 unless a registry entry is changed. To use encrypted passwords in
7568 Samba see the file ENCRYPTION.txt in the Samba documentation
7572 > shipped with the source code.
</P
7574 >In order for encrypted passwords to work correctly
7583 have access to a local
<A
7584 HREF=
"smbpasswd.5.html"
7592 HREF=
"smbpasswd.8.html"
7598 > program for information on how to set up
7599 and maintain this file), or set the
<A
7601 >security=[serve|domain]
</A
7606 > to authenticate against another
7611 >encrypt passwords = no
</B
7616 NAME=
"ENHANCEDBROWSING"
7618 >enhanced browsing (G)
</DT
7621 >This option enables a couple of enhancements to
7622 cross-subnet browse propogation that have been added in Samba
7623 but which are not standard in Microsoft implementations.
7625 >These enhancements are currently only available in
7626 the HEAD Samba CVS tree (not Samba
2.2.x).
</EM
7629 >The first enhancement to browse propogation consists of a regular
7630 wildcard query to a Samba WINS server for all Domain Master Browsers,
7631 followed by a browse synchronisation with each of the returned
7632 DMBs. The second enhancement consists of a regular randomised browse
7633 synchronisation with all currently known DMBs.
</P
7635 >You may wish to disable this option if you have a problem with empty
7636 workgroups not disappearing from browse lists. Due to the restrictions
7637 of the browse protocols these enhancements can cause a empty workgroup
7638 to stay around forever which can be annoying.
</P
7640 >In general you should leave this option enabled as it makes
7641 cross-subnet browse propogation much more reliable.
</P
7645 >enhanced browsing = yes
</B
7650 NAME=
"ENUMPORTSCOMMAND"
7652 >enumports command (G)
</DT
7655 >The concept of a
"port" is fairly foreign
7656 to UNIX hosts. Under Windows NT/
2000 print servers, a port
7657 is associated with a port monitor and generally takes the form of
7658 a local port (i.e. LPT1:, COM1:, FILE:) or a remote port
7659 (i.e. LPD Port Monitor, etc...). By default, Samba has only one
7662 >"Samba Printer Port"</TT
7664 Windows NT/
2000, all printers must have a valid port name.
7665 If you wish to have a list of ports displayed (
<B
7669 > does not use a port name for anything) other than
7672 >"Samba Printer Port"</TT
7677 >enumports command
</I
7680 a program which should generate a list of ports, one per line,
7681 to standard output. This listing will then be used in response
7682 to the level
1 and
2 EnumPorts() RPC.
</P
7685 >no enumports command
</EM
7690 >enumports command = /usr/bin/listports
7701 >This is a synonym for
<A
7713 NAME=
"FAKEDIRECTORYCREATETIMES"
7715 >fake directory create times (S)
</DT
7718 >NTFS and Windows VFAT file systems keep a create
7719 time for all files and directories. This is not the same as the
7720 ctime - status change time - that Unix keeps, so Samba by default
7721 reports the earliest of the various times Unix does keep. Setting
7722 this parameter for a share causes Samba to always report midnight
7723 1-
1-
1980 as the create time for directories.
</P
7725 >This option is mainly used as a compatibility option for
7726 Visual C++ when used against Samba shares. Visual C++ generated
7727 makefiles have the object directory as a dependency for each object
7728 file, and a make rule to create the directory. Also, when NMAKE
7729 compares timestamps it uses the creation time when examining a
7730 directory. Thus the object directory will be created if it does not
7731 exist, but once it does exist it will always have an earlier
7732 timestamp than the object files it contains.
</P
7734 >However, Unix time semantics mean that the create time
7735 reported by Samba will be updated whenever a file is created or
7736 or deleted in the directory. NMAKE finds all object files in
7737 the object directory. The timestamp of the last one built is then
7738 compared to the timestamp of the object dircetory. If the
7739 directory's timestamp if newer, then all object files
7740 will be rebuilt. Enabling this option
7741 ensures directories always predate their contents and an NMAKE build
7742 will proceed as expected.
</P
7746 >fake directory create times = no
</B
7753 >fake oplocks (S)
</DT
7756 >Oplocks are the way that SMB clients get permission
7757 from a server to locally cache file operations. If a server grants
7758 an oplock (opportunistic lock) then the client is free to assume
7759 that it is the only one accessing the file and it will aggressively
7760 cache file data. With some oplock types the client may even cache
7761 file open/close operations. This can give enormous performance benefits.
7766 >fake oplocks = yes
</B
7775 always grant oplock requests no matter how many clients are using
7778 >It is generally much better to use the real
<A
7787 than this parameter.
</P
7789 >If you enable this option on all read-only shares or
7790 shares that you know will only be accessed from one client at a
7791 time such as physically read-only media like CDROMs, you will see
7792 a big performance improvement on many operations. If you enable
7793 this option on shares where multiple clients may be accessing the
7794 files read-write at the same time you can get data corruption. Use
7795 this option carefully!
</P
7799 >fake oplocks = no
</B
7804 NAME=
"FOLLOWSYMLINKS"
7806 >follow symlinks (S)
</DT
7809 >This parameter allows the Samba administrator
7818 from following symbolic links in a particular share. Setting this
7822 > prevents any file or directory
7823 that is a symbolic link from being followed (the user will get an
7824 error). This option is very useful to stop users from adding a
7825 symbolic link to
<TT
7829 directory for instance. However it will slow filename lookups
7832 >This option is enabled (i.e.
<B
7836 follow symbolic links) by default.
</P
7840 >follow symlinks = yes
</B
7845 NAME=
"FORCECREATEMODE"
7847 >force create mode (S)
</DT
7850 >This parameter specifies a set of UNIX mode bit
7851 permissions that will
<EM
7854 file created by Samba. This is done by bitwise 'OR'ing these bits onto
7855 the mode bits of a file that is being created or having its
7856 permissions changed. The default for this parameter is (in octal)
7857 000. The modes in this parameter are bitwise 'OR'ed onto the file
7858 mode after the mask set in the
<TT
7864 parameter is applied.
</P
7866 >Note that by default this parameter does not apply to permissions
7867 set by Windows NT/
2000 ACL editors. If the administrator wishes to enforce
7868 this mask on access control lists also, they need to set the
<A
7869 HREF=
"#RESTRICTACLWITHMASK"
7879 >See also the parameter
<A
7888 > for details on masking mode bits on files.
</P
7891 HREF=
"#INHERITPERMISSIONS"
7903 >force create mode =
000</B
7908 >force create mode =
0755</B
7911 >would force all created files to have read and execute
7912 permissions set for 'group' and 'other' as well as the
7913 read/write/execute bits set for the 'user'.
</P
7917 NAME=
"FORCEDIRECTORYMODE"
7919 >force directory mode (S)
</DT
7922 >This parameter specifies a set of UNIX mode bit
7923 permissions that will
<EM
7925 > be set on a directory
7926 created by Samba. This is done by bitwise 'OR'ing these bits onto the
7927 mode bits of a directory that is being created. The default for this
7928 parameter is (in octal)
0000 which will not add any extra permission
7929 bits to a created directory. This operation is done after the mode
7930 mask in the parameter
<TT
7938 >Note that by default this parameter does not apply to permissions
7939 set by Windows NT/
2000 ACL editors. If the administrator wishes to enforce
7940 this mask on access control lists also, they need to set the
<A
7941 HREF=
"#RESTRICTACLWITHMASK"
7951 >See also the parameter
<A
7952 HREF=
"#DIRECTORYMASK"
7959 > for details on masking mode bits
7960 on created directories.
</P
7963 HREF=
"#INHERITPERMISSIONS"
7967 > inherit permissions
</I
7974 >force directory mode =
000</B
7979 >force directory mode =
0755</B
7982 >would force all created directories to have read and execute
7983 permissions set for 'group' and 'other' as well as the
7984 read/write/execute bits set for the 'user'.
</P
7988 NAME=
"FORCEDIRECTORYSECURITYMODE"
7991 security mode (S)
</DT
7994 >This parameter controls what UNIX permission bits
7995 can be modified when a Windows NT client is manipulating the UNIX
7996 permission on a directory using the native NT security dialog box.
</P
7998 >This parameter is applied as a mask (OR'ed with) to the
7999 changed permission bits, thus forcing any bits in this mask that
8000 the user may have modified to be on. Essentially, one bits in this
8001 mask may be treated as a set of bits that, when modifying security
8002 on a directory, the user has always set to be 'on'.
</P
8004 >If not set explicitly this parameter is set to the same
8006 HREF=
"#FORCEDIRECTORYMODE"
8014 > parameter. To allow
8015 a user to modify all the user/group/world permissions on a
8016 directory without restrictions, set this parameter to
000.
</P
8020 > that users who can access the
8021 Samba server through other means can easily bypass this restriction,
8022 so it is primarily useful for standalone
"appliance" systems.
8023 Administrators of most normal systems will probably want to set
8027 HREF=
"#DIRECTORYSECURITYMASK"
8031 > directory security mask
</I
8035 HREF=
"#SECURITYMASK"
8044 HREF=
"#FORCESECURITYMODE"
8048 >force security mode
8056 >force directory security mode =
<same as
8057 force directory mode
></B
8062 >force directory security mode =
0</B
8069 >force group (S)
</DT
8072 >This specifies a UNIX group name that will be
8073 assigned as the default primary group for all users connecting
8074 to this service. This is useful for sharing files by ensuring
8075 that all access to files on service will use the named group for
8076 their permissions checking. Thus, by assigning permissions for this
8077 group to the files and directories within this service the Samba
8078 administrator can restrict or allow sharing of these files.
</P
8080 >In Samba
2.0.5 and above this parameter has extended
8081 functionality in the following way. If the group name listed here
8082 has a '+' character prepended to it then the current user accessing
8083 the share only has the primary group default assigned to this group
8084 if they are already assigned as a member of that group. This allows
8085 an administrator to decide that only users who are already in a
8086 particular group will create files with group ownership set to that
8087 group. This gives a finer granularity of ownership assignment. For
8088 example, the setting
<TT
8090 >force group = +sys
</TT
8092 that only users who are already in group sys will have their default
8093 primary group assigned to sys when accessing this Samba share. All
8094 other users will retain their ordinary primary group.
</P
8105 > parameter is also set the group specified in
8111 > will override the primary group
8131 >no forced group
</EM
8136 >force group = agroup
</B
8141 NAME=
"FORCESECURITYMODE"
8143 >force security mode (S)
</DT
8146 >This parameter controls what UNIX permission
8147 bits can be modified when a Windows NT client is manipulating
8148 the UNIX permission on a file using the native NT security dialog
8151 >This parameter is applied as a mask (OR'ed with) to the
8152 changed permission bits, thus forcing any bits in this mask that
8153 the user may have modified to be on. Essentially, one bits in this
8154 mask may be treated as a set of bits that, when modifying security
8155 on a file, the user has always set to be 'on'.
</P
8157 >If not set explicitly this parameter is set to the same
8159 HREF=
"#FORCECREATEMODE"
8167 > parameter. To allow a user to
8168 modify all the user/group/world permissions on a file, with no
8169 restrictions set this parameter to
000.
</P
8173 > that users who can access
8174 the Samba server through other means can easily bypass this restriction,
8175 so it is primarily useful for standalone
"appliance" systems.
8176 Administrators of most normal systems will probably want to set
8180 HREF=
"#FORCEDIRECTORYSECURITYMODE"
8184 > force directory security mode
</I
8189 HREF=
"#DIRECTORYSECURITYMASK"
8198 HREF=
"#SECURITYMASK"
8209 >force security mode =
<same as force
8215 >force security mode =
0</B
8225 >This specifies a UNIX user name that will be
8226 assigned as the default user for all users connecting to this service.
8227 This is useful for sharing files. You should also use it carefully
8228 as using it incorrectly can cause security problems.
</P
8230 >This user name only gets used once a connection is established.
8231 Thus clients still need to connect as a valid user and supply a
8232 valid password. Once connected, all file operations will be performed
8233 as the
"forced user", no matter what username the client connected
8234 as. This can be very useful.
</P
8236 >In Samba
2.0.5 and above this parameter also causes the
8237 primary group of the forced user to be used as the primary group
8238 for all file activity. Prior to
2.0.5 the primary group was left
8239 as the primary group of the connecting user (this was a bug).
</P
8258 >force user = auser
</B
8268 >This parameter allows the administrator to
8269 configure the string that specifies the type of filesystem a share
8270 is using that is reported by
<A
8278 > when a client queries the filesystem type
8279 for a share. The default type is
<TT
8283 compatibility with Windows NT but this can be changed to other
8307 >getwd cache (G)
</DT
8310 >This is a tuning option. When this is enabled a
8311 caching algorithm will be used to reduce the time taken for getwd()
8312 calls. This can have a significant impact on performance, especially
8322 >parameter is set to
<TT
8329 >getwd cache = yes
</B
8354 >guest account (S)
</DT
8357 >This is a username which will be used for access
8358 to services which are specified as
<A
8366 > (see below). Whatever privileges this
8367 user has will be available to any client connecting to the guest service.
8368 Typically this user will exist in the password file, but will not
8369 have a valid login. The user account
"ftp" is often a good choice
8370 for this parameter. If a username is specified in a given service,
8371 the specified username overrides this one.
</P
8373 >One some systems the default guest account
"nobody" may not
8374 be able to print. Use another account in this case. You should test
8375 this by trying to log in as your guest user (perhaps by using the
8379 > command) and trying to print using the
8380 system print command such as
<B
8389 >specified at compile time, usually
8395 >guest account = ftp
</B
8405 >If this parameter is
<TT
8409 a service, then no password is required to connect to the service.
8410 Privileges will be those of the
<A
8411 HREF=
"#GUESTACCOUNT"
8420 >See the section below on
<A
8428 > for more information about this option.
8443 >If this parameter is
<TT
8447 a service, then only guest connections to the service are permitted.
8448 This parameter will have no effect if
<A
8456 > is not set for the service.
</P
8458 >See the section below on
<A
8466 > for more information about this option.
8478 >hide dot files (S)
</DT
8481 >This is a boolean parameter that controls whether
8482 files starting with a dot appear as hidden files.
</P
8486 >hide dot files = yes
</B
8496 >This is a list of files or directories that are not
8497 visible but are accessible. The DOS 'hidden' attribute is applied
8498 to any files or directories that match.
</P
8500 >Each entry in the list must be separated by a '/',
8501 which allows spaces to be included in the entry. '*'
8502 and '?' can be used to specify multiple files or directories
8503 as in DOS wildcards.
</P
8505 >Each entry must be a Unix path, not a DOS path and must
8506 not include the Unix directory separator '/'.
</P
8508 >Note that the case sensitivity option is applicable
8511 >Setting this parameter will affect the performance of Samba,
8512 as it will be forced to check all files and directories for a match
8513 as they are scanned.
</P
8516 HREF=
"#HIDEDOTFILES"
8533 HREF=
"#CASESENSITIVE"
8543 >no file are hidden
</EM
8549 /.*/DesktopFolderDB/TrashFor%m/resource.frk/
</B
8552 >The above example is based on files that the Macintosh
8553 SMB client (DAVE) available from
<A
8554 HREF=
"http://www.thursby.com"
8558 > creates for internal use, and also still hides
8559 all files beginning with a dot.
</P
8563 NAME=
"HIDELOCALUSERS"
8565 >hide local users(G)
</DT
8568 >This parameter toggles the hiding of local UNIX
8569 users (root, wheel, floppy, etc) from remote clients.
</P
8573 >hide local users = no
</B
8580 >homedir map (G)
</DT
8608 > then this parameter
8609 specifies the NIS (or YP) map from which the server for the user's
8610 home directory should be extracted. At present, only the Sun
8611 auto.home map format is understood. The form of the map is:
</P
8615 >username server:/some/file/system
</B
8618 >and the program will extract the servername from before
8619 the first ':'. There should probably be a better parsing system
8620 that copes with different map formats and also Amd (another
8621 automounter) maps.
</P
8625 >A working NIS client is required on
8626 the system for this option to work.
</P
8638 HREF=
"#DOMAINLOGONS"
8650 >homedir map =
<empty string
></B
8655 >homedir map = amd.homedir
</B
8665 >This boolean parameter is only available
8666 if Samba has been configured and compiled with the
<B
8669 > option. If set to
<TT
8673 Samba will act as a Dfs server, and allow Dfs-aware clients
8674 to browse Dfs trees hosted on the server.
</P
8684 > share level parameter. For
8685 more information on setting up a Dfs tree on Samba,
8687 HREF=
"msdfs_setup.html"
8689 >msdfs_setup.html
</A
8702 >hosts allow (S)
</DT
8705 >A synonym for this parameter is
<TT
8713 >This parameter is a comma, space, or tab delimited
8714 set of hosts which are permitted to access a service.
</P
8716 >If specified in the [global] section then it will
8717 apply to all services, regardless of whether the individual
8718 service has a different setting.
</P
8720 >You can specify the hosts by name or IP number. For
8721 example, you could restrict access to only the hosts on a
8722 Class C subnet with something like
<B
8724 >allow hosts =
150.203.5.
8726 >. The full syntax of the list is described in the man
8729 >hosts_access(
5)
</TT
8730 >. Note that this man
8731 page may not be present on your system, so a brief description will
8732 be given here also.
</P
8734 >Note that the localhost address
127.0.0.1 will always
8735 be allowed access unless specifically denied by a
<A
8745 >You can also specify hosts by network/netmask pairs and
8746 by netgroup names if your system supports netgroups. The
8749 > keyword can also be used to limit a
8750 wildcard list. The following examples may provide some help:
</P
8752 >Example
1: allow all IPs in
150.203.*.*; except one
</P
8756 >hosts allow =
150.203. EXCEPT
150.203.6.66</B
8759 >Example
2: allow hosts that match the given network/netmask
</P
8763 >hosts allow =
150.203.15.0/
255.255.255.0</B
8766 >Example
3: allow a couple of hosts
</P
8770 >hosts allow = lapland, arvidsjaur
</B
8773 >Example
4: allow only hosts in NIS netgroup
"foonet", but
8774 deny access from one particular host
</P
8778 >hosts allow = @foonet
</B
8783 >hosts deny = pirate
</B
8786 >Note that access still requires suitable user-level passwords.
</P
8789 HREF=
"testparm.1.html"
8796 > for a way of testing your host access to see if it does
8800 >none (i.e., all hosts permitted access)
8806 >allow hosts =
150.203.5. myhost.mynet.edu.au
8817 >The opposite of
<TT
8823 - hosts listed here are
<EM
8825 > permitted access to
8826 services unless the specific services have their own lists to override
8827 this one. Where the lists conflict, the
<TT
8833 list takes precedence.
</P
8836 >none (i.e., no hosts specifically excluded)
8842 >hosts deny =
150.203.4. badhost.mynet.edu.au
8850 >hosts equiv (G)
</DT
8853 >If this global parameter is a non-null string,
8854 it specifies the name of a file to read for the names of hosts
8855 and users who will be allowed access without specifying a password.
8858 >This is not be confused with
<A
8866 > which is about hosts
8867 access to services and is more useful for guest services.
<TT
8872 > may be useful for NT clients which will
8873 not supply passwords to samba.
</P
8883 > can be a major security hole. This is because you are
8884 trusting the PC to supply the correct username. It is very easy to
8885 get a PC to supply a false username. I recommend that the
8891 > option be only used if you really
8892 know what you are doing, or perhaps on a home network where you trust
8893 your spouse and kids. And only if you
<EM
8899 >no host equivalences
</EM
8904 >hosts equiv = /etc/hosts.equiv
</B
8914 >This allows you to include one config file
8915 inside another. The file is included literally, as though typed
8918 >It takes the standard substitutions, except
<TT
8938 >no file included
</EM
8943 >include = /usr/local/samba/lib/admin_smb.conf
8949 NAME=
"INHERITPERMISSIONS"
8951 >inherit permissions (S)
</DT
8954 >The permissions on new files and directories
8955 are normally governed by
<A
8964 HREF=
"#DIRECTORYMASK"
8972 HREF=
"#FORCECREATEMODE"
8976 >force create mode
</I
8981 HREF=
"#FORCEDIRECTORYMODE"
8989 > but the boolean inherit
8990 permissions parameter overrides this.
</P
8992 >New directories inherit the mode of the parent directory,
8993 including bits such as setgid.
</P
8995 >New files inherit their read/write bits from the parent
8996 directory. Their execute bits continue to be determined by
9026 >Note that the setuid bit is
<EM
9029 inheritance (the code explicitly prohibits this).
</P
9031 >This can be particularly useful on large systems with
9032 many users, perhaps several thousand,to allow a single [homes]
9033 share to be used flexibly by each user.
</P
9045 HREF=
"#DIRECTORYMASK"
9053 HREF=
"#FORCECREATEMODE"
9057 >force create mode
</I
9061 HREF=
"#FORCEDIRECTORYMODE"
9065 >force directory mode
</I
9073 >inherit permissions = no
</B
9083 >This option allows you to override the default
9084 network interfaces list that Samba will use for browsing, name
9085 registration and other NBT traffic. By default Samba will query
9086 the kernel for the list of all active interfaces and use any
9087 interfaces except
127.0.0.1 that are broadcast capable.
</P
9089 >The option takes a list of interface strings. Each string
9090 can be in any of the following forms:
</P
9096 >a network interface name (such as eth0).
9097 This may include shell-like wildcards so eth* will match
9098 any interface starting with the substring
"eth"</P
9102 >an IP address. In this case the netmask is
9103 determined from the list of interfaces obtained from the
9108 >an IP/mask pair.
</P
9112 >a broadcast/mask pair.
</P
9116 >The
"mask" parameters can either be a bit length (such
9117 as
24 for a C class network) or a full netmask in dotted
9120 >The
"IP" parameters above can either be a full dotted
9121 decimal IP address or a hostname which will be looked up via
9122 the OS's normal hostname resolution mechanisms.
</P
9124 >For example, the following line:
</P
9128 >interfaces = eth0
192.168.2.10/
24 192.168.3.10/
255.255.255.0
9132 >would configure three network interfaces corresponding
9133 to the eth0 device and IP addresses
192.168.2.10 and
192.168.3.10.
9134 The netmasks of the latter two interfaces would be set to
255.255.255.0.
</P
9137 HREF=
"#BINDINTERFACESONLY"
9148 >all active interfaces except
127.0.0.1
9149 that are broadcast capable
</EM
9156 >invalid users (S)
</DT
9159 >This is a list of users that should not be allowed
9160 to login to this service. This is really a
<EM
9163 check to absolutely ensure an improper setting does not breach
9166 >A name starting with a '@' is interpreted as an NIS
9167 netgroup first (if your system supports NIS), and then as a UNIX
9168 group if the name was not found in the NIS netgroup database.
</P
9170 >A name starting with '+' is interpreted only
9171 by looking in the UNIX group database. A name starting with
9172 '
&' is interpreted only by looking in the NIS netgroup database
9173 (this requires NIS to be working on your system). The characters
9174 '+' and '
&' may be used at the start of the name in either order
9181 UNIX group database, followed by the NIS netgroup database, and
9187 > means check the NIS
9188 netgroup database, followed by the UNIX group database (the
9189 same as the '@' prefix).</P
9191 >The current servicename is substituted for <TT
9197 This is useful in the [homes] section.</P
9211 >no invalid users</EM
9216 >invalid users = root fred admin @wheel
9227 >The value of the parameter (an integer) represents
9228 the number of seconds between <TT
9234 packets. If this parameter is zero, no keepalive packets will be
9235 sent. Keepalive packets, if sent, allow the server to tell whether
9236 a client is still present and responding.</P
9238 >Keepalives should, in general, not be needed if the socket
9239 being used has the SO_KEEPALIVE attribute set on it (see <A
9240 HREF="#SOCKETOPTIONS
"
9248 Basically you should only use this option if you strike difficulties.</P
9262 NAME="KERNELOPLOCKS
"
9264 >kernel oplocks (G)</DT
9267 >For UNIXes that support kernel based <A
9276 (currently only IRIX and the Linux 2.4 kernel), this parameter
9277 allows the use of them to be turned on or off.</P
9279 >Kernel oplocks support allows Samba <TT
9285 > to be broken whenever a local UNIX process or NFS operation
9286 accesses a file that <A
9294 > has oplocked. This allows complete data consistency between
9295 SMB/CIFS, NFS and local file access (and is a <EM
9298 cool feature :-).</P
9300 >This parameter defaults to <TT
9304 that have the support, and <TT
9308 don't. You should never need to touch this parameter.</P
9320 HREF="#LEVEL2OPLOCKS
"
9332 >kernel oplocks = yes</B
9339 >lanman auth (G)</DT
9342 >This parameter determines whether or not smbd will
9343 attempt to authentication users using the LANMAN password hash.
9344 If disabled, only clients which support NT password hashes (e.g. Windows
9345 NT/2000 clients, smbclient, etc... but not Windows 95/98 or the MS DOS
9346 network client) will be able to connect to the Samba host.</P
9350 >lanman auth = yes</B
9355 NAME="LEVEL2OPLOCKS
"
9357 >level2 oplocks (S)</DT
9360 >This parameter controls whether Samba supports
9361 level2 (read-only) oplocks on a share.</P
9363 >Level2, or read-only oplocks allow Windows NT clients
9364 that have an oplock on a file to downgrade from a read-write oplock
9365 to a read-only oplock once a second client opens the file (instead
9366 of releasing all oplocks on a second open, as in traditional,
9367 exclusive oplocks). This allows all openers of the file that
9368 support level2 oplocks to cache the file for read-ahead only (ie.
9369 they may not cache writes or lock requests) and increases performance
9370 for many accesses of files that are not commonly written (such as
9371 application .EXE files).</P
9373 >Once one of the clients which have a read-only oplock
9374 writes to the file all clients are notified (no reply is needed
9375 or waited for) and told to break their oplocks to "none
" and
9376 delete any read-ahead caches.</P
9378 >It is recommended that this parameter be turned on
9379 to speed access to shared executables.</P
9381 >For more discussions on level2 oplocks see the CIFS spec.</P
9384 HREF="#KERNELOPLOCKS
"
9392 > are supported then level2 oplocks are
9393 not granted (even if this parameter is set to <TT
9406 > parameter must be set to "true
" on this share in order for
9407 this parameter to have any effect.</P
9431 >level2 oplocks = yes</B
9438 >lm announce (G)</DT
9441 >This parameter determines if <A
9448 > will produce Lanman announce
9449 broadcasts that are needed by OS/2 clients in order for them to see
9450 the Samba server in their browse list. This parameter can have three
9461 >. The default is <TT
9468 > Samba will never produce these
9469 broadcasts. If set to <TT
9472 > Samba will produce
9473 Lanman announce broadcasts at a frequency set by the parameter
9483 Samba will not send Lanman announce broadcasts by default but will
9484 listen for them. If it hears such a broadcast on the wire it will
9485 then start sending them at a frequency set by the parameter
9506 >lm announce = auto</B
9511 >lm announce = yes</B
9518 >lm interval (G)</DT
9521 >If Samba is set to produce Lanman announce
9522 broadcasts needed by OS/2 clients (see the <A
9530 > parameter) then this
9531 parameter defines the frequency in seconds with which they will be
9532 made. If this is set to zero then no Lanman announcements will be
9533 made despite the setting of the <TT
9554 >lm interval = 60</B
9559 >lm interval = 120</B
9566 >load printers (G)</DT
9569 >A boolean variable that controls whether all
9570 printers in the printcap will be loaded for browsing by default.
9579 >load printers = yes</B
9586 >local master (G)</DT
9589 >This option allows <A
9596 > to try and become a local master browser
9597 on a subnet. If set to <TT
9603 > will not attempt to become a local master browser
9604 on a subnet and will also lose in all browsing elections. By
9605 default this value is set to true. Setting this value to true doesn't
9606 mean that Samba will <EM
9609 browser on a subnet, just that <B
9614 > in elections for local master browser.</P
9616 >Setting this value to False will cause <B
9622 > to become a local master browser.</P
9626 >local master = yes</B
9637 HREF="#LOCKDIRECTORY
"
9648 NAME="LOCKDIRECTORY
"
9650 >lock directory (G)</DT
9653 >This option specifies the directory where lock
9654 files will be placed. The lock files are used to implement the
9656 HREF="#MAXCONNECTIONS
"
9668 >lock directory = ${prefix}/var/locks</B
9673 >lock directory = /var/run/samba/locks</B
9684 >This controls whether or not locking will be
9685 performed by the server in response to lock requests from the
9691 >, all lock and unlock
9692 requests will appear to succeed and all lock queries will report
9693 that the file in question is available for locking.</P
9698 >, real locking will be performed
9703 > be useful for read-only
9704 filesystems which <EM
9706 > not need locking (such as
9707 cdrom drives), although setting this parameter of <TT
9711 is not really recommended even in this case.</P
9713 >Be careful about disabling locking either globally or in a
9714 specific service, as lack of locking may result in data corruption.
9715 You should never need to set this parameter.</P
9729 >This option allows you to override the name
9730 of the Samba log file (also known as the debug file).</P
9732 >This option takes the standard substitutions, allowing
9733 you to have separate log files for each user or machine.</P
9737 >log file = /usr/local/samba/var/log.%m
9762 >logon drive (G)</DT
9765 >This parameter specifies the local path to
9766 which the home directory will be connected (see <A
9775 and is only used by NT Workstations. </P
9777 >Note that this option is only useful if Samba is set up as a
9782 >logon drive = z:</B
9787 >logon drive = h:</B
9797 >This parameter specifies the home directory
9798 location when a Win95/98 or NT Workstation logs into a Samba PDC.
9799 It allows you to do </P
9807 >NET USE H: /HOME</B
9812 >from a command prompt, for example.</P
9814 >This option takes the standard substitutions, allowing
9815 you to have separate logon scripts for each user or machine.</P
9817 >This parameter can be used with Win9X workstations to ensure
9818 that roaming profiles are stored in a subdirectory of the user's
9819 home directory. This is done in the following way:</P
9823 >logon home = \\%N\%U\profile</B
9826 >This tells Samba to return the above string, with
9827 substitutions made when a client requests the info, generally
9828 in a NetUserGetInfo request. Win9X clients truncate the info to
9829 \\server\share when a user does <B
9833 but use the whole string when dealing with profiles.
</P
9835 >Note that in prior versions of Samba, the
<A
9843 > was returned rather than
9853 > but allowed profiles outside the home directory.
9854 The current implementation is correct, and can be used for
9855 profiles if you use the above trick.
</P
9857 >This option is only useful if Samba is set up as a logon
9862 >logon home =
"\\%N\%U"</B
9867 >logon home =
"\\remote_smb_server\%U"</B
9878 >This parameter specifies the home directory
9879 where roaming profiles (NTuser.dat etc files for Windows NT) are
9880 stored. Contrary to previous versions of these manual pages, it has
9881 nothing to do with Win
9X roaming profiles. To find out how to
9882 handle roaming profiles for Win
9X system, see the
<A
9892 >This option takes the standard substitutions, allowing you
9893 to have separate logon scripts for each user or machine. It also
9894 specifies the directory from which the
"Application Data",
9904 >network neighborhood
</TT
9909 and other folders, and their contents, are loaded and displayed on
9910 your Windows NT client.
</P
9912 >The share and the path must be readable by the user for
9913 the preferences and directories to be loaded onto the Windows NT
9914 client. The share must be writeable when the logs in for the first
9915 time, in order that the Windows NT client can create the NTuser.dat
9916 and other directories.
</P
9918 >Thereafter, the directories and any of the contents can,
9919 if required, be made read-only. It is not advisable that the
9920 NTuser.dat file be made read-only - rename it to NTuser.man to
9921 achieve the desired effect (a
<EM
9926 >Windows clients can sometimes maintain a connection to
9927 the [homes] share, even though there is no user logged in.
9928 Therefore, it is vital that the logon path does not include a
9929 reference to the homes share (i.e. setting this parameter to
9930 \%N\%U\profile_path will cause problems).
</P
9932 >This option takes the standard substitutions, allowing
9933 you to have separate logon scripts for each user or machine.
</P
9935 >Note that this option is only useful if Samba is set up
9936 as a logon server.
</P
9940 >logon path = \\%N\%U\profile
</B
9945 >logon path = \\PROFILESERVER\PROFILE\%U
</B
9952 >logon script (G)
</DT
9955 >This parameter specifies the batch file (.bat) or
9956 NT command file (.cmd) to be downloaded and run on a machine when
9957 a user successfully logs in. The file must contain the DOS
9958 style cr/lf line endings. Using a DOS-style editor to create the
9959 file is recommended.
</P
9961 >The script must be a relative path to the [netlogon]
9962 service. If the [netlogon] service specifies a
<A
9972 >/usr/local/samba/netlogon
9976 >logon script = STARTUP.BAT
</B
9978 the file that will be downloaded is:
</P
9982 >/usr/local/samba/netlogon/STARTUP.BAT
</TT
9985 >The contents of the batch file is entirely your choice. A
9986 suggested command would be to add
<B
9988 >NET TIME \\SERVER /SET
9990 >, to force every machine to synchronize clocks with
9991 the same time server. Another use would be to add
<B
9994 U: \\SERVER\UTILS
</B
9995 > for commonly used utilities, or
<B
9997 > NET USE Q: \\SERVER\ISO9001_QA
</B
10000 >Note that it is particularly important not to allow write
10001 access to the [netlogon] share, or to grant users write permission
10002 on the batch files in a secure environment, as this would allow
10003 the batch files to be arbitrarily modified and security to be
10006 >This option takes the standard substitutions, allowing you
10007 to have separate logon scripts for each user or machine.
</P
10009 >This option is only useful if Samba is set up as a logon
10013 >no logon script defined
</EM
10018 >logon script = scripts\%U.bat
</B
10023 NAME=
"LPPAUSECOMMAND"
10025 >lppause command (S)
</DT
10028 >This parameter specifies the command to be
10029 executed on the server host in order to stop printing or spooling
10030 a specific print job.
</P
10032 >This command should be a program or script which takes
10033 a printer name and job number to pause the print job. One way
10034 of implementing this is by using job priorities, where jobs
10035 having a too low priority won't be sent to the printer.
</P
10042 > is given then the printername
10043 is put in its place. A
<TT
10049 the job number (an integer). On HPUX (see
<TT
10061 to the lpq command, the job will show up with the correct status, i.e.
10062 if the job priority is lower than the set fence priority it will
10063 have the PAUSED status, whereas if the priority is equal or higher it
10064 will have the SPOOLED or PRINTING status.
</P
10066 >Note that it is good practice to include the absolute path
10067 in the lppause command as the PATH may not be available to the server.
</P
10080 >Default: Currently no default value is given to
10081 this string, unless the value of the
<TT
10090 >, in which case the default is :
</P
10094 >lp -i %p-%j -H hold
</B
10097 >or if the value of the
<TT
10106 >, then the default is:
</P
10110 >qstat -s -j%j -h
</B
10113 >Example for HPUX:
<B
10115 >lppause command = /usr/bin/lpalt
10121 NAME=
"LPQCACHETIME"
10123 >lpq cache time (G)
</DT
10126 >This controls how long lpq info will be cached
10127 for to prevent the
<B
10130 > command being called too
10131 often. A separate cache is kept for each variation of the
<B
10134 > command used by the system, so if you use different
10138 > commands for different users then they won't
10139 share cache information.
</P
10141 >The cache files are stored in
<TT
10145 where xxxx is a hash of the
<B
10148 > command in use.
</P
10150 >The default is
10 seconds, meaning that the cached results
10151 of a previous identical
<B
10154 > command will be used
10155 if the cached data is less than
10 seconds old. A large value may
10156 be advisable if your
<B
10159 > command is very slow.
</P
10161 >A value of
0 will disable caching completely.
</P
10176 >lpq cache time =
10</B
10181 >lpq cache time =
30</B
10188 >lpq command (S)
</DT
10191 >This parameter specifies the command to be
10192 executed on the server host in order to obtain
<B
10196 >-style printer status information.
</P
10198 >This command should be a program or script which
10199 takes a printer name as its only parameter and outputs printer
10200 status information.
</P
10202 >Currently eight styles of printer status information
10203 are supported; BSD, AIX, LPRNG, PLP, SYSV, HPUX, QNX and SOFTQ.
10204 This covers most UNIX systems. You control which type is expected
10212 >Some clients (notably Windows for Workgroups) may not
10213 correctly send the connection number for the printer they are
10214 requesting status information about. To get around this, the
10215 server reports on the first printer service connected to by the
10216 client. This only happens if the connection number sent is invalid.
</P
10223 > is given then the printername
10224 is put in its place. Otherwise it is placed at the end of the
10227 >Note that it is good practice to include the absolute path
10237 > may not be available to the server.
</P
10251 >depends on the setting of
<TT
10261 >lpq command = /usr/bin/lpq -P%p
</B
10266 NAME=
"LPRESUMECOMMAND"
10268 >lpresume command (S)
</DT
10271 >This parameter specifies the command to be
10272 executed on the server host in order to restart or continue
10273 printing or spooling a specific print job.
</P
10275 >This command should be a program or script which takes
10276 a printer name and job number to resume the print job. See
10278 HREF=
"#LPPAUSECOMMAND"
10293 > is given then the printername
10294 is put in its place. A
<TT
10300 the job number (an integer).
</P
10302 >Note that it is good practice to include the absolute path
10306 >lpresume command
</I
10308 > as the PATH may not
10309 be available to the server.
</P
10322 >Default: Currently no default value is given
10323 to this string, unless the value of the
<TT
10332 >, in which case the default is :
</P
10336 >lp -i %p-%j -H resume
</B
10339 >or if the value of the
<TT
10348 >, then the default is:
</P
10352 >qstat -s -j%j -r
</B
10355 >Example for HPUX:
<B
10357 >lpresume command = /usr/bin/lpalt
10365 >lprm command (S)
</DT
10368 >This parameter specifies the command to be
10369 executed on the server host in order to delete a print job.
</P
10371 >This command should be a program or script which takes
10372 a printer name and job number, and deletes the print job.
</P
10379 > is given then the printername
10380 is put in its place. A
<TT
10386 the job number (an integer).
</P
10388 >Note that it is good practice to include the absolute
10394 > as the PATH may not be
10395 available to the server.
</P
10409 >depends on the setting of
<TT
10420 >lprm command = /usr/bin/lprm -P%p %j
10426 >lprm command = /usr/bin/cancel %p-%j
10432 NAME=
"MACHINEPASSWORDTIMEOUT"
10434 >machine password timeout (G)
</DT
10437 >If a Samba server is a member of an Windows
10438 NT Domain (see the
<A
10439 HREF=
"#SECURITYEQUALSDOMAIN"
10440 >security=domain
</A
10442 parameter) then periodically a running
<A
10446 > process will try and change the MACHINE ACCOUNT
10447 PASSWORD stored in the TDB called
<TT
10449 >private/secrets.tdb
10451 >. This parameter specifies how often this password
10452 will be changed, in seconds. The default is one week (expressed in
10453 seconds), the same as a Windows NT Domain member server.
</P
10456 HREF=
"smbpasswd.8.html"
10464 HREF=
"#SECURITYEQUALSDOMAIN"
10465 > security=domain
</A
10470 >machine password timeout =
604800</B
10477 >magic output (S)
</DT
10480 >This parameter specifies the name of a file
10481 which will contain output created by a magic script (see the
10483 HREF=
"#MAGICSCRIPT"
10491 parameter below).
</P
10493 >Warning: If two clients use the same
<TT
10499 > in the same directory the output file content
10504 >magic output =
<magic script name
>.out
10510 >magic output = myfile.txt
</B
10517 >magic script (S)
</DT
10520 >This parameter specifies the name of a file which,
10521 if opened, will be executed by the server when the file is closed.
10522 This allows a UNIX script to be sent to the Samba host and
10523 executed on behalf of the connected user.
</P
10525 >Scripts executed in this way will be deleted upon
10526 completion assuming that the user has the appripriate level
10527 of priviledge and the ile permissions allow the deletion.
</P
10529 >If the script generates output, output will be sent to
10530 the file specified by the
<A
10531 HREF=
"#MAGICOUTPUT"
10538 > parameter (see above).
</P
10540 >Note that some shells are unable to interpret scripts
10541 containing CR/LF instead of CR as
10542 the end-of-line marker. Magic scripts must be executable
10545 > on the host, which for some hosts and
10546 some shells will require filtering at the DOS end.
</P
10548 >Magic scripts are
<EM
10553 > be relied upon.
</P
10556 >None. Magic scripts disabled.
</EM
10561 >magic script = user.csh
</B
10568 >mangle case (S)
</DT
10571 >See the section on
<A
10578 >mangle case = no
</B
10585 >mangled map (S)
</DT
10588 >This is for those who want to directly map UNIX
10589 file names which can not be represented on Windows/DOS. The mangling
10590 of names is not always what is needed. In particular you may have
10591 documents with file extensions that differ between DOS and UNIX.
10592 For example, under UNIX it is common to use
<TT
10596 for HTML files, whereas under Windows/DOS
<TT
10600 is more commonly used.
</P
10613 >mangled map = (*.html *.htm)
</B
10616 >One very useful case is to remove the annoying
<TT
10620 > off the ends of filenames on some CDROMS (only visible
10621 under some UNIXes). To do this use a map of (*;
1 *;).
</P
10624 >no mangled map
</EM
10629 >mangled map = (*;
1 *;)
</B
10634 NAME=
"MANGLEDNAMES"
10636 >mangled names (S)
</DT
10639 >This controls whether non-DOS names under UNIX
10640 should be mapped to DOS-compatible names (
"mangled") and made visible,
10641 or whether non-DOS names should simply be ignored.
</P
10643 >See the section on
<A
10646 > for details on how to control the mangling process.
</P
10648 >If mangling is used then the mangling algorithm is as follows:
</P
10654 >The first (up to) five alphanumeric characters
10655 before the rightmost dot of the filename are preserved, forced
10656 to upper case, and appear as the first (up to) five characters
10657 of the mangled name.
</P
10661 >A tilde
"~" is appended to the first part of the mangled
10662 name, followed by a two-character unique sequence, based on the
10663 original root name (i.e., the original filename minus its final
10664 extension). The final extension is included in the hash calculation
10665 only if it contains any upper case characters or is longer than three
10668 >Note that the character to use may be specified using
10670 HREF=
"#MANGLINGCHAR"
10678 > option, if you don't like '~'.
</P
10682 >The first three alphanumeric characters of the final
10683 extension are preserved, forced to upper case and appear as the
10684 extension of the mangled name. The final extension is defined as that
10685 part of the original filename after the rightmost dot. If there are no
10686 dots in the filename, the mangled name will have no extension (except
10687 in the case of
"hidden files" - see below).
</P
10691 >Files whose UNIX name begins with a dot will be
10692 presented as DOS hidden files. The mangled name will be created as
10693 for other filenames, but with the leading dot removed and
"___" as
10694 its extension regardless of actual original extension (that's three
10699 >The two-digit hash value consists of upper case
10700 alphanumeric characters.
</P
10702 >This algorithm can cause name collisions only if files
10703 in a directory share the same first five alphanumeric characters.
10704 The probability of such a clash is
1/
1300.
</P
10706 >The name mangling (if enabled) allows a file to be
10707 copied between UNIX directories from Windows/DOS while retaining
10708 the long UNIX filename. UNIX files can be renamed to a new extension
10709 from Windows/DOS and will retain the same basename. Mangled names
10710 do not change between sessions.
</P
10714 >mangled names = yes
</B
10719 NAME=
"MANGLEDSTACK"
10721 >mangled stack (G)
</DT
10724 >This parameter controls the number of mangled names
10725 that should be cached in the Samba server
<A
10731 >This stack is a list of recently mangled base names
10732 (extensions are only maintained if they are longer than
3 characters
10733 or contains upper case characters).
</P
10735 >The larger this value, the more likely it is that mangled
10736 names can be successfully converted to correct long UNIX names.
10737 However, large stack sizes will slow most directory access. Smaller
10738 stacks save memory in the server (each stack element costs
256 bytes).
10741 >It is not possible to absolutely guarantee correct long
10742 file names, so be prepared for some surprises!
</P
10746 >mangled stack =
50</B
10751 >mangled stack =
100</B
10756 NAME=
"MANGLINGCHAR"
10758 >mangling char (S)
</DT
10761 >This controls what character is used as
10767 >. The default is a '~'
10768 but this may interfere with some software. Use this option to set
10769 it to whatever you prefer.
</P
10773 >mangling char = ~
</B
10778 >mangling char = ^
</B
10785 >map archive (S)
</DT
10788 >This controls whether the DOS archive attribute
10789 should be mapped to the UNIX owner execute bit. The DOS archive bit
10790 is set when a file has been modified since its last backup. One
10791 motivation for this option it to keep Samba/your PC from making
10792 any file it touches from becoming executable under UNIX. This can
10793 be quite annoying for shared source code, documents, etc...
</P
10795 >Note that this requires the
<TT
10801 parameter to be set such that owner execute bit is not masked out
10802 (i.e. it must include
100). See the parameter
<A
10814 >map archive = yes
</B
10821 >map hidden (S)
</DT
10824 >This controls whether DOS style hidden files
10825 should be mapped to the UNIX world execute bit.
</P
10827 >Note that this requires the
<TT
10833 to be set such that the world execute bit is not masked out (i.e.
10834 it must include
001). See the parameter
<A
10846 >map hidden = no
</B
10853 >map system (S)
</DT
10856 >This controls whether DOS style system files
10857 should be mapped to the UNIX group execute bit.
</P
10859 >Note that this requires the
<TT
10865 to be set such that the group execute bit is not masked out (i.e.
10866 it must include
010). See the parameter
<A
10878 >map system = no
</B
10885 >map to guest (G)
</DT
10888 >This parameter is only useful in
<A
10891 > modes other than
<TT
10909 >This parameter can take three different values, which tell
10914 > what to do with user
10915 login requests that don't match a valid UNIX user in some way.
</P
10917 >The three settings are :
</P
10926 > - Means user login
10927 requests with an invalid password are rejected. This is the
10936 logins with an invalid password are rejected, unless the username
10937 does not exist, in which case it is treated as a guest login and
10939 HREF=
"#GUESTACCOUNT"
10953 > - Means user logins
10954 with an invalid password are treated as a guest login and mapped
10956 HREF=
"#GUESTACCOUNT"
10959 this can cause problems as it means that any user incorrectly typing
10960 their password will be silently logged on as
"guest" - and
10961 will not know the reason they cannot access files they think
10962 they should - there will have been no message given to them
10963 that they got their password wrong. Helpdesk services will
10966 > you if you set the
<TT
10972 > parameter this way :-).
</P
10976 >Note that this parameter is needed to set up
"Guest"
10977 share services when using
<TT
10983 share. This is because in these modes the name of the resource being
10986 > sent to the server until after
10987 the server has successfully authenticated the client so the server
10988 cannot make authentication decisions at the correct time (connection
10989 to the share) for
"Guest" shares.
</P
10991 >For people familiar with the older Samba releases, this
10992 parameter maps to the old compile-time setting of the
<TT
10994 > GUEST_SESSSETUP
</TT
10995 > value in local.h.
</P
10999 >map to guest = Never
</B
11004 >map to guest = Bad User
</B
11009 NAME=
"MAXCONNECTIONS"
11011 >max connections (S)
</DT
11014 >This option allows the number of simultaneous
11015 connections to a service to be limited. If
<TT
11021 > is greater than
0 then connections will be refused if
11022 this number of connections to the service are already open. A value
11023 of zero mean an unlimited number of connections may be made.
</P
11025 >Record lock files are used to implement this feature. The
11026 lock files will be stored in the directory specified by the
<A
11027 HREF=
"#LOCKDIRECTORY"
11039 >max connections =
0</B
11044 >max connections =
10</B
11051 >max disk size (G)
</DT
11054 >This option allows you to put an upper limit
11055 on the apparent size of disks. If you set this option to
100
11056 then all shares will appear to be not larger than
100 MB in
11059 >Note that this option does not limit the amount of
11060 data you can put on the disk. In the above case you could still
11061 store much more than
100 MB on the disk, but if a client ever asks
11062 for the amount of free disk space or the total disk size then the
11063 result will be bounded by the amount specified in
<TT
11071 >This option is primarily useful to work around bugs
11072 in some pieces of software that can't handle very large disks,
11073 particularly disks over
1GB in size.
</P
11080 > of
0 means no limit.
</P
11084 >max disk size =
0</B
11089 >max disk size =
1000</B
11096 >max log size (G)
</DT
11099 >This option (an integer in kilobytes) specifies
11100 the max size the log file should grow to. Samba periodically checks
11101 the size and if it is exceeded it will rename the file, adding
11107 >A size of
0 means no limit.
</P
11111 >max log size =
5000</B
11116 >max log size =
1000</B
11126 >This option controls the maximum number of
11127 outstanding simultaneous SMB operations that samba tells the client
11128 it will allow. You should never need to set this parameter.
</P
11137 NAME=
"MAXOPENFILES"
11139 >max open files (G)
</DT
11142 >This parameter limits the maximum number of
11143 open files that one
<A
11148 serving process may have open for a client at any one time. The
11149 default for this parameter is set very high (
10,
000) as Samba uses
11150 only one bit per unopened file.
</P
11152 >The limit of the number of open files is usually set
11153 by the UNIX per-process file descriptor limit rather than
11154 this parameter so you should never need to touch this parameter.
</P
11158 >max open files =
10000</B
11163 NAME=
"MAXPRINTJOBS"
11165 >max print jobs (S)
</DT
11168 >This parameter limits the maximum number of
11169 jobs allowable in a Samba printer queue at any given moment.
11170 If this number is exceeded,
<A
11177 > will remote
"Out of Space" to the client.
11179 HREF=
"#TOTALPRINTJOBS"
11192 >max print jobs =
1000</B
11197 >max print jobs =
5000</B
11204 >max protocol (G)
</DT
11207 >The value of the parameter (a string) is the highest
11208 protocol level that will be supported by the server.
</P
11210 >Possible values are :
</P
11219 >: Earliest version. No
11220 concept of user names.
</P
11227 >: Slight improvements on
11228 CORE for efficiency.
</P
11237 > version of the protocol. Long filename
11245 >: Updates to Lanman1 protocol.
11253 >: Current up to date version of
11254 the protocol. Used by Windows NT. Known as CIFS.
</P
11258 >Normally this option should not be set as the automatic
11259 negotiation phase in the SMB protocol takes care of choosing
11260 the appropriate protocol.
</P
11263 HREF=
"#MINPROTOCOL"
11275 >max protocol = NT1
</B
11280 >max protocol = LANMAN1
</B
11285 NAME=
"MAXSMBDPROCESSES"
11287 >max smbd processes (G)
</DT
11290 >This parameter limits the maximum number of
11299 processes concurrently running on a system and is intended
11300 as a stop gap to prevent degrading service to clients in the event
11301 that the server has insufficient resources to handle more than this
11302 number of connections. Remember that under normal operating
11303 conditions, each user will have an smbd associated with him or her
11304 to handle connections to all shares from a given host.
11309 >max smbd processes =
0</B
11314 >max smbd processes =
1000</B
11324 >This option tells
<A
11329 what the default 'time to live' of NetBIOS names should be (in seconds)
11333 > is requesting a name using either a
11334 broadcast packet or from a WINS server. You should never need to
11335 change this parameter. The default is
3 days.
</P
11339 >max ttl =
259200</B
11346 >max wins ttl (G)
</DT
11349 >This option tells
<A
11354 > when acting as a WINS server (
<A
11355 HREF=
"#WINSSUPPORT"
11359 >wins support=yes
</I
11362 >) what the maximum
11363 'time to live' of NetBIOS names that
<B
11367 will grant will be (in seconds). You should never need to change this
11368 parameter. The default is
6 days (
518400 seconds).
</P
11383 >max wins ttl = 518400</B
11393 >This option controls the maximum packet size
11394 that will be negotiated by Samba. The default is 65535, which
11395 is the maximum. In some cases you may find you get better performance
11396 with a smaller value. A value below 2048 is likely to cause problems.
11401 >max xmit = 65535</B
11406 >max xmit = 8192</B
11411 NAME="MESSAGECOMMAND
"
11413 >message command (G)</DT
11416 >This specifies what command to run when the
11417 server receives a WinPopup style message.</P
11419 >This would normally be a command that would
11420 deliver the message somehow. How this is to be done is
11421 up to your imagination.</P
11427 >message command = csh -c 'xedit %s;rm %s' &</B
11431 >This delivers the message using <B
11435 removes it afterwards. <EM
11436 >NOTE THAT IT IS VERY IMPORTANT
11437 THAT THIS COMMAND RETURN IMMEDIATELY</EM
11439 have the '&' on the end. If it doesn't return immediately then
11440 your PCs may freeze when sending messages (they should recover
11441 after 30secs, hopefully).</P
11443 >All messages are delivered as the global guest user.
11444 The command takes the standard substitutions, although <TT
11457 >Apart from the standard substitutions, some additional
11458 ones apply. In particular:</P
11469 > = the filename containing
11479 > = the destination that
11480 the message was sent to (probably the server name).</P
11489 > = who the message
11494 >You could make this command send mail, or whatever else
11495 takes your fancy. Please let us know of any really interesting
11498 >Here's a way of sending the messages as mail to root:</P
11502 >message command = /bin/mail -s 'message from %f on
11503 %m' root < %s; rm %s</B
11506 >If you don't have a message command then the message
11507 won't be delivered and Samba will tell the sender there was
11508 an error. Unfortunately WfWg totally ignores the error code
11509 and carries on regardless, saying that the message was delivered.
11512 >If you want to silently delete it then try:</P
11516 >message command = rm %s</B
11520 >no message command</EM
11525 >message command = csh -c 'xedit %s;
11531 NAME="MINPASSWDLENGTH
"
11533 >min passwd length (G)</DT
11537 HREF="#MINPASSWORDLENGTH
"
11541 >min password length</I
11548 NAME="MINPASSWORDLENGTH
"
11550 >min password length (G)</DT
11553 >This option sets the minimum length in characters
11554 of a plaintext password that <B
11557 > will accept when performing
11558 UNIX password changing.</P
11561 HREF="#UNIXPASSWORDSYNC
"
11570 HREF="#PASSWDPROGRAM
"
11578 HREF="#PASSWDCHATDEBUG
"
11582 >passwd chat debug</I
11590 >min password length = 5</B
11595 NAME="MINPRINTSPACE
"
11597 >min print space (S)</DT
11600 >This sets the minimum amount of free disk
11601 space that must be available before a user will be able to spool
11602 a print job. It is specified in kilobytes. The default is 0, which
11603 means a user can always spool a print job.</P
11618 >min print space = 0</B
11623 >min print space = 2000</B
11630 >min protocol (G)</DT
11633 >The value of the parameter (a string) is the
11634 lowest SMB protocol dialect than Samba will support. Please refer
11636 HREF="#MAXPROTOCOL
"
11644 parameter for a list of valid protocol names and a brief description
11645 of each. You may also wish to refer to the C source code in
11648 >source/smbd/negprot.c</TT
11649 > for a listing of known protocol
11650 dialects supported by clients.</P
11652 >If you are viewing this parameter as a security measure, you should
11653 also refer to the <A
11662 > parameter. Otherwise, you should never need
11663 to change this parameter.</P
11667 >min protocol = CORE</B
11672 >min protocol = NT1</B
11680 >min wins ttl (G)</DT
11683 >This option tells <A
11688 when acting as a WINS server (<A
11689 HREF="#WINSSUPPORT
"
11693 > wins support = yes</I
11696 >) what the minimum 'time to live'
11697 of NetBIOS names that <B
11700 > will grant will be (in
11701 seconds). You should never need to change this parameter. The default
11702 is 6 hours (21600 seconds).</P
11706 >min wins ttl = 21600</B
11713 >msdfs root (S)</DT
11716 >This boolean parameter is only available if
11717 Samba is configured and compiled with the <B
11720 > option. If set to <TT
11724 Samba treats the share as a Dfs root and allows clients to browse
11725 the distributed file system tree rooted at the share directory.
11726 Dfs links are specified in the share directory by symbolic
11727 links of the form <TT
11729 >msdfs:serverA\shareA,serverB\shareB
11731 > and so on. For more information on setting up a Dfs tree
11732 on Samba, refer to <A
11733 HREF="msdfs_setup.html
"
11752 >msdfs root = no</B
11757 NAME="NAMERESOLVEORDER
"
11759 >name resolve order (G)</DT
11762 >This option is used by the programs in the Samba
11763 suite to determine what naming services to use and in what order
11764 to resolve host names to IP addresses. The option takes a space
11765 separated string of name resolution options.</P
11767 >The options are :"lmhosts
", "host
", "wins
" and "bcast
". They
11768 cause names to be resolved as follows :</P
11778 address in the Samba lmhosts file. If the line in lmhosts has
11779 no name type attached to the NetBIOS name (see the <A
11780 HREF="lmhosts
.5.html
"
11783 > for details) then
11784 any name type matches for lookup.</P
11791 > : Do a standard host
11792 name to IP address resolution, using the system <TT
11796 >, NIS, or DNS lookups. This method of name resolution
11797 is operating system depended for instance on IRIX or Solaris this
11798 may be controlled by the <TT
11800 >/etc/nsswitch.conf</TT
11802 file). Note that this method is only used if the NetBIOS name
11803 type being queried is the 0x20 (server) name type, otherwise
11811 > : Query a name with
11812 the IP address listed in the <A
11820 > parameter. If no WINS server has
11821 been specified this method will be ignored.</P
11828 > : Do a broadcast on
11829 each of the known local interfaces listed in the <A
11838 parameter. This is the least reliable of the name resolution
11839 methods as it depends on the target host being on a locally
11840 connected subnet.</P
11846 >name resolve order = lmhosts host wins bcast
11852 >name resolve order = lmhosts bcast host
11856 >This will cause the local lmhosts file to be examined
11857 first, followed by a broadcast attempt, followed by a normal
11858 system hostname lookup.</P
11862 NAME="NETBIOSALIASES
"
11864 >netbios aliases (G)</DT
11867 >This is a list of NetBIOS names that <A
11871 > will advertise as additional
11872 names by which the Samba server is known. This allows one machine
11873 to appear in browse lists under multiple names. If a machine is
11874 acting as a browse server or logon server none
11875 of these names will be advertised as either browse server or logon
11876 servers, only the primary name of the machine will be advertised
11877 with these capabilities.</P
11880 HREF="#NETBIOSNAME
"
11891 >empty string (no additional names)</EM
11896 >netbios aliases = TEST TEST1 TEST2</B
11903 >netbios name (G)</DT
11906 >This sets the NetBIOS name by which a Samba
11907 server is known. By default it is the same as the first component
11908 of the host's DNS name. If a machine is a browse server or
11909 logon server this name (or the first component
11910 of the hosts DNS name) will be the name that these services are
11911 advertised under.</P
11914 HREF="#NETBIOSALIASES
"
11925 >machine DNS name</EM
11930 >netbios name = MYNAME</B
11935 NAME="NETBIOSSCOPE
"
11937 >netbios scope (G)</DT
11940 >This sets the NetBIOS scope that Samba will
11941 operate under. This should not be set unless every machine
11942 on your LAN also sets this value.</P
11948 >nis homedir (G)</DT
11951 >Get the home share server from a NIS map. For
11952 UNIX systems that use an automounter, the user's home directory
11953 will often be mounted on a workstation on demand from a remote
11956 >When the Samba logon server is not the actual home directory
11957 server, but is mounting the home directories via NFS then two
11958 network hops would be required to access the users home directory
11959 if the logon server told the client to use itself as the SMB server
11960 for home directories (one over SMB and one over NFS). This can
11963 >This option allows Samba to return the home share as
11964 being on a different server to the logon server and as
11965 long as a Samba daemon is running on the home directory server,
11966 it will be mounted on the Samba client directly from the directory
11967 server. When Samba is returning the home share to the client, it
11968 will consult the NIS map specified in <A
11976 > and return the server
11979 >Note that for this option to work there must be a working
11980 NIS system and the Samba server with this option must also
11981 be a logon server.</P
11985 >nis homedir = no</B
11990 NAME="NTACLSUPPORT
"
11992 >nt acl support (G)</DT
11995 >This boolean parameter controls whether
12000 > will attempt to map
12001 UNIX permissions into Windows NT access control lists.</P
12005 >nt acl support = yes</B
12010 NAME="NTPIPESUPPORT
"
12012 >nt pipe support (G)</DT
12015 >This boolean parameter controls whether
12020 > will allow Windows NT
12021 clients to connect to the NT SMB specific <TT
12025 pipes. This is a developer debugging option and can be left
12030 >nt pipe support = yes</B
12035 NAME="NTSMBSUPPORT
"
12037 >nt smb support (G)</DT
12040 >This boolean parameter controls whether <A
12044 > will negotiate NT specific SMB
12045 support with Windows NT clients. Although this is a developer
12046 debugging option and should be left alone, benchmarking has discovered
12047 that Windows NT clients give faster performance with this option
12051 >. This is still being investigated.
12052 If this option is set to <TT
12055 > then Samba offers
12056 exactly the same SMB calls that versions prior to Samba 2.0 offered.
12057 This information may be of use if any users are having problems
12058 with NT SMB support.</P
12060 >You should not need to ever disable this parameter.</P
12064 >nt smb support = yes</B
12069 NAME="NULLPASSWORDS
"
12071 >null passwords (G)</DT
12074 >Allow or disallow client access to accounts
12075 that have null passwords. </P
12078 HREF="smbpasswd
.5.html
"
12085 >null passwords = no</B
12090 NAME="OBEYPAMRESTRICTIONS
"
12092 >obey pam restrictions (G)</DT
12095 >When Samba 2.2 is configure to enable PAM support
12096 (i.e. --with-pam), this parameter will control whether or not Samba
12097 should obey PAM's account and session management directives. The
12098 default behavior is to use PAM for clear text authentication only
12099 and to ignore any account or session management. Note that Samba
12100 always ignores PAM for authentication in the case of <A
12101 HREF="#ENCRYPTPASSWORDS
"
12105 >encrypt passwords = yes</I
12109 >. The reason is that PAM modules cannot support the challenge/response
12110 authentication mechanism needed in the presence of SMB password encryption.
12115 >obey pam restrictions = no</B
12125 >This is a boolean option that controls whether
12126 connections with usernames not in the <TT
12132 list will be allowed. By default this option is disabled so that a
12133 client can supply a username to be used by the server. Enabling
12134 this parameter will force the server to only user the login
12140 > list and is only really
12142 HREF="#SECURITYEQUALSSHARE
"
12147 >Note that this also means Samba won't try to deduce
12148 usernames from the service name. This can be annoying for
12149 the [homes] section. To get around this you could use <B
12153 > which means your <TT
12159 will be just the service name, which for home directories is the
12160 name of the user.</P
12182 >only guest (S)</DT
12197 NAME="OPLOCKBREAKWAITTIME
"
12199 >oplock break wait time (G)</DT
12202 >This is a tuning parameter added due to bugs in
12203 both Windows 9x and WinNT. If Samba responds to a client too
12204 quickly when that client issues an SMB that can cause an oplock
12205 break request, then the network client can fail and not respond
12206 to the break request. This tuning parameter (which is set in milliseconds)
12207 is the amount of time Samba will wait before sending an oplock break
12208 request to such (broken) clients.</P
12211 >DO NOT CHANGE THIS PARAMETER UNLESS YOU HAVE READ
12212 AND UNDERSTOOD THE SAMBA OPLOCK CODE</EM
12217 >oplock break wait time = 0</B
12222 NAME="OPLOCKCONTENTIONLIMIT
"
12224 >oplock contention limit (S)</DT
12235 improve the efficiency of the granting of oplocks under multiple
12236 client contention for the same file.</P
12238 >In brief it specifies a number, which causes smbd not to
12239 grant an oplock even when requested if the approximate number of
12240 clients contending for an oplock on the same file goes over this
12241 limit. This causes <B
12244 > to behave in a similar
12245 way to Windows NT.</P
12248 >DO NOT CHANGE THIS PARAMETER UNLESS YOU HAVE READ
12249 AND UNDERSTOOD THE SAMBA OPLOCK CODE</EM
12254 >oplock contention limit = 2</B
12264 >This boolean option tells smbd whether to
12265 issue oplocks (opportunistic locks) to file open requests on this
12266 share. The oplock code can dramatically (approx. 30% or more) improve
12267 the speed of access to files on Samba servers. It allows the clients
12268 to aggressively cache files locally and you may want to disable this
12269 option for unreliable network environments (it is turned on by
12270 default in Windows NT Servers). For more information see the file
12280 >Oplocks may be selectively turned off on certain files with a
12282 HREF="#VETOOPLOCKFILES
"
12286 > veto oplock files</I
12289 > parameter. On some systems
12290 oplocks are recognized by the underlying operating system. This
12291 allows data synchronization between all access to oplocked files,
12292 whether it be via Samba or NFS or a local UNIX process. See the
12298 > parameter for details.</P
12301 HREF="#KERNELOPLOCKS
"
12310 HREF="#LEVEL2OPLOCKS
"
12314 > level2 oplocks</I
12331 >This integer value controls what level Samba
12332 advertises itself as for browse elections. The value of this
12333 parameter determines whether <A
12338 has a chance of becoming a local master browser for the <TT
12343 > in the local broadcast area.</P
12347 >By default, Samba will win
12348 a local master browsing election over all Microsoft operating
12349 systems except a Windows NT 4.0/2000 Domain Controller. This
12350 means that a misconfigured Samba host can effectively isolate
12351 a subnet for browsing purposes. See <TT
12373 NAME="OS2DRIVERMAP
"
12375 >os2 driver map (G)</DT
12378 >The parameter is used to define the absolute
12379 path to a file containing a mapping of Windows NT printer driver
12380 names to OS/2 printer driver names. The format is:</P
12382 ><nt driver name> = <os2 driver
12383 name>.<device name></P
12385 >For example, a valid entry using the HP LaserJet 5
12386 printer driver woudl appear as <B
12388 >HP LaserJet 5L = LASERJET.HP
12392 >The need for the file is due to the printer driver namespace
12393 problem described in the <A
12394 HREF="printer_driver2.html
"
12398 >. For more details on OS/2 clients, please
12400 HREF="OS2-Client-HOWTO.html
"
12404 > containing in the Samba documentation.</P
12408 >os2 driver map = <empty string>
12414 NAME="PAMPASSWORDCHANGE
"
12416 >pam password change (G)</DT
12419 >With the addition of better PAM support in Samba 2.2,
12420 this parameter, it is possible to use PAM's password change control
12421 flag for Samba. If enabled, then PAM will be used for password
12422 changes when requested by an SMB client, and the <A
12436 >pam password change = no</B
12443 >panic action (G)</DT
12446 >This is a Samba developer option that allows a
12447 system command to be called when either <A
12456 crashes. This is usually used to draw attention to the fact that
12457 a problem occurred.</P
12461 >panic action = <empty string></B
12466 >panic action = "/bin/sleep
90000"</B
12473 >passwd chat (G)</DT
12476 >This string controls the <EM
12479 conversation that takes places between <A
12483 > and the local password changing
12484 program to change the users password. The string describes a
12485 sequence of response-receive pairs that <A
12489 > uses to determine what to send to the
12491 HREF="#PASSWDPROGRAM
"
12499 > and what to expect back. If the expected output is not
12500 received then the password is not changed.</P
12502 >This chat sequence is often quite site specific, depending
12503 on what local methods are used for password control (such as NIS
12506 >The string can contain the macros <TT
12517 > which are substituted for the old
12518 and new passwords respectively. It can also contain the standard
12531 > to give line-feed,
12532 carriage-return, tab and space.</P
12534 >The string can also contain a '*' which matches
12535 any sequence of characters.</P
12537 >Double quotes can be used to collect strings with spaces
12538 in them into a single string.</P
12540 >If the send string in any part of the chat sequence
12541 is a fullstop ".
", then no string is sent. Similarly,
12542 if the expect string is a fullstop then no string is expected.</P
12544 >Note that if the <A
12545 HREF="#UNIXPASSWORDSYNC
"
12553 > parameter is set to true, then this
12554 sequence is called <EM
12556 > when the SMB password
12557 in the smbpasswd file is being changed, without access to the old
12558 password cleartext. In this case the old password cleartext is set
12559 to "" (the empty string).</P
12562 HREF="#UNIXPASSWORDSYNC
"
12571 HREF="#PASSWDPROGRAM
"
12575 > passwd program</I
12579 HREF="#PASSWDCHATDEBUG
"
12583 >passwd chat debug</I
12590 >passwd chat = *new*password* %n\n
12591 *new*password* %n\n *changed*</B
12596 >passwd chat = "*Enter OLD password*
" %o\n
12597 "*Enter NEW password*
" %n\n "*Reenter NEW password*
" %n\n "*Password
12603 NAME="PASSWDCHATDEBUG
"
12605 >passwd chat debug (G)</DT
12608 >This boolean specifies if the passwd chat script
12609 parameter is run in <EM
12611 > mode. In this mode the
12612 strings passed to and received from the passwd chat are printed
12627 of 100. This is a dangerous option as it will allow plaintext passwords
12628 to be seen in the <B
12631 > log. It is available to help
12632 Samba admins debug their <TT
12638 when calling the <TT
12644 be turned off after this has been done. This parameter is off by
12657 HREF="#PASSWDPROGRAM
"
12669 >passwd chat debug = no</B
12674 NAME="PASSWDPROGRAM
"
12676 >passwd program (G)</DT
12679 >The name of a program that can be used to set
12680 UNIX user passwords. Any occurrences of <TT
12686 will be replaced with the user name. The user name is checked for
12687 existence before calling the password changing program.</P
12689 >Also note that many passwd programs insist in <EM
12692 > passwords, such as a minimum length, or the inclusion
12693 of mixed case chars and digits. This can pose a problem as some clients
12694 (such as Windows for Workgroups) uppercase the password before sending
12705 > parameter is set to <TT
12709 > then this program is called <EM
12712 before the SMB password in the <A
12713 HREF="smbpasswd
.5.html
"
12717 > file is changed. If this UNIX password change fails, then
12721 > will fail to change the SMB password also
12722 (this is by design).</P
12727 >unix password sync</I
12730 is set this parameter <EM
12731 >MUST USE ABSOLUTE PATHS</EM
12735 > programs called, and must be examined
12736 for security implications. Note that by default <TT
12748 HREF="#UNIXPASSWORDSYNC
"
12760 >passwd program = /bin/passwd</B
12765 >passwd program = /sbin/npasswd %u</B
12771 NAME="PASSWORDLEVEL
"
12773 >password level (G)</DT
12776 >Some client/server combinations have difficulty
12777 with mixed-case passwords. One offending client is Windows for
12778 Workgroups, which for some reason forces passwords to upper
12779 case when using the LANMAN1 protocol, but leaves them alone when
12780 using COREPLUS! Another problem child is the Windows 95/98
12781 family of operating systems. These clients upper case clear
12782 text passwords even when NT LM 0.12 selected by the protocol
12783 negotiation request/response.</P
12785 >This parameter defines the maximum number of characters
12786 that may be upper case in passwords.</P
12788 >For example, say the password given was "FRED
". If <TT
12791 > password level</I
12793 > is set to 1, the following combinations
12794 would be tried if "FRED
" failed:</P
12796 >"Fred
", "fred
", "fRed
", "frEd
","freD
"</P
12804 the following combinations would also be tried: </P
12806 >"FRed
", "FrEd
", "FreD
", "fREd
", "fReD
", "frED
", ..</P
12810 >The higher value this parameter is set to the more likely
12811 it is that a mixed case password will be matched against a single
12812 case password. However, you should be aware that use of this
12813 parameter reduces security and increases the time taken to
12814 process a new connection.</P
12816 >A value of zero will cause only two attempts to be
12817 made - the password as is and the password in all-lower case.</P
12821 >password level = 0</B
12826 >password level = 4</B
12831 NAME="PASSWORDSERVER
"
12833 >password server (G)</DT
12836 >By specifying the name of another SMB server (such
12837 as a WinNT box) with this option, and using <B
12843 >security = server</B
12844 > you can get Samba
12845 to do all its username/password validation via a remote server.</P
12847 >This option sets the name of the password server to use.
12848 It must be a NetBIOS name, so if the machine's NetBIOS name is
12849 different from its Internet name then you may have to add its NetBIOS
12850 name to the lmhosts file which is stored in the same directory
12856 >The name of the password server is looked up using the
12858 HREF="#NAMERESOLVEORDER
"
12866 > and so may resolved
12867 by any method and order described in that parameter.</P
12869 >The password server much be a machine capable of using
12870 the "LM1.2X002
" or the "NT LM
0.12" protocol, and it must be in
12871 user level security mode.</P
12875 > Using a password server
12876 means your UNIX box (running Samba) is only as secure as your
12877 password server. <EM
12878 >DO NOT CHOOSE A PASSWORD SERVER THAT
12879 YOU DON'T COMPLETELY TRUST</EM
12882 >Never point a Samba server at itself for password
12883 serving. This will cause a loop and could lock up your Samba
12886 >The name of the password server takes the standard
12887 substitutions, but probably the only useful one is <TT
12893 >, which means the Samba server will use the incoming
12894 client as the password server. If you use this then you better
12895 trust your clients, and you had better restrict them with hosts allow!</P
12902 > parameter is set to
12906 >, then the list of machines in this
12907 option must be a list of Primary or Backup Domain controllers for the
12908 Domain or the character '*', as the Samba server is effectively
12909 in that domain, and will use cryptographically authenticated RPC calls
12910 to authenticate the user logging on. The advantage of using <B
12912 > security = domain</B
12913 > is that if you list several hosts in the
12917 >password server</I
12923 > will try each in turn till it finds one that responds. This
12924 is useful in case your primary server goes down.</P
12929 >password server</I
12932 to the character '*', then Samba will attempt to auto-locate the
12933 Primary or Backup Domain controllers to authenticate against by
12934 doing a query for the name <TT
12936 >WORKGROUP<1C></TT
12938 and then contacting each server returned in the list of IP
12939 addresses from the name resolution source. </P
12950 >, then there are different
12951 restrictions that <B
12953 >security = domain</B
12961 >You may list several password servers in
12965 >password server</I
12967 > parameter, however if an
12971 > makes a connection to a password server,
12972 and then the password server fails, no more users will be able
12973 to be authenticated from this <B
12977 restriction of the SMB/CIFS protocol when in <B
12981 > mode and cannot be fixed in Samba.</P
12985 >If you are using a Windows NT server as your
12986 password server then you will have to ensure that your users
12987 are able to login from the Samba server, as when in <B
12989 > security=server</B
12990 > mode the network logon will appear to
12991 come from there rather than from the users workstation.</P
13008 >password server = <empty string></B
13014 >password server = NT-PDC, NT-BDC1, NT-BDC2
13020 >password server = *</B
13030 >This parameter specifies a directory to which
13031 the user of the service is to be given access. In the case of
13032 printable services, this is where print data will spool prior to
13033 being submitted to the host for printing.</P
13035 >For a printable service offering guest access, the service
13036 should be readonly and the path should be world-writeable and
13037 have the sticky bit set. This is not mandatory of course, but
13038 you probably won't get the results you expect if you do
13041 >Any occurrences of <TT
13047 will be replaced with the UNIX username that the client is using
13048 on this connection. Any occurrences of <TT
13054 will be replaced by the NetBIOS name of the machine they are
13055 connecting from. These replacements are very useful for setting
13056 up pseudo home directories for users.</P
13058 >Note that this path will be based on <A
13066 > if one was specified.</P
13074 >path = /home/fred</B
13079 NAME="POSIXLOCKING
"
13081 >posix locking (S)</DT
13092 daemon maintains an database of file locks obtained by SMB clients.
13093 The default behavior is to map this internal database to POSIX
13094 locks. This means that file locks obtained by SMB clients are
13095 consistent with those seen by POSIX compliant applications accessing
13096 the files via a non-SMB method (e.g. NFS or local file access).
13097 You should never need to disable this parameter.</P
13101 >posix locking = yes</B
13111 >This option specifies a command to be run
13112 whenever the service is disconnected. It takes the usual
13113 substitutions. The command may be run as the root on some
13116 >An interesting example may be do unmount server
13121 >postexec = /etc/umount /cdrom</B
13136 >none (no command executed)</EM
13142 >postexec = echo \"%u disconnected from %S
13143 from %m (%I)\
" >> /tmp/log</B
13150 >postscript (S)</DT
13153 >This parameter forces a printer to interpret
13154 the print files as postscript. This is done by adding a <TT
13158 > to the start of print output.</P
13160 >This is most useful when you have lots of PCs that persist
13161 in putting a control-D at the start of print jobs, which then
13162 confuses your printer.</P
13166 >postscript = no</B
13176 >This option specifies a command to be run whenever
13177 the service is connected to. It takes the usual substitutions.</P
13179 >An interesting example is to send the users a welcome
13180 message every time they log in. Maybe a message of the day? Here
13185 >preexec = csh -c 'echo \"Welcome to %S!\
" |
13186 /usr/local/samba/bin/smbclient -M %m -I %I' & </B
13189 >Of course, this could get annoying after a while :-)</P
13192 HREF="#PREEXECCLOSE
"
13212 >none (no command executed)</EM
13217 >preexec = echo \"%u connected to %S from %m
13218 (%I)\
" >> /tmp/log</B
13223 NAME="PREEXECCLOSE
"
13225 >preexec close (S)</DT
13228 >This boolean option controls whether a non-zero
13229 return code from <A
13238 > should close the service being connected to.</P
13242 >preexec close = no</B
13247 NAME="PREFERREDMASTER
"
13249 >preferred master (G)</DT
13252 >This boolean parameter controls if <A
13256 > is a preferred master browser
13257 for its workgroup.</P
13259 >If this is set to true, on startup, <B
13263 will force an election, and it will have a slight advantage in
13264 winning the election. It is recommended that this parameter is
13265 used in conjunction with <B
13268 HREF="#DOMAINMASTER
"
13279 > can guarantee becoming a domain master.</P
13281 >Use this option with caution, because if there are several
13282 hosts (whether Samba servers, Windows 95 or NT) that are preferred
13283 master browsers on the same subnet, they will each periodically
13284 and continuously attempt to become the local master browser.
13285 This will result in unnecessary broadcast traffic and reduced browsing
13301 >preferred master = auto</B
13306 NAME="PREFEREDMASTER
"
13308 >prefered master (G)</DT
13312 HREF="#PREFERREDMASTER
"
13316 > preferred master</I
13319 > for people who cannot spell :-).</P
13328 >This is a list of services that you want to be
13329 automatically added to the browse lists. This is most useful
13330 for homes and printers services that would otherwise not be
13333 >Note that if you just want all printers in your
13334 printcap file loaded then the <A
13335 HREF="#LOADPRINTERS
"
13342 > option is easier.</P
13345 >no preloaded services</EM
13350 >preload = fred lp colorlp</B
13355 NAME="PRESERVECASE
"
13357 >preserve case (S)</DT
13360 > This controls if new filenames are created
13361 with the case that the client passes, or if they are forced to
13363 HREF="#DEFAULTCASE
"
13375 >preserve case = yes</B
13378 >See the section on <A
13382 > for a fuller discussion.</P
13386 NAME="PRINTCOMMAND
"
13388 >print command (S)</DT
13391 >After a print job has finished spooling to
13392 a service, this command will be used via a <B
13396 call to process the spool file. Typically the command specified will
13397 submit the spool file to the host's printing subsystem, but there
13398 is no requirement that this be the case. The server will not remove
13399 the spool file, so whatever command you specify should remove the
13400 spool file when it has been processed, otherwise you will need to
13401 manually remove old spool files.</P
13403 >The print command is simply a text string. It will be used
13404 verbatim, with two exceptions: All occurrences of <TT
13415 > will be replaced by the
13416 appropriate spool file name, and all occurrences of <TT
13422 > will be replaced by the appropriate printer name. The
13423 spool file name is generated automatically by the server, the printer
13424 name is discussed below.</P
13426 >The print command <EM
13429 one occurrence of <TT
13445 > is optional. At the time
13446 a job is submitted, if no printer name is supplied the <TT
13452 > will be silently removed from the printer command.</P
13454 >If specified in the [global] section, the print command given
13455 will be used for any printable service that does not have its own
13456 print command specified.</P
13458 >If there is neither a specified print command for a
13459 printable service nor a global print command, spool files will
13460 be created but not processed and (most importantly) not removed.</P
13462 >Note that printing may fail on some UNIXes from the
13466 > account. If this happens then create
13467 an alternative guest account that can print and set the <A
13468 HREF="#GUESTACCOUNT
"
13476 in the [global] section.</P
13478 >You can form quite complex print commands by realizing
13479 that they are just passed to a shell. For example the following
13480 will log a print job, print the file, then remove it. Note that
13481 ';' is the usual separator for command in shell scripts.</P
13485 >print command = echo Printing %s >>
13486 /tmp/print.log; lpr -P %p %s; rm %s</B
13489 >You may have to vary this command considerably depending
13490 on how you normally print files on your system. The default for
13491 the parameter varies depending on the setting of the <A
13503 >printing= BSD, AIX, QNX, LPRNG
13509 >print command = lpr -r -P%p %s</B
13514 >printing= SYS or HPUX :</B
13519 >print command = lp -c -d%p %s; rm %s</B
13524 >printing=SOFTQ :</B
13529 >print command = lp -d%p -s %s; rm %s</B
13534 >print command = /usr/local/samba/bin/myprintscript
13562 >If this parameter is <TT
13566 clients may open, write to and submit spool files on the directory
13567 specified for the service. </P
13569 >Note that a printable service will ALWAYS allow writing
13570 to the service path (user privileges permitting) via the spooling
13571 of print data. The <A
13580 > parameter controls only non-printing access to
13596 HREF="#PRINTCAPNAME
"
13607 NAME="PRINTCAPNAME
"
13609 >printcap name (G)</DT
13612 >This parameter may be used to override the
13613 compiled-in default printcap name used by the server (usually <TT
13615 > /etc/printcap</TT
13616 >). See the discussion of the <A
13619 > section above for reasons
13620 why you might want to do this.</P
13622 >On System V systems that use <B
13626 list available printers you can use <B
13628 >printcap name = lpstat
13630 > to automatically obtain lists of available printers. This
13631 is the default for systems that define SYSV at configure time in
13632 Samba (this includes most System V based systems). If <TT
13641 these systems then Samba will launch <B
13645 attempt to parse the output to obtain a printer list.</P
13647 >A minimal printcap file would look something like this:</P
13656 CLASS="PROGRAMLISTING
"
13657 > print1|My Printer 1
13658 print2|My Printer 2
13659 print3|My Printer 3
13660 print4|My Printer 4
13661 print5|My Printer 5
13668 >where the '|' separates aliases of a printer. The fact
13669 that the second alias has a space in it gives a hint to Samba
13670 that it's a comment.</P
13674 >: Under AIX the default printcap
13678 >. Samba will assume the
13682 > format if the string
13686 > appears in the printcap filename.</P
13690 >printcap name = /etc/printcap</B
13695 >printcap name = /etc/myprintcap</B
13700 NAME="PRINTERADMIN
"
13702 >printer admin (S)</DT
13705 >This is a list of users that can do anything to
13706 printers via the remote administration interfaces offered by MS-RPC
13707 (usually using a NT workstation). Note that the root user always
13708 has admin rights.</P
13712 >printer admin = <empty string></B
13718 >printer admin = admin, @staff</B
13723 NAME="PRINTERDRIVER
"
13725 >printer driver (S)</DT
13730 >This is a depreciated
13731 parameter and will be removed in the next major release
13732 following version 2.2. Please see the instructions in
13735 >PRINTER_DRIVER2.txt</TT
13740 > of the Samba distribution for more information
13741 on the new method of loading printer drivers onto a Samba server.
13744 >This option allows you to control the string
13745 that clients receive when they ask the server for the printer driver
13746 associated with a printer. If you are using Windows95 or Windows NT
13747 then you can use this to automate the setup of printers on your
13750 >You need to set this parameter to the exact string (case
13751 sensitive) that describes the appropriate printer driver for your
13752 system. If you don't know the exact string to use then you should
13753 first try with no <A
13754 HREF="#PRINTERDRIVER
"
13758 > printer driver</I
13761 > option set and the client will
13762 give you a list of printer drivers. The appropriate strings are
13763 shown in a scroll box after you have chosen the printer manufacturer.</P
13766 HREF="#PRINTERDRIVERFILE
"
13778 >printer driver = HP LaserJet 4L</B
13783 NAME="PRINTERDRIVERFILE
"
13785 >printer driver file (G)</DT
13790 >This is a depreciated
13791 parameter and will be removed in the next major release
13792 following version 2.2. Please see the instructions in
13795 >PRINTER_DRIVER2.txt</TT
13800 > of the Samba distribution for more information
13801 on the new method of loading printer drivers onto a Samba server.
13804 >This parameter tells Samba where the printer driver
13805 definition file, used when serving drivers to Windows 95 clients, is
13806 to be found. If this is not set, the default is :</P
13811 CLASS="REPLACEABLE
"
13813 >SAMBA_INSTALL_DIRECTORY</I
13816 /lib/printers.def</TT
13819 >This file is created from Windows 95 <TT
13823 > files found on the Windows 95 client system. For more
13824 details on setting up serving of printer drivers to Windows 95
13825 clients, see the documentation file in the <TT
13831 >PRINTER_DRIVER.txt</TT
13835 HREF="#PRINTERDRIVERLOCATION
"
13839 > printer driver location</I
13845 >None (set in compile).</EM
13850 >printer driver file =
13851 /usr/local/samba/printers/drivers.def</B
13856 NAME="PRINTERDRIVERLOCATION
"
13858 >printer driver location (S)</DT
13863 >This is a depreciated
13864 parameter and will be removed in the next major release
13865 following version 2.2. Please see the instructions in
13868 >PRINTER_DRIVER2.txt</TT
13873 > of the Samba distribution for more information
13874 on the new method of loading printer drivers onto a Samba server.
13877 >This parameter tells clients of a particular printer
13878 share where to find the printer driver files for the automatic
13879 installation of drivers for Windows 95 machines. If Samba is set up
13880 to serve printer drivers to Windows 95 machines, this should be set to</P
13884 >\\MACHINE\PRINTER$</B
13887 >Where MACHINE is the NetBIOS name of your Samba server,
13888 and PRINTER$ is a share you set up for serving printer driver
13889 files. For more details on setting this up see the documentation
13895 > PRINTER_DRIVER.txt</TT
13899 HREF="#PRINTERDRIVERFILE
"
13903 > printer driver file</I
13915 >printer driver location = \\MACHINE\PRINTER$
13923 >printer name (S)</DT
13926 >This parameter specifies the name of the printer
13927 to which print jobs spooled through a printable service will be sent.</P
13929 >If specified in the [global] section, the printer
13930 name given will be used for any printable service that does
13931 not have its own printer name specified.</P
13934 >none (but may be <TT
13938 on many systems)</EM
13943 >printer name = laserwriter</B
13954 HREF="#PRINTERNAME
"
13970 >This parameters controls how printer status
13971 information is interpreted on your system. It also affects the
13972 default values for the <TT
13992 >lpresume command</I
14000 > if specified in the
14001 [global]f> section.</P
14003 >Currently eight printing styles are supported. They are
14037 >To see what the defaults are for the other print
14038 commands when using the various options use the <A
14039 HREF="testparm
.1.html
"
14044 >This option can be set on a per printer basis</P
14046 >See also the discussion in the <A
14059 HREF="#MAXPROTOCOL
"
14088 NAME="QUEUEPAUSECOMMAND
"
14090 >queuepause command (S)</DT
14093 >This parameter specifies the command to be
14094 executed on the server host in order to pause the printerqueue.</P
14096 >This command should be a program or script which takes
14097 a printer name as its only parameter and stops the printerqueue,
14098 such that no longer jobs are submitted to the printer.</P
14100 >This command is not supported by Windows for Workgroups,
14101 but can be issued from the Printer's window under Windows 95
14109 > is given then the printername
14110 is put in its place. Otherwise it is placed at the end of the command.
14113 >Note that it is good practice to include the absolute
14114 path in the command as the PATH may not be available to the
14118 >depends on the setting of <TT
14129 >queuepause command = disable %p</B
14134 NAME="QUEUERESUMECOMMAND
"
14136 >queueresume command (S)</DT
14139 >This parameter specifies the command to be
14140 executed on the server host in order to resume the printerqueue. It
14141 is the command to undo the behavior that is caused by the
14142 previous parameter (<A
14143 HREF="#QUEUEPAUSECOMMAND
"
14147 > queuepause command</I
14152 >This command should be a program or script which takes
14153 a printer name as its only parameter and resumes the printerqueue,
14154 such that queued jobs are resubmitted to the printer.</P
14156 >This command is not supported by Windows for Workgroups,
14157 but can be issued from the Printer's window under Windows 95
14165 > is given then the printername
14166 is put in its place. Otherwise it is placed at the end of the
14169 >Note that it is good practice to include the absolute
14170 path in the command as the PATH may not be available to the
14174 >depends on the setting of <A
14188 >queuepause command = enable %p
14199 >This boolean parameter controls whether <A
14203 > will support the "Read
14204 Block Multiplex
" SMB. This is now rarely used and defaults to
14208 >. You should never need to set this
14223 >This is a list of users that are given read-only
14224 access to a service. If the connecting user is in this list then
14225 they will not be given write access, no matter what the <A
14234 option is set to. The list can include group names using the
14235 syntax described in the <A
14236 HREF="#INVALIDUSERS
"
14253 > parameter and the <A
14254 HREF="#INVALIDUSERS
"
14266 >read list = <empty string></B
14271 >read list = mary, @students</B
14281 >Note that this is an inverted synonym for <A
14298 >This parameter controls whether or not the server
14299 will support the raw read SMB requests when transferring data
14302 >If enabled, raw reads allow reads of 65535 bytes in
14303 one packet. This typically provides a major performance benefit.
14306 >However, some clients either negotiate the allowable
14307 block size incorrectly or are incapable of supporting larger block
14308 sizes, and for these clients you may need to disable raw reads.</P
14310 >In general this parameter should be viewed as a system tuning
14311 tool and left severely alone. See also <A
14339 affects the overlap of disk reads/writes with network reads/writes.
14340 If the amount of data being transferred in several of the SMB
14341 commands (currently SMBwrite, SMBwriteX and SMBreadbraw) is larger
14342 than this value then the server begins writing the data before it
14343 has received the whole packet from the network, or in the case of
14344 SMBreadbraw, it begins writing to the network before all the data
14345 has been read from disk.</P
14347 >This overlapping works best when the speeds of disk and
14348 network access are similar, having very little effect when the
14349 speed of one is much greater than the other.</P
14351 >The default value is 16384, but very little experimentation
14352 has been done yet to determine the optimal value, and it is likely
14353 that the best value will vary greatly between systems anyway.
14354 A value over 65536 is pointless and will cause you to allocate
14355 memory unnecessarily.</P
14359 >read size = 16384</B
14364 >read size = 8192</B
14369 NAME="REMOTEANNOUNCE
"
14371 >remote announce (G)</DT
14374 >This option allows you to setup <A
14378 > to periodically announce itself
14379 to arbitrary IP addresses with an arbitrary workgroup name.</P
14381 >This is useful if you want your Samba server to appear
14382 in a remote workgroup for which the normal browse propagation
14383 rules don't work. The remote workgroup can be anywhere that you
14384 can send IP packets to.</P
14390 >remote announce = 192.168.2.255/SERVERS
14391 192.168.4.255/STAFF</B
14394 >the above line would cause nmbd to announce itself
14395 to the two given IP addresses using the given workgroup names.
14396 If you leave out the workgroup name then the one given in
14406 parameter is used instead.</P
14408 >The IP addresses you choose would normally be the broadcast
14409 addresses of the remote networks, but can also be the IP addresses
14410 of known browse masters if your network config is that stable.</P
14412 >See the documentation file <TT
14423 >remote announce = <empty string>
14429 NAME="REMOTEBROWSESYNC
"
14431 >remote browse sync (G)</DT
14434 >This option allows you to setup <A
14438 > to periodically request
14439 synchronization of browse lists with the master browser of a samba
14440 server that is on a remote segment. This option will allow you to
14441 gain browse lists for multiple workgroups across routed networks. This
14442 is done in a manner that does not work with any non-samba servers.</P
14444 >This is useful if you want your Samba server and all local
14445 clients to appear in a remote workgroup for which the normal browse
14446 propagation rules don't work. The remote workgroup can be anywhere
14447 that you can send IP packets to.</P
14453 >remote browse sync = 192.168.2.255 192.168.4.255
14457 >the above line would cause <B
14461 the master browser on the specified subnets or addresses to
14462 synchronize their browse lists with the local server.</P
14464 >The IP addresses you choose would normally be the broadcast
14465 addresses of the remote networks, but can also be the IP addresses
14466 of known browse masters if your network config is that stable. If
14467 a machine IP address is given Samba makes NO attempt to validate
14468 that the remote machine is available, is listening, nor that it
14469 is in fact the browse master on it's segment.</P
14473 >remote browse sync = <empty string>
14479 NAME="RESTRICTACLWITHMASK
"
14481 >restrict acl with mask (S)</DT
14484 >This is a boolean parameter. If set to false (default), then
14485 Creation of files with access control lists (ACLS) and modification of ACLs
14486 using the Windows NT/2000 ACL editor will be applied directly to the file
14489 >If set to True, then all requests to set an ACL on a file will have the
14500 HREF="#FORCECREATEMODE
"
14504 >force create mode</I
14508 applied before setting the ACL, and all requests to set an ACL on a directory will
14509 have the parameters <A
14510 HREF="#DIRECTORYMASK
"
14519 HREF="#FORCEDIRECTORYMODE
"
14527 > applied before setting the ACL.
14540 HREF="#FORCECREATEMODE
"
14544 >force create mode</I
14549 HREF="#DIRECTORYMASK
"
14558 HREF="#FORCEDIRECTORYMODE
"
14562 >force directory mode</I
14570 >restrict acl with mask = no</B
14575 NAME="RESTRICTANONYMOUS
"
14577 >restrict anonymous (G)</DT
14580 >This is a boolean parameter. If it is true, then
14581 anonymous access to the server will be restricted, namely in the
14582 case where the server is expecting the client to send a username,
14583 but it doesn't. Setting it to true will force these anonymous
14584 connections to be denied, and the client will be required to always
14585 supply a username and password when connecting. Use of this parameter
14586 is only recommended for homogeneous NT client environments.</P
14588 >This parameter makes the use of macro expansions that rely
14589 on the username (%U, %G, etc) consistent. NT 4.0
14590 likes to use anonymous connections when refreshing the share list,
14591 and this is a way to work around that.</P
14593 >When restrict anonymous is true, all anonymous connections
14594 are denied no matter what they are for. This can effect the ability
14595 of a machine to access the samba Primary Domain Controller to revalidate
14596 it's machine account after someone else has logged on the client
14597 interactively. The NT client will display a message saying that
14598 the machine's account in the domain doesn't exist or the password is
14599 bad. The best way to deal with this is to reboot NT client machines
14600 between interactive logons, using "Shutdown and Restart
", rather
14601 than "Close all programs and logon as a different user
".</P
14605 >restrict anonymous = no</B
14616 HREF="#ROOTDIRECTORY
"
14620 >root directory"</I
14633 HREF=
"#ROOTDIRECTORY"
14637 >root directory
"</I
14644 NAME="ROOTDIRECTORY
"
14646 >root directory (G)</DT
14649 >The server will <B
14653 Change it's root directory) to this directory on startup. This is
14654 not strictly necessary for secure operation. Even without it the
14655 server will deny access to files not in one of the service entries.
14656 It may also check for, and deny access to, soft links to other
14657 parts of the filesystem, or attempts to use "..
" in file names
14658 to access other directories (depending on the setting of the <A
14675 than "/
" adds an extra level of security, but at a price. It
14676 absolutely ensures that no access is given to files not in the
14677 sub-tree specified in the <TT
14685 > some files needed for
14686 complete operation of the server. To maintain full operability
14687 of the server you will need to mirror some system files
14693 > tree. In particular
14694 you will need to mirror <TT
14698 subset of it), and any binaries or configuration files needed for
14699 printing (if required). The set of files that must be mirrored is
14700 operating system dependent.</P
14704 >root directory = /</B
14709 >root directory = /homes/smb</B
14714 NAME="ROOTPOSTEXEC
"
14716 >root postexec (S)</DT
14719 >This is the same as the <TT
14725 parameter except that the command is run as root. This
14726 is useful for unmounting filesystems
14727 (such as cdroms) after a connection is closed.</P
14741 >root postexec = <empty string>
14749 >root preexec (S)</DT
14752 >This is the same as the <TT
14758 parameter except that the command is run as root. This
14759 is useful for mounting filesystems (such as cdroms) after a
14760 connection is closed.</P
14771 HREF="#PREEXECCLOSE
"
14782 >root preexec = <empty string>
14788 NAME="ROOTPREEXECCLOSE
"
14790 >root preexec close (S)</DT
14793 >This is the same as the <TT
14799 > parameter except that the command is run as root.</P
14810 HREF="#PREEXECCLOSE
"
14821 >root preexec close = no</B
14831 >This option affects how clients respond to
14832 Samba and is one of the most important settings in the <TT
14837 >The option sets the "security mode bit
" in replies to
14838 protocol negotiations with <A
14843 > to turn share level security on or off. Clients decide
14844 based on this bit whether (and how) to transfer user and password
14845 information to the server.</P
14849 >security = user</B
14851 the most common setting needed when talking to Windows 98 and
14854 >The alternatives are <B
14856 >security = share</B
14860 >security = server</B
14867 >In versions of Samba prior to 2..0, the default was
14870 >security = share</B
14871 > mainly because that was
14872 the only option at one stage.</P
14874 >There is a bug in WfWg that has relevance to this
14875 setting. When in user or server level security a WfWg client
14876 will totally ignore the password you type in the "connect
14877 drive
" dialog box. This makes it very difficult (if not impossible)
14878 to connect to a Samba service as anyone except the user that
14879 you are logged into WfWg as.</P
14881 >If your PCs use usernames that are the same as their
14882 usernames on the UNIX machine then you will want to use
14885 >security = user</B
14886 >. If you mostly use usernames
14887 that don't exist on the UNIX box then use <B
14893 >You should also use <B
14895 >security = share</B
14897 want to mainly setup shares without a password (guest shares). This
14898 is commonly used for a shared printer server. It is more difficult
14899 to setup guest shares with <B
14901 >security = user</B
14912 >parameter for details.</P
14914 >It is possible to use <B
14919 > where it is offers both user and share
14920 level security under different <A
14921 HREF="#NETBIOSALIASES
"
14925 >NetBIOS aliases</I
14930 >The different settings will now be explained.</P
14933 NAME="SECURITYEQUALSSHARE
"
14940 >When clients connect to a share level security server then
14941 need not log onto the server with a valid username and password before
14942 attempting to connect to a shared resource (although modern clients
14943 such as Windows 95/98 and Windows NT will send a logon request with
14944 a username but no password when talking to a <B
14948 > server). Instead, the clients send authentication information
14949 (passwords) on a per-share basis, at the time they attempt to connect
14958 uses a valid UNIX user to act on behalf of the client, even in
14961 >security = share</B
14962 > level security.</P
14964 >As clients are not required to send a username to the server
14965 in share level security, <B
14969 techniques to determine the correct UNIX user to use on behalf
14972 >A list of possible UNIX usernames to match with the given
14973 client password is constructed using the following methods :</P
14988 > parameter is set, then all the other
14989 stages are missed and only the <A
14990 HREF="#GUESTACCOUNT
"
14997 > username is checked.
15002 >Is a username is sent with the share connection
15003 request, then this username (after mapping - see <A
15004 HREF="#USERNAMEMAP
"
15012 is added as a potential username.</P
15016 >If the client did a previous <EM
15019 > request (the SessionSetup SMB call) then the
15020 username sent in this SMB will be added as a potential username.
15025 >The name of the service the client requested is
15026 added as a potential username.</P
15030 >The NetBIOS name of the client is added to
15031 the list as a potential username.</P
15035 >Any users on the <A
15043 > list are added as potential usernames.
15054 not set, then this list is then tried with the supplied password.
15055 The first user for whom the password matches will be used as the
15064 set, or no username can be determined then if the share is marked
15065 as available to the <TT
15071 guest user will be used, otherwise access is denied.</P
15073 >Note that it can be <EM
15076 in share-level security as to which UNIX username will eventually
15077 be used in granting access.</P
15079 >See also the section <A
15081 > NOTE ABOUT USERNAME/PASSWORD VALIDATION</A
15085 NAME="SECURITYEQUALSUSER
"
15092 >This is the default security setting in Samba 2.2.
15093 With user-level security a client must first "log=on
" with a
15094 valid username and password (which can be mapped using the <A
15095 HREF="#USERNAMEMAP
"
15103 parameter). Encrypted passwords (see the <A
15104 HREF="#ENCRYPTPASSWORDS
"
15108 >encrypted passwords</I
15111 > parameter) can also
15112 be used in this security mode. Parameters such as <A
15128 > if set are then applied and
15129 may change the UNIX user to use on this connection, but only after
15130 the user has been successfully authenticated.</P
15134 > that the name of the resource being
15137 > sent to the server until after
15138 the server has successfully authenticated the client. This is why
15139 guest shares don't work in user level security without allowing
15140 the server to automatically map unknown users into the <A
15141 HREF="#GUESTACCOUNT
"
15158 > parameter for details on doing this.</P
15160 >See also the section <A
15162 > NOTE ABOUT USERNAME/PASSWORD VALIDATION</A
15166 NAME="SECURITYEQUALSSERVER
"
15173 >In this mode Samba will try to validate the username/password
15174 by passing it to another SMB server, such as an NT box. If this
15175 fails it will revert to <B
15177 >security = user</B
15179 that if encrypted passwords have been negotiated then Samba cannot
15180 revert back to checking the UNIX password file, it must have a valid
15184 > file to check users against. See the
15185 documentation file in the <TT
15191 >ENCRYPTION.txt</TT
15192 > for details on how to set this
15197 > that from the clients point of
15200 >security = server</B
15201 > is the same as <B
15203 > security = user</B
15204 >. It only affects how the server deals
15205 with the authentication, it does not in any way affect what the
15210 > that the name of the resource being
15213 > sent to the server until after
15214 the server has successfully authenticated the client. This is why
15215 guest shares don't work in user level security without allowing
15216 the server to automatically map unknown users into the <A
15217 HREF="#GUESTACCOUNT
"
15234 > parameter for details on doing this.</P
15236 >See also the section <A
15238 > NOTE ABOUT USERNAME/PASSWORD VALIDATION</A
15242 HREF="#PASSWORDSERVER
"
15250 > parameter and the <A
15251 HREF="#ENCRYPTPASSWORDS
"
15255 >encrypted passwords</I
15262 NAME="SECURITYEQUALSDOMAIN
"
15269 >This mode will only work correctly if <A
15270 HREF="smbpasswd
.8.html
"
15273 > has been used to add this
15274 machine into a Windows NT Domain. It expects the <A
15275 HREF="#ENCRYPTPASSWORDS
"
15279 >encrypted passwords</I
15283 > parameter to be set to <TT
15287 mode Samba will try to validate the username/password by passing
15288 it to a Windows NT Primary or Backup Domain Controller, in exactly
15289 the same way that a Windows NT Server would do.</P
15293 > that a valid UNIX user must still
15294 exist as well as the account on the Domain Controller to allow
15295 Samba to have a valid UNIX account to map file access to.</P
15299 > that from the clients point
15302 >security = domain</B
15303 > is the same as <B
15307 >. It only affects how the server deals with the authentication,
15308 it does not in any way affect what the client sees.</P
15312 > that the name of the resource being
15315 > sent to the server until after
15316 the server has successfully authenticated the client. This is why
15317 guest shares don't work in user level security without allowing
15318 the server to automatically map unknown users into the <A
15319 HREF="#GUESTACCOUNT
"
15336 > parameter for details on doing this.</P
15340 > There is currently a bug in the
15341 implementation of <B
15343 >security = domain</B
15345 to multi-byte character set usernames. The communication with a
15346 Domain Controller must be done in UNICODE and Samba currently
15347 does not widen multi-byte user names to UNICODE correctly, thus
15348 a multi-byte username will not be recognized correctly at the
15349 Domain Controller. This issue will be addressed in a future release.</P
15351 >See also the section <A
15353 > NOTE ABOUT USERNAME/PASSWORD VALIDATION</A
15357 HREF="#PASSWORDSERVER
"
15365 > parameter and the <A
15366 HREF="#ENCRYPTPASSWORDS
"
15370 >encrypted passwords</I
15378 >security = USER</B
15383 >security = DOMAIN</B
15388 NAME="SECURITYMASK
"
15390 >security mask (S)</DT
15393 >This parameter controls what UNIX permission
15394 bits can be modified when a Windows NT client is manipulating
15395 the UNIX permission on a file using the native NT security
15398 >This parameter is applied as a mask (AND'ed with) to
15399 the changed permission bits, thus preventing any bits not in
15400 this mask from being modified. Essentially, zero bits in this
15401 mask may be treated as a set of bits the user is not allowed
15404 >If not set explicitly this parameter is set to the same
15414 > parameter. To allow a user to modify all the
15415 user/group/world permissions on a file, set this parameter to
15420 > that users who can access the
15421 Samba server through other means can easily bypass this
15422 restriction, so it is primarily useful for standalone
15423 "appliance
" systems. Administrators of most normal systems will
15424 probably want to set it to 0777.</P
15427 HREF="#FORCEDIRECTORYSECURITYMODE
"
15431 >force directory security mode</I
15436 HREF="#DIRECTORYSECURITYMASK
"
15445 HREF="#FORCESECURITYMODE
"
15449 >force security mode</I
15456 >security mask = <same as create mask>
15462 >security mask = 0777</B
15467 NAME="SERVERSTRING
"
15469 >server string (G)</DT
15472 >This controls what string will show up in the
15473 printer comment box in print manager and next to the IPC connection
15477 >. It can be any string that you wish
15478 to show to your users.
</P
15480 >It also sets what will appear in browse lists next
15481 to the machine name.
</P
15488 > will be replaced with the Samba
15496 > will be replaced with the
15501 >server string = Samba %v
</B
15506 >server string = University of GNUs Samba
15512 NAME=
"SETDIRECTORY"
15514 >set directory (S)
</DT
15519 >set directory = no
</B
15521 users of the service may not use the setdir command to change
15527 > command is only implemented
15528 in the Digital Pathworks client. See the Pathworks documentation
15533 >set directory = no
</B
15540 >share modes (S)
</DT
15543 >This enables or disables the honoring of
15549 > during a file open. These
15550 modes are used by clients to gain exclusive read or write access
15553 >These open modes are not directly supported by UNIX, so
15554 they are simulated using shared memory, or lock files if your
15555 UNIX doesn't support shared memory (almost all do).
</P
15557 >The share modes that are enabled by this option are
15581 >This option gives full share compatibility and enabled
15586 > turn this parameter
15587 off as many Windows applications will break if you do so.
</P
15591 >share modes = yes
</B
15596 NAME=
"SHORTPRESERVECASE"
15598 >short preserve case (S)
</DT
15601 >This boolean parameter controls if new files
15602 which conform to
8.3 syntax, that is all in upper case and of
15603 suitable length, are created upper case, or if they are forced
15605 HREF=
"#DEFAULTCASE"
15613 >. This option can be use with
<A
15614 HREF=
"#PRESERVECASE"
15617 >preserve case = yes
</B
15620 > to permit long filenames to retain their case, while short
15621 names are lowered.
</P
15623 >See the section on
<A
15630 >short preserve case = yes
</B
15635 NAME=
"SHOWADDPRINTERWIZARD"
15637 >show add printer wizard (G)
</DT
15640 >With the introduction of MS-RPC based printing support
15641 for Windows NT/
2000 client in Samba
2.2, a
"Printers..." folder will
15642 appear on Samba hosts in the share listing. Normally this folder will
15643 contain an icon for the MS Add Printer Wizard (APW). However, it is
15644 possible to disable this feature regardless of the level of privilege
15645 of the connected user.
</P
15647 >Under normal circumstances, the Windows NT/
2000 client will
15648 open a handle on the printer server with OpenPrinterEx() asking for
15649 Administrator privileges. If the user does not have administrative
15650 access on the print server (i.e is not root or a member of the
15656 > group), the OpenPrinterEx()
15657 call fails and the clients another open call with a request for
15658 a lower privilege level. This should succeed, however the APW
15659 icon will not be displayed.
</P
15664 >show add printer wizard
</I
15667 parameter will always cause the OpenPrinterEx() on the server
15668 to fail. Thus the APW icon will never be displayed.
<EM
15670 >This does not prevent the same user from having
15671 administrative privilege on an individual printer.
</P
15674 HREF=
"#ADDPRINTERCOMMAND"
15683 HREF=
"#DELETEPRINTERCOMMAND"
15687 >deleteprinter command
</I
15691 HREF=
"#PRINTERADMIN"
15702 >show add printer wizard = yes
</B
15707 NAME=
"SMBPASSWDFILE"
15709 >smb passwd file (G)
</DT
15712 >This option sets the path to the encrypted
15713 smbpasswd file. By default the path to the smbpasswd file
15714 is compiled into Samba.
</P
15718 >smb passwd file = ${prefix}/private/smbpasswd
15724 >smb passwd file = /etc/samba/smbpasswd
15730 NAME=
"SOCKETADDRESS"
15732 >socket address (G)
</DT
15735 >This option allows you to control what
15736 address Samba will listen for connections on. This is used to
15737 support multiple virtual interfaces on the one server, each
15738 with a different configuration.
</P
15740 >By default samba will accept connections on any
15745 >socket address =
192.168.2.20</B
15751 NAME=
"SOCKETOPTIONS"
15753 >socket options (G)
</DT
15756 >This option allows you to set socket options
15757 to be used when talking with the client.
</P
15759 >Socket options are controls on the networking layer
15760 of the operating systems which allow the connection to be
15763 >This option will typically be used to tune your Samba
15764 server for optimal performance for your local network. There is
15765 no way that Samba can know what the optimal parameters are for
15766 your net, so you must experiment and choose them yourself. We
15767 strongly suggest you read the appropriate documentation for your
15768 operating system first (perhaps
<B
15774 >You may find that on some systems Samba will say
15775 "Unknown socket option" when you supply an option. This means you
15776 either incorrectly typed it or you need to add an include file
15777 to includes.h for your OS. If the latter is the case please
15778 send the patch to
<A
15779 HREF=
"mailto:samba@samba.org"
15781 > samba@samba.org
</A
15784 >Any of the supported socket options may be combined
15785 in any way you like, as long as your OS allows it.
</P
15787 >This is the list of socket options currently settable
15788 using this option:
</P
15814 >IPTOS_THROUGHPUT
</P
15834 >Those marked with a
<EM
15837 argument. The others can optionally take a
1 or
0 argument to enable
15838 or disable the option, by default they will be enabled if you
15839 don't specify
1 or
0.
</P
15841 >To specify an argument use the syntax SOME_OPTION=VALUE
15845 >. Note that you must
15846 not have any spaces before or after the = sign.
</P
15848 >If you are on a local network then a sensible option
15853 >socket options = IPTOS_LOWDELAY
</B
15856 >If you have a local network then you could try:
</P
15860 >socket options = IPTOS_LOWDELAY TCP_NODELAY
</B
15863 >If you are on a wide area network then perhaps try
15864 setting IPTOS_THROUGHPUT.
</P
15866 >Note that several of the options may cause your Samba
15867 server to fail completely. Use these options with caution!
</P
15871 >socket options = TCP_NODELAY
</B
15876 >socket options = IPTOS_LOWDELAY
</B
15881 NAME=
"SOURCEENVIRONMENT"
15883 >source environment (G)
</DT
15886 >This parameter causes Samba to set environment
15887 variables as per the content of the file named.
</P
15889 >If the value of this parameter starts with a
"|" character
15890 then Samba will treat that value as a pipe command to open and
15891 will set the environment variables from the output of the pipe.
</P
15893 >The contents of the file or the output of the pipe should
15894 be formatted as the output of the standard Unix
<B
15898 > command. This is of the form :
</P
15900 >Example environment entry:
</P
15904 >SAMBA_NETBIOS_NAME=myhostname
</B
15908 >No default value
</EM
15913 >source environment = |/etc/smb.conf.sh
15919 >source environment =
15920 /usr/local/smb_env_vars
</B
15930 >This variable is part of SSL-enabled Samba. This
15931 is only available if the SSL libraries have been compiled on your
15932 system and the configure option
<B
15936 given at configure time.
</P
15940 > that for export control reasons
15943 > enabled by default in any
15944 current binary version of Samba.
</P
15946 >This variable enables or disables the entire SSL mode. If
15950 >, the SSL enabled samba behaves
15951 exactly like the non-SSL samba. If set to
<TT
15955 it depends on the variables
<A
15964 HREF=
"#SSLHOSTSRESIGN"
15968 >ssl hosts resign
</I
15972 connection will be required.
</P
15981 NAME=
"SSLCACERTDIR"
15983 >ssl CA certDir (G)
</DT
15986 >This variable is part of SSL-enabled Samba. This
15987 is only available if the SSL libraries have been compiled on your
15988 system and the configure option
<B
15992 given at configure time.
</P
15996 > that for export control reasons
15999 > enabled by default in any
16000 current binary version of Samba.
</P
16002 >This variable defines where to look up the Certification
16003 Authorities. The given directory should contain one file for
16004 each CA that samba will trust. The file name must be the hash
16005 value over the
"Distinguished Name" of the CA. How this directory
16006 is set up is explained later in this document. All files within the
16007 directory that don't fit into this naming scheme are ignored. You
16008 don't need this variable if you don't verify client certificates.
</P
16012 >ssl CA certDir = /usr/local/ssl/certs
16018 NAME=
"SSLCACERTFILE"
16020 >ssl CA certFile (G)
</DT
16023 >This variable is part of SSL-enabled Samba. This
16024 is only available if the SSL libraries have been compiled on your
16025 system and the configure option
<B
16029 given at configure time.
</P
16033 > that for export control reasons
16036 > enabled by default in any
16037 current binary version of Samba.
</P
16039 >This variable is a second way to define the trusted CAs.
16040 The certificates of the trusted CAs are collected in one big
16041 file and this variable points to the file. You will probably
16042 only use one of the two ways to define your CAs. The first choice is
16043 preferable if you have many CAs or want to be flexible, the second
16044 is preferable if you only have one CA and want to keep things
16045 simple (you won't need to create the hashed file names). You
16046 don't need this variable if you don't verify client certificates.
</P
16050 >ssl CA certFile = /usr/local/ssl/certs/trustedCAs.pem
16058 >ssl ciphers (G)
</DT
16061 >This variable is part of SSL-enabled Samba. This
16062 is only available if the SSL libraries have been compiled on your
16063 system and the configure option
<B
16067 given at configure time.
</P
16071 > that for export control reasons
16074 > enabled by default in any
16075 current binary version of Samba.
</P
16077 >This variable defines the ciphers that should be offered
16078 during SSL negotiation. You should not set this variable unless
16079 you know what you are doing.
</P
16083 NAME=
"SSLCLIENTCERT"
16085 >ssl client cert (G)
</DT
16088 >This variable is part of SSL-enabled Samba. This
16089 is only available if the SSL libraries have been compiled on your
16090 system and the configure option
<B
16094 given at configure time.
</P
16098 > that for export control reasons
16101 > enabled by default in any
16102 current binary version of Samba.
</P
16104 >The certificate in this file is used by
<A
16105 HREF=
"smbclient.1.html"
16111 > if it exists. It's needed
16112 if the server requires a client certificate.
</P
16116 >ssl client cert = /usr/local/ssl/certs/smbclient.pem
16122 NAME=
"SSLCLIENTKEY"
16124 >ssl client key (G)
</DT
16127 >This variable is part of SSL-enabled Samba. This
16128 is only available if the SSL libraries have been compiled on your
16129 system and the configure option
<B
16133 given at configure time.
</P
16137 > that for export control reasons
16140 > enabled by default in any
16141 current binary version of Samba.
</P
16143 >This is the private key for
<A
16144 HREF=
"smbclient.1.html"
16150 >. It's only needed if the
16151 client should have a certificate.
</P
16155 >ssl client key = /usr/local/ssl/private/smbclient.pem
16161 NAME=
"SSLCOMPATIBILITY"
16163 >ssl compatibility (G)
</DT
16166 >This variable is part of SSL-enabled Samba. This
16167 is only available if the SSL libraries have been compiled on your
16168 system and the configure option
<B
16172 given at configure time.
</P
16176 > that for export control reasons
16179 > enabled by default in any
16180 current binary version of Samba.
</P
16182 >This variable defines whether SSLeay should be configured
16183 for bug compatibility with other SSL implementations. This is
16184 probably not desirable because currently no clients with SSL
16185 implementations other than SSLeay exist.
</P
16189 >ssl compatibility = no
</B
16200 HREF=
"#SSLHOSTSRESIGN"
16204 > ssl hosts resign
</I
16211 NAME=
"SSLHOSTSRESIGN"
16213 >ssl hosts resign (G)
</DT
16216 >This variable is part of SSL-enabled Samba. This
16217 is only available if the SSL libraries have been compiled on your
16218 system and the configure option
<B
16222 given at configure time.
</P
16226 > that for export control reasons
16229 > enabled by default in any
16230 current binary version of Samba.
</P
16232 >These two variables define whether samba will go
16233 into SSL mode or not. If none of them is defined, samba will
16234 allow only SSL connections. If the
<A
16243 hosts (by IP-address, IP-address range, net group or name),
16244 only these hosts will be forced into SSL mode. If the
<TT
16247 > ssl hosts resign
</I
16249 > variable lists hosts, only these
16250 hosts will NOT be forced into SSL mode. The syntax for these two
16251 variables is the same as for the
<A
16267 > pair of variables, only
16268 that the subject of the decision is different: It's not the access
16269 right but whether SSL is used or not.
</P
16271 >The example below requires SSL connections from all hosts
16272 outside the local net (which is
192.168.*.*).
</P
16276 >ssl hosts =
<empty string
></B
16281 >ssl hosts resign =
<empty string
></B
16286 >ssl hosts resign =
192.168.
</B
16291 NAME=
"SSLREQUIRECLIENTCERT"
16293 >ssl require clientcert (G)
</DT
16296 >This variable is part of SSL-enabled Samba. This
16297 is only available if the SSL libraries have been compiled on your
16298 system and the configure option
<B
16302 given at configure time.
</P
16306 > that for export control reasons
16309 > enabled by default in any
16310 current binary version of Samba.
</P
16312 >If this variable is set to
<TT
16316 server will not tolerate connections from clients that don't
16317 have a valid certificate. The directory/file given in
<A
16318 HREF=
"#SSLCACERTDIR"
16327 HREF=
"#SSLCACERTFILE"
16335 > will be used to look up the CAs that issued
16336 the client's certificate. If the certificate can't be verified
16337 positively, the connection will be terminated. If this variable
16341 >, clients don't need certificates.
16342 Contrary to web applications you really
<EM
16345 require client certificates. In the web environment the client's
16346 data is sensitive (credit card numbers) and the server must prove
16347 to be trustworthy. In a file server environment the server's data
16348 will be sensitive and the clients must prove to be trustworthy.
</P
16352 >ssl require clientcert = no
</B
16357 NAME=
"SSLREQUIRESERVERCERT"
16359 >ssl require servercert (G)
</DT
16362 >This variable is part of SSL-enabled Samba. This
16363 is only available if the SSL libraries have been compiled on your
16364 system and the configure option
<B
16368 given at configure time.
</P
16372 > that for export control reasons
16375 > enabled by default in any
16376 current binary version of Samba.
</P
16378 >If this variable is set to
<TT
16383 HREF=
"smbclient.1.html"
16390 > will request a certificate from the server. Same as
16392 HREF=
"#SSLREQUIRECLIENTCERT"
16400 > for the server.
</P
16404 >ssl require servercert = no
</B
16410 NAME=
"SSLSERVERCERT"
16412 >ssl server cert (G)
</DT
16415 >This variable is part of SSL-enabled Samba. This
16416 is only available if the SSL libraries have been compiled on your
16417 system and the configure option
<B
16421 given at configure time.
</P
16425 > that for export control reasons
16428 > enabled by default in any
16429 current binary version of Samba.
</P
16431 >This is the file containing the server's certificate.
16434 > have a certificate. The
16435 file may also contain the server's private key. See later for
16436 how certificates and private keys are created.
</P
16440 >ssl server cert =
<empty string
>
16446 NAME=
"SSLSERVERKEY"
16448 >ssl server key (G)
</DT
16451 >This variable is part of SSL-enabled Samba. This
16452 is only available if the SSL libraries have been compiled on your
16453 system and the configure option
<B
16457 given at configure time.
</P
16461 > that for export control reasons
16464 > enabled by default in any
16465 current binary version of Samba.
</P
16467 >This file contains the private key of the server. If
16468 this variable is not defined, the key is looked up in the
16469 certificate file (it may be appended to the certificate).
16472 > have a private key
16473 and the certificate
<EM
16476 match this private key.
</P
16480 >ssl server key =
<empty string
>
16488 >ssl version (G)
</DT
16491 >This variable is part of SSL-enabled Samba. This
16492 is only available if the SSL libraries have been compiled on your
16493 system and the configure option
<B
16497 given at configure time.
</P
16501 > that for export control reasons
16504 > enabled by default in any
16505 current binary version of Samba.
</P
16507 >This enumeration variable defines the versions of the
16508 SSL protocol that will be used.
<TT
16512 dynamic negotiation of SSL v2 or v3,
<TT
16519 > results in SSL v3 and
16523 > results in TLS v1. TLS (Transport Layer
16524 Security) is the new standard for SSL.
</P
16528 >ssl version =
"ssl2or3"</B
16535 >stat cache (G)
</DT
16538 >This parameter determines if
<A
16542 > will use a cache in order to
16543 speed up case insensitive name mappings. You should never need
16544 to change this parameter.
</P
16548 >stat cache = yes
</B
16553 NAME=
"STATCACHESIZE"
16555 >stat cache size (G)
</DT
16558 >This parameter determines the number of
16565 never need to change this parameter.
</P
16569 >stat cache size =
50</B
16579 >This enables or disables logging of connections
16580 to a status file that
<A
16581 HREF=
"smbstatus.1.html"
16587 >With this disabled
<B
16591 to tell you what connections are active. You should never need to
16592 change this parameter.
</P
16601 NAME=
"STRICTLOCKING"
16603 >strict locking (S)
</DT
16606 >This is a boolean that controls the handling of
16607 file locking in the server. When this is set to
<TT
16611 the server will check every read and write access for file locks, and
16612 deny access if locks exist. This can be slow on some systems.
</P
16614 >When strict locking is
<TT
16617 > the server does file
16618 lock checks only when the client explicitly asks for them.
</P
16620 >Well behaved clients always ask for lock checks when it
16621 is important, so in the vast majority of cases
<B
16625 > is preferable.
</P
16629 >strict locking = no
</B
16636 >strict sync (S)
</DT
16639 >Many Windows applications (including the Windows
16640 98 explorer shell) seem to confuse flushing buffer contents to
16641 disk with doing a sync to disk. Under UNIX, a sync call forces
16642 the process to be suspended until the kernel has ensured that
16643 all outstanding data in kernel disk buffers has been safely stored
16644 onto stable storage. This is very slow and should only be done
16645 rarely. Setting this parameter to
<TT
16649 default) means that smbd ignores the Windows applications requests for
16650 a sync call. There is only a possibility of losing data if the
16651 operating system itself that Samba is running on crashes, so there is
16652 little danger in this default setting. In addition, this fixes many
16653 performance problems that people have reported with the new Windows98
16654 explorer shell file copies.
</P
16669 >strict sync = no
</B
16679 >This is a boolean that controls whether to
16680 strip trailing dots off UNIX filenames. This helps with some
16681 CDROMs that have filenames ending in a single dot.
</P
16692 >sync always (S)
</DT
16695 >This is a boolean parameter that controls
16696 whether writes will always be written to stable storage before
16697 the write call returns. If this is false then the server will be
16698 guided by the client's request in each write call (clients can
16699 set a bit indicating that a particular write should be synchronous).
16700 If this is true then every write will be followed by a
<B
16704 > call to ensure the data is written to disk. Note that
16710 > parameter must be set to
16714 > in order for this parameter to have
16730 >sync always = no
</B
16740 >This parameter maps how Samba debug messages
16741 are logged onto the system syslog logging levels. Samba debug
16742 level zero maps onto syslog
<TT
16746 level one maps onto
<TT
16753 >, debug level three
16754 maps onto LOG_INFO. All higher levels are mapped to
<TT
16759 >This parameter sets the threshold for sending messages
16760 to syslog. Only messages with debug level less than this value
16761 will be sent to syslog.
</P
16772 >syslog only (G)
</DT
16775 >If this parameter is set then Samba debug
16776 messages are logged into the system syslog only, and not to
16777 the debug log files.
</P
16781 >syslog only = no
</B
16786 NAME=
"TEMPLATEHOMEDIR"
16788 >template homedir (G)
</DT
16793 > this parameter is
16794 only available in Samba
3.0.
</P
16796 >When filling out the user information for a Windows NT
16798 HREF=
"winbindd.8.html"
16802 uses this parameter to fill in the home directory for that user.
16808 > is present it is substituted
16809 with the user's Windows NT domain name. If the string
<TT
16815 > is present it is substituted with the user's Windows
16820 >template homedir = /home/%D/%U
</B
16825 NAME=
"TEMPLATESHELL"
16827 >template shell (G)
</DT
16832 > this parameter is
16833 only available in Samba
3.0.
</P
16835 >When filling out the user information for a Windows NT
16837 HREF=
"winbindd.8.html"
16841 uses this parameter to fill in the login shell for that user.
</P
16845 >template shell = /bin/false
</B
16852 >time offset (G)
</DT
16855 >This parameter is a setting in minutes to add
16856 to the normal GMT to local time conversion. This is useful if
16857 you are serving a lot of PCs that have incorrect daylight
16858 saving time handling.
</P
16862 >time offset =
0</B
16867 >time offset =
60</B
16874 >time server (G)
</DT
16877 >This parameter determines if
<A
16882 > advertises itself as a time server to Windows
16887 >time server = no
</B
16892 NAME=
"TIMESTAMPLOGS"
16894 >timestamp logs (G)
</DT
16898 HREF=
"#DEBUGTIMESTAMP"
16902 > debug timestamp
</I
16909 NAME=
"TOTALPRINTJOBS"
16911 >total print jobs (G)
</DT
16914 >This parameter accepts an integer value which defines
16915 a limit on the maximum number of print jobs that will be accepted
16916 system wide at any given time. If a print job is submitted
16917 by a client which will exceed this number, then smbd will return an
16918 error indicating that no space is available on the server. The
16919 default value of
0 means that no such limit exists. This parameter
16920 can be used to prevent a server from exceeding its capacity and is
16921 designed as a printing throttle. See also
16923 HREF=
"#MAXPRINTJOBS"
16935 >total print jobs =
0</B
16940 >total print jobs =
5000</B
16945 NAME=
"UNIXPASSWORDSYNC"
16947 >unix password sync (G)
</DT
16950 >This boolean parameter controls whether Samba
16951 attempts to synchronize the UNIX password with the SMB password
16952 when the encrypted SMB password in the smbpasswd file is changed.
16953 If this is set to true the program specified in the
<TT
16959 >parameter is called
<EM
16962 to allow the new UNIX password to be set without access to the
16963 old UNIX password (as the SMB password has change code has no
16964 access to the old password cleartext, only the new).
</P
16967 HREF=
"#PASSWDPROGRAM"
16987 >unix password sync = no
</B
16992 NAME=
"UPDATEENCRYPTED"
16994 >update encrypted (G)
</DT
16997 >This boolean parameter allows a user logging
16998 on with a plaintext password to have their encrypted (hashed)
16999 password in the smbpasswd file to be updated automatically as
17000 they log on. This option allows a site to migrate from plaintext
17001 password authentication (users authenticate with plaintext
17002 password over the wire, and are checked against a UNIX account
17003 database) to encrypted password authentication (the SMB
17004 challenge/response authentication mechanism) without forcing
17005 all users to re-enter their passwords via smbpasswd at the time the
17006 change is made. This is a convenience option to allow the change over
17007 to encrypted passwords to be made over a longer period. Once all users
17008 have encrypted representations of their passwords in the smbpasswd
17009 file this parameter should be set to
<TT
17014 >In order for this parameter to work correctly the
<A
17015 HREF=
"#ENCRYPTPASSWORDS"
17019 >encrypt passwords
</I
17023 > parameter must be set to
<TT
17027 this parameter is set to
<TT
17032 >Note that even when this parameter is set a user
17033 authenticating to
<B
17036 > must still enter a valid
17037 password in order to connect correctly, and to update their hashed
17038 (smbpasswd) passwords.
</P
17042 >update encrypted = no
</B
17049 >use rhosts (G)
</DT
17052 >If this global parameter is a true, it specifies
17053 that the UNIX users
<TT
17056 > file in their home directory
17057 will be read to find the names of hosts and users who will be allowed
17058 access without specifying a password.
</P
17068 > can be a major security hole. This is because you are
17069 trusting the PC to supply the correct username. It is very easy to
17070 get a PC to supply a false username. I recommend that the
<TT
17075 > option be only used if you really know what
17080 >use rhosts = no
</B
17124 >Multiple users may be specified in a comma-delimited
17125 list, in which case the supplied password will be tested against
17126 each username in turn (left to right).
</P
17133 > line is needed only when
17134 the PC is unable to supply its own username. This is the case
17135 for the COREPLUS protocol or where your users have different WfWg
17136 usernames to UNIX usernames. In both these cases you may also be
17137 better using the \\server\share%user syntax instead.
</P
17144 > line is not a great
17145 solution in many cases as it means Samba will try to validate
17146 the supplied password against each of the usernames in the
17152 > line in turn. This is slow and
17153 a bad idea for lots of users in case of duplicate passwords.
17154 You may get timeouts or security breaches using this parameter
17157 >Samba relies on the underlying UNIX security. This
17158 parameter does not restrict who can login, it just offers hints
17159 to the Samba server as to what usernames might correspond to the
17160 supplied password. Users can login as whoever they please and
17161 they will be able to do no more damage than if they started a
17162 telnet session. The daemon runs as the user that they log in as,
17163 so they cannot do anything that user cannot do.
</P
17165 >To restrict a service to a particular set of users you
17177 >If any of the usernames begin with a '@' then the name
17178 will be looked up first in the yp netgroups list (if Samba
17179 is compiled with netgroup support), followed by a lookup in
17180 the UNIX groups database and will expand to a list of all users
17181 in the group of that name.
</P
17183 >If any of the usernames begin with a '+' then the name
17184 will be looked up only in the UNIX groups database and will
17185 expand to a list of all users in the group of that name.
</P
17187 >If any of the usernames begin with a '
&'then the name
17188 will be looked up only in the yp netgroups database (if Samba
17189 is compiled with netgroup support) and will expand to a list
17190 of all users in the netgroup group of that name.
</P
17192 >Note that searching though a groups database can take
17193 quite some time, and some clients may time out during the
17196 >See the section
<A
17199 USERNAME/PASSWORD VALIDATION
</A
17200 > for more information on how
17201 this parameter determines access to the services.
</P
17205 >The guest account if a guest service,
17206 else
<empty string
>.
</B
17211 >username = fred, mary, jack, jane,
17212 @users, @pcgroup
</B
17217 NAME=
"USERNAMELEVEL"
17219 >username level (G)
</DT
17222 >This option helps Samba to try and 'guess' at
17223 the real UNIX username, as many DOS clients send an all-uppercase
17224 username. By default Samba tries all lowercase, followed by the
17225 username with the first letter capitalized, and fails if the
17226 username is not found on the UNIX machine.
</P
17228 >If this parameter is set to non-zero the behavior changes.
17229 This parameter is a number that specifies the number of uppercase
17230 combinations to try while trying to determine the UNIX user name. The
17231 higher the number the more combinations will be tried, but the slower
17232 the discovery of usernames will be. Use this parameter when you have
17233 strange usernames on your UNIX machine, such as
<TT
17241 >username level =
0</B
17246 >username level =
5</B
17253 >username map (G)
</DT
17256 >This option allows you to specify a file containing
17257 a mapping of usernames from the clients to the server. This can be
17258 used for several purposes. The most common is to map usernames
17259 that users use on DOS or Windows machines to those that the UNIX
17260 box uses. The other is to map multiple users to a single username
17261 so that they can more easily share files.
</P
17263 >The map file is parsed line by line. Each line should
17264 contain a single UNIX username on the left then a '=' followed
17265 by a list of usernames on the right. The list of usernames on the
17266 right may contain names of the form @group in which case they
17267 will match any UNIX username in that group. The special client
17268 name '*' is a wildcard and matches any name. Each line of the
17269 map file may be up to
1023 characters long.
</P
17271 >The file is processed on each line by taking the
17272 supplied username and comparing it with each username on the right
17273 hand side of the '=' signs. If the supplied name matches any of
17274 the names on the right hand side then it is replaced with the name
17275 on the left. Processing then continues with the next line.
</P
17277 >If any line begins with a '#' or a ';' then it is
17280 >If any line begins with an '!' then the processing
17281 will stop after that line if a mapping was done by the line.
17282 Otherwise mapping continues with every line being processed.
17283 Using '!' is most useful when you have a wildcard mapping line
17284 later in the file.
</P
17286 >For example to map from the name
<TT
17293 > to the UNIX name
<TT
17296 > you would use:
</P
17300 >root = admin administrator
</B
17303 >Or to map anyone in the UNIX group
<TT
17307 to the UNIX name
<TT
17310 > you would use:
</P
17317 >You can have as many mappings as you like in a username
17320 >If your system supports the NIS NETGROUP option then
17321 the netgroup database is checked before the
<TT
17325 > database for matching groups.
</P
17327 >You can map Windows usernames that have spaces in them
17328 by using double quotes around the name. For example:
</P
17332 >tridge =
"Andrew Tridgell"</B
17335 >would map the windows username
"Andrew Tridgell" to the
17336 unix username
"tridge".
</P
17338 >The following example would map mary and fred to the
17339 unix user sys, and map the rest to guest. Note the use of the
17340 '!' to tell Samba to stop processing if it gets a match on
17350 CLASS=
"PROGRAMLISTING"
17359 >Note that the remapping is applied to all occurrences
17360 of usernames. Thus if you connect to \\server\fred and
<TT
17363 > is remapped to
<TT
17367 will actually be connecting to \\server\mary and will need to
17368 supply a password suitable for
<TT
17375 >. The only exception to this is the
17376 username passed to the
<A
17377 HREF=
"#PASSWORDSERVER"
17381 > password server
</I
17384 > (if you have one). The password
17385 server will receive whatever username the client supplies without
17388 >Also note that no reverse mapping is done. The main effect
17389 this has is with printing. Users who have been mapped may have
17390 trouble deleting print jobs as PrintManager under WfWg will think
17391 they don't own the print job.
</P
17394 >no username map
</EM
17399 >username map = /usr/local/samba/lib/users.map
17410 >This boolean parameter is only available if
17411 Samba has been configured and compiled with the option
<B
17414 >. If set to True then Samba will attempt
17415 to add utmp or utmpx records (depending on the UNIX system) whenever a
17416 connection is made to a Samba server. Sites may use this to record the
17417 user connecting to a Samba share.
</P
17420 HREF=
"#UTMPDIRECTORY"
17424 > utmp directory
</I
17436 NAME=
"UTMPDIRECTORY"
17438 >utmp directory(G)
</DT
17441 >This parameter is only available if Samba has
17442 been configured and compiled with the option
<B
17445 >. It specifies a directory pathname that is
17446 used to store the utmp or utmpx files (depending on the UNIX system) that
17447 record user connections to a Samba server. See also the
<A
17455 > parameter. By default this is
17456 not set, meaning the system will use whatever utmp file the
17457 native system is set to use (usually
17464 >no utmp directory
</EM
17471 >valid chars (G)
</DT
17474 >The option allows you to specify additional
17475 characters that should be considered valid by the server in
17476 filenames. This is particularly useful for national character
17477 sets, such as adding u-umlaut or a-ring.
</P
17479 >The option takes a list of characters in either integer
17480 or character form with spaces between them. If you give two
17481 characters with a colon between them then it will be taken as
17482 an lowercase:uppercase pair.
</P
17484 >If you have an editor capable of entering the characters
17485 into the config file then it is probably easiest to use this
17486 method. Otherwise you can specify the characters in octal,
17487 decimal or hexadecimal form using the usual C notation.
</P
17489 >For example to add the single character 'Z' to the charset
17490 (which is a pointless thing to do as it's already there) you could
17491 do one of the following
</P
17500 CLASS=
"PROGRAMLISTING"
17503 valid chars =
0132:
0172
17510 >The last two examples above actually add two characters,
17511 and alter the uppercase and lowercase mappings appropriately.
</P
17515 > specify this parameter
17519 >client code page
</I
17522 have both set. If
<TT
17525 >client code page
</I
17533 > parameter the
<TT
17539 > settings will be overwritten.
</P
17542 HREF=
"#CLIENTCODEPAGE"
17553 >Samba defaults to using a reasonable set
17554 of valid characters for English systems
</EM
17559 >valid chars =
0345:
0305 0366:
0326 0344:
0304
17563 >The above example allows filenames to have the Swedish
17564 characters in them.
</P
17568 > It is actually quite difficult to
17569 correctly produce a
<TT
17575 a particular system. To automate the process
<A
17576 HREF=
"mailto:tino@augsburg.net"
17578 >tino@augsburg.net
</A
17580 a package called
<B
17583 > which will automatically
17584 produce a complete
<TT
17590 a given client system. Look in the
<TT
17592 >examples/validchars/
17594 > subdirectory of your Samba source code distribution
17595 for this package.
</P
17601 >valid users (S)
</DT
17604 >This is a list of users that should be allowed
17605 to login to this service. Names starting with '@', '+' and '
&'
17606 are interpreted using the same rules as described in the
17614 >If this is empty (the default) then any user can login.
17615 If a username is in both this list and the
<TT
17621 > list then access is denied for that user.
</P
17623 >The current servicename is substituted for
<TT
17629 >. This is useful in the [homes] section.
</P
17632 HREF=
"#INVALIDUSERS"
17643 >No valid users list (anyone can login)
17649 >valid users = greg, @pcusers
</B
17659 >This is a list of files and directories that
17660 are neither visible nor accessible. Each entry in the list must
17661 be separated by a '/', which allows spaces to be included
17662 in the entry. '*' and '?' can be used to specify multiple files
17663 or directories as in DOS wildcards.
</P
17665 >Each entry must be a unix path, not a DOS path and
17668 > include the unix directory
17677 is applicable in vetoing files.
</P
17679 >One feature of the veto files parameter that it is important
17680 to be aware of, is that if a directory contains nothing but files
17681 that match the veto files parameter (which means that Windows/DOS
17682 clients cannot ever see them) is deleted, the veto files within
17684 >are automatically deleted
</EM
17686 with it, if the user has UNIX permissions to do so.
</P
17688 >Setting this parameter will affect the performance
17689 of Samba, as it will be forced to check all files and directories
17690 for a match as they are scanned.
</P
17702 HREF=
"#CASESENSITIVE"
17706 > case sensitive
</I
17712 >No files or directories are vetoed.
17723 CLASS=
"PROGRAMLISTING"
17724 > ; Veto any files containing the word Security,
17725 ; any ending in .tmp, and any directory containing the
17727 veto files = /*Security*/*.tmp/*root*/
17729 ; Veto the Apple specific files that a NetAtalk server
17731 veto files = /.AppleDouble/.bin/.AppleDesktop/Network Trash Folder/
17740 NAME=
"VETOOPLOCKFILES"
17742 >veto oplock files (S)
</DT
17745 >This parameter is only valid when the
<A
17754 parameter is turned on for a share. It allows the Samba administrator
17755 to selectively turn off the granting of oplocks on selected files that
17756 match a wildcarded list, similar to the wildcarded list used in the
17769 >No files are vetoed for oplock
17773 >You might want to do this on files that you know will
17774 be heavily contended for by clients. A good example of this
17775 is in the NetBench SMB benchmark program, which causes heavy
17776 client contention for files ending in
<TT
17780 To cause Samba not to grant oplocks on these files you would use
17781 the line (either in the [global] section or in the section for
17782 the particular NetBench share :
</P
17786 >veto oplock files = /*;.SEM/
17794 >vfs object (S)
</DT
17797 >This parameter specifies a shared object file that
17798 is used for Samba VFS I/O operations. By default, normal
17799 disk I/O operations are used but these can be overloaded
17800 with a VFS object. The Samba VFS layer is new to Samba
2.2 and
17801 must be enabled at compile time with --with-vfs.
</P
17811 >vfs options (S)
</DT
17814 >This parameter allows parameters to be passed
17815 to the vfs layer at initialisation time. The Samba VFS layer
17816 is new to Samba
2.2 and must be enabled at compile time
17817 with --with-vfs. See also
<A
17838 > This allows you to override the volume label
17839 returned for a share. Useful for CDROMs with installation programs
17840 that insist on a particular volume label.
</P
17843 >the name of the share
</EM
17850 >wide links (S)
</DT
17853 >This parameter controls whether or not links
17854 in the UNIX file system may be followed by the server. Links
17855 that point to areas within the directory tree exported by the
17856 server are always allowed; this parameter controls access only
17857 to areas that are outside the directory tree being exported.
</P
17859 >Note that setting this parameter can have a negative
17860 effect on your server performance due to the extra system calls
17861 that Samba has to do in order to perform the link checks.
</P
17865 >wide links = yes
</B
17870 NAME=
"WINBINDCACHETIME"
17872 >winbind cache time
</DT
17877 > this parameter is only
17878 available in Samba
3.0.
</P
17880 >This parameter specifies the number of seconds the
17882 HREF=
"winbindd.8.html"
17885 > daemon will cache
17886 user and group information before querying a Windows NT server
17891 >winbind cache type =
15</B
17903 > this parameter is only
17904 available in Samba
3.0.
</P
17906 >The winbind gid parameter specifies the range of group
17907 ids that are allocated by the
<A
17908 HREF=
"winbindd.8.html"
17911 > daemon. This range of group ids should have no
17912 existing local or nis groups within it as strange conflicts can
17913 occur otherwise.
</P
17917 >winbind gid =
<empty string
>
17923 >winbind gid =
10000-
20000</B
17928 NAME=
"WINBINDSEPARATOR"
17930 >winbind separator
</DT
17935 > this parameter is only
17936 available in Samba
3.0.
</P
17938 >This parameter allows an admin to define the character
17939 used when listing a username of the form of
<TT
17940 CLASS=
"REPLACEABLE"
17946 CLASS=
"REPLACEABLE"
17951 is only applicable when using the
<TT
17953 >pam_winbind.so
</TT
17957 >nss_winbind.so
</TT
17958 > modules for UNIX services.
17963 >winbind separator = \
</B
17968 >winbind separator = +
</B
17980 > this parameter is only
17981 available in Samba
3.0.
</P
17983 >The winbind gid parameter specifies the range of group
17984 ids that are allocated by the
<A
17985 HREF=
"winbindd.8.html"
17988 > daemon. This range of ids should have no
17989 existing local or nis users within it as strange conflicts can
17990 occur otherwise.
</P
17994 >winbind uid =
<empty string
>
18000 >winbind uid =
10000-
20000</B
18010 >When Samba is running as a WINS server this
18011 allows you to call an external program for all changes to the
18012 WINS database. The primary use for this option is to allow the
18013 dynamic update of external name resolution databases such as
18016 >The wins hook parameter specifies the name of a script
18017 or executable that will be called as follows:
</P
18021 >wins_hook operation name nametype ttl IP_list
18029 >The first argument is the operation and is one
18030 of
"add",
"delete", or
"refresh". In most cases the operation can
18031 be ignored as the rest of the parameters provide sufficient
18032 information. Note that
"refresh" may sometimes be called when the
18033 name has not previously been added, in that case it should be treated
18038 >The second argument is the netbios name. If the
18039 name is not a legal name then the wins hook is not called.
18040 Legal names contain only letters, digits, hyphens, underscores
18045 >The third argument is the netbios name
18046 type as a
2 digit hexadecimal number.
</P
18050 >The fourth argument is the TTL (time to live)
18051 for the name in seconds.
</P
18055 >The fifth and subsequent arguments are the IP
18056 addresses currently registered for that name. If this list is
18057 empty then the name should be deleted.
</P
18061 >An example script that calls the BIND dynamic DNS update
18065 > is provided in the examples
18066 directory of the Samba source code.
</P
18072 >wins proxy (G)
</DT
18075 >This is a boolean that controls if
<A
18079 > will respond to broadcast name
18080 queries on behalf of other hosts. You may need to set this
18084 > for some older clients.
</P
18088 >wins proxy = no
</B
18095 >wins server (G)
</DT
18098 >This specifies the IP address (or DNS name: IP
18099 address for preference) of the WINS server that
<A
18103 > should register with. If you have a WINS server on
18104 your network then you should set this to the WINS server's IP.
</P
18106 >You should point this at your WINS server if you have a
18107 multi-subnetted network.
</P
18111 >. You need to set up Samba to point
18112 to a WINS server if you have multiple subnets and wish cross-subnet
18113 browsing to work correctly.
</P
18115 >See the documentation file
<TT
18119 in the docs/ directory of your Samba source distribution.
</P
18127 >wins server =
192.9.200.1</B
18134 >wins support (G)
</DT
18137 >This boolean controls if the
<A
18142 > process in Samba will act as a WINS server. You should
18143 not set this to true unless you have a multi-subnetted network and
18144 you wish a particular
<B
18147 > to be your WINS server.
18148 Note that you should
<EM
18151 on more than one machine in your network.
</P
18155 >wins support = no
</B
18165 >This controls what workgroup your server will
18166 appear to be in when queried by clients. Note that this parameter
18167 also controls the Domain name used with the
<A
18168 HREF=
"#SECURITYEQUALSDOMAIN"
18171 >security=domain
</B
18177 >set at compile time to WORKGROUP
</EM
18182 >workgroup = MYGROUP
</B
18200 > for people who can't spell :-).
</P
18204 NAME=
"WRITECACHESIZE"
18206 >write cache size (S)
</DT
18209 >If this integer parameter is set to non-zero value,
18210 Samba will create an in-memory cache for each oplocked file
18214 non-oplocked files). All writes that the client does not request
18215 to be flushed directly to disk will be stored in this cache if possible.
18216 The cache is flushed onto disk when a write comes in whose offset
18217 would not fit into the cache or when the file is closed by the client.
18218 Reads for the file are also served from this cache if the data is stored
18221 >This cache allows Samba to batch client writes into a more
18222 efficient write size for RAID disks (ie. writes may be tuned to
18223 be the RAID stripe size) and can improve performance on systems
18224 where the disk subsystem is a bottleneck but there is free
18225 memory for userspace programs.
</P
18227 >The integer parameter specifies the size of this cache
18228 (per oplocked file) in bytes.
</P
18232 >write cache size =
0</B
18237 >write cache size =
262144</B
18240 >for a
256k cache size per file.
</P
18246 >write list (S)
</DT
18249 >This is a list of users that are given read-write
18250 access to a service. If the connecting user is in this list then
18251 they will be given write access, no matter what the
<A
18260 option is set to. The list can include group names using the
18263 >Note that if a user is in both the read list and the
18264 write list then they will be given write access.
</P
18279 >write list =
<empty string
>
18285 >write list = admin, root, @staff
18313 >This parameter controls whether or not the server
18314 will support raw writes SMB's when transferring data from clients.
18315 You should never need to change this parameter.
</P
18319 >write raw = yes
</B
18329 >An inverted synonym is
<A
18339 >If this parameter is
<TT
18343 of a service may not create or modify files in the service's
18346 >Note that a printable service (
<B
18348 >printable = yes
</B
18352 > allow writing to the directory
18353 (user privileges permitting), but only via spooling operations.
</P
18371 >Although the configuration file permits service names
18372 to contain spaces, your client software may not. Spaces will
18373 be ignored in comparisons anyway, so it shouldn't be a
18374 problem - but be aware of the possibility.
</P
18376 >On a similar note, many clients - especially DOS clients -
18377 limit service names to eight characters.
<A
18382 > has no such limitation, but attempts to connect from such
18383 clients will fail if they truncate the service names. For this reason
18384 you should probably keep your service names down to eight characters
18387 >Use of the [homes] and [printers] special sections make life
18388 for an administrator easy, but the various combinations of default
18389 attributes can be tricky. Take extreme care when designing these
18390 sections. In particular, ensure that the permissions on spool
18391 directories are correct.
</P
18401 >This man page is correct for version
2.2 of
18402 the Samba suite.
</P
18413 HREF=
"samba.7.html"
18418 HREF=
"smbpasswd.8.html"
18450 HREF=
"smbclient.1.html"
18458 HREF=
"nmblookup.1.html"
18466 HREF=
"testparm.1.html"
18474 HREF=
"testprns.1.html"
18491 >The original Samba software and related utilities
18492 were created by Andrew Tridgell. Samba is now developed
18493 by the Samba Team as an Open Source project similar
18494 to the way the Linux kernel is developed.
</P
18496 >The original Samba man pages were written by Karl Auer.
18497 The man page sources were converted to YODL format (another
18498 excellent piece of Open Source software, available at
18500 HREF=
"ftp://ftp.icce.rug.nl/pub/unix/"
18502 > ftp://ftp.icce.rug.nl/pub/unix/
</A
18503 >) and updated for the Samba
2.0
18504 release by Jeremy Allison. The conversion to DocBook for
18505 Samba
2.2 was done by Gerald Carter
</P