3cea2d51bc19970d6b0aee312b96049f699de9c8
[nivanova/samba-autobuild/.git] / docs / docbook / manpages / smb.conf.5.sgml
1 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN">
2 <refentry id="smb.conf">
3
4 <refmeta>
5         <refentrytitle>smb.conf</refentrytitle>
6         <manvolnum>5</manvolnum>
7 </refmeta>
8
9
10 <refnamediv>
11         <refname>smb.conf</refname>
12         <refpurpose>The configuration file for the Samba suite</refpurpose>
13 </refnamediv>
14
15 <refsect1>
16         <title>SYNOPSIS</title>
17
18         <para>The <filename>smb.conf</filename> file is a configuration 
19         file for the Samba suite. <filename>smb.conf</filename> contains 
20         runtime configuration information for the Samba programs. The
21         <filename>smb.conf</filename> file is designed to be configured and 
22         administered by the <ulink url="swat.8.html"><command>swat(8)</command>
23         </ulink> program. The complete description of the file format and 
24         possible parameters held within are here for reference purposes.</para>
25 </refsect1>
26
27 <refsect1>
28         <title id="FILEFORMATSECT">FILE FORMAT</title>
29
30         <para>The file consists of sections and parameters. A section 
31         begins with the name of the section in square brackets and continues 
32         until the next section begins. Sections contain parameters of the 
33         form</para>
34
35         <para><replaceable>name</replaceable> = <replaceable>value
36         </replaceable></para>
37
38         <para>The file is line-based - that is, each newline-terminated 
39         line represents either a comment, a section name or a parameter.</para>
40
41         <para>Section and parameter names are not case sensitive.</para>
42
43         <para>Only the first equals sign in a parameter is significant. 
44         Whitespace before or after the first equals sign is discarded. 
45         Leading, trailing and internal whitespace in section and parameter 
46         names is irrelevant. Leading and trailing whitespace in a parameter 
47         value is discarded. Internal whitespace within a parameter value 
48         is retained verbatim.</para>
49
50         <para>Any line beginning with a semicolon (';') or a hash ('#') 
51         character is ignored, as are lines containing only whitespace.</para>
52
53         <para>Any line ending in a '\' is continued
54         on the next line in the customary UNIX fashion.</para>
55
56         <para>The values following the equals sign in parameters are all 
57         either a string (no quotes needed) or a boolean, which may be given 
58         as yes/no, 0/1 or true/false. Case is not significant in boolean 
59         values, but is preserved in string values. Some items such as 
60         create modes are numeric.</para>
61 </refsect1>
62
63 <refsect1>
64         <title>SECTION DESCRIPTIONS</title>
65
66         <para>Each section in the configuration file (except for the
67         [global] section) describes a shared resource (known
68         as a "share"). The section name is the name of the 
69         shared resource and the parameters within the section define 
70         the shares attributes.</para>
71
72         <para>There are three special sections, [global],
73         [homes] and [printers], which are
74         described under <emphasis>special sections</emphasis>. The
75         following notes apply to ordinary section descriptions.</para>
76
77         <para>A share consists of a directory to which access is being 
78         given plus a description of the access rights which are granted 
79         to the user of the service. Some housekeeping options are 
80         also specifiable.</para>
81         
82         <para>Sections are either file share services (used by the 
83         client as an extension of their native file systems) or 
84         printable services (used by the client to access print services 
85         on the host running the server).</para>
86         
87         <para>Sections may be designated <emphasis>guest</emphasis> services, 
88         in which case no password is required to access them. A specified 
89         UNIX <emphasis>guest account</emphasis> is used to define access
90         privileges in this case.</para>
91
92         <para>Sections other than guest services will require a password 
93         to access them. The client provides the username. As older clients 
94         only provide passwords and not usernames, you may specify a list 
95         of usernames to check against the password using the "user =" 
96         option in the share definition. For modern clients such as 
97         Windows 95/98/ME/NT/2000, this should not be necessary.</para>
98
99         <para>Note that the access rights granted by the server are 
100         masked by the access rights granted to the specified or guest 
101         UNIX user by the host system. The server does not grant more
102         access than the host system grants.</para>
103         
104         <para>The following sample section defines a file space share. 
105         The user has write access to the path <filename>/home/bar</filename>. 
106         The share is accessed via the share name "foo":</para>
107
108         <screen>
109         <computeroutput>
110         [foo]
111                 path = /home/bar
112                 writeable = true
113         </computeroutput>
114         </screen>
115
116         <para>The following sample section defines a printable share. 
117         The share is readonly, but printable. That is, the only write 
118         access permitted is via calls to open, write to and close a 
119         spool file. The <emphasis>guest ok</emphasis> parameter means 
120         access will be permitted as the default guest user (specified 
121         elsewhere):</para>
122
123         <screen>
124         <computeroutput>
125         [aprinter]
126                 path = /usr/spool/public
127                 writeable = false
128                 printable = true
129                 guest ok = true
130         </computeroutput>
131         </screen>
132 </refsect1>
133
134 <refsect1>
135         <title>SPECIAL SECTIONS</title>
136         
137         <refsect2>
138                 <title>The [global] section</title>
139                 
140                 <para>parameters in this section apply to the server 
141                 as a whole, or are defaults for sections which do not 
142                 specifically define certain items. See the notes
143                 under PARAMETERS for more information.</para>
144         </refsect2>
145         
146         <refsect2>
147                 <title id="HOMESECT">The [homes] section</title>
148                 
149                 <para>If a section called homes is included in the 
150                 configuration file, services connecting clients to their 
151                 home directories can be created on the fly by the server.</para>
152
153                 <para>When the connection request is made, the existing 
154                 sections are scanned. If a match is found, it is used. If no 
155                 match is found, the requested section name is treated as a 
156                 user name and looked up in the local password file. If the 
157                 name exists and the correct password has been given, a share is 
158                 created by cloning the [homes] section.</para>
159                 
160                 <para>Some modifications are then made to the newly 
161                 created share:</para>
162                 
163                 <itemizedlist>
164                 <listitem><para>The share name is changed from homes to 
165                 the located username.</para></listitem>
166
167                 <listitem><para>If no path was given, the path is set to
168                 the user's home directory.</para></listitem>
169                 </itemizedlist>
170
171                 <para>If you decide to use a <emphasis>path =</emphasis> line 
172                 in your [homes] section then you may find it useful 
173                 to use the %S macro. For example :</para>
174
175                 <para><userinput>path = /data/pchome/%S</userinput></para>
176
177                 <para>would be useful if you have different home directories 
178                 for your PCs than for UNIX access.</para>
179
180                 <para>This is a fast and simple way to give a large number 
181                 of clients access to their home directories with a minimum 
182                 of fuss.</para>
183
184                 <para>A similar process occurs if the requested section 
185                 name is "homes", except that the share name is not 
186                 changed to that of the requesting user. This method of using
187                 the [homes] section works well if different users share 
188                 a client PC.</para>
189                 
190                 <para>The [homes] section can specify all the parameters 
191                 a normal service section can specify, though some make more sense 
192                 than others. The following is a typical and suitable [homes]
193                 section:</para>
194
195                 <screen>
196                 <computeroutput>
197                 [homes]
198                         writeable = yes
199                 </computeroutput>
200                 </screen>
201         
202                 <para>An important point is that if guest access is specified 
203                 in the [homes] section, all home directories will be 
204                 visible to all clients <emphasis>without a password</emphasis>. 
205                 In the very unlikely event that this is actually desirable, it 
206                 would be wise to also specify <emphasis>read only
207                 access</emphasis>.</para>
208
209                 <para>Note that the <emphasis>browseable</emphasis> flag for 
210                 auto home directories will be inherited from the global browseable 
211                 flag, not the [homes] browseable flag. This is useful as 
212                 it means setting <emphasis>browseable = no</emphasis> in
213                 the [homes] section will hide the [homes] share but make
214                 any auto home directories visible.</para>
215         </refsect2>
216         
217         <refsect2>
218                 <title id="PRINTERSSECT">The [printers] section</title>
219                 
220                 <para>This section works like [homes], 
221                 but for printers.</para>
222
223                 <para>If a [printers] section occurs in the 
224                 configuration file, users are able to connect to any printer 
225                 specified in the local host's printcap file.</para>
226
227                 <para>When a connection request is made, the existing sections 
228                 are scanned. If a match is found, it is used. If no match is found, 
229                 but a [homes] section exists, it is used as described
230                 above. Otherwise, the requested section name is treated as a
231                 printer name and the appropriate printcap file is scanned to see 
232                 if the requested section name is a valid printer share name. If 
233                 a match is found, a new printer share is created by cloning 
234                 the [printers] section.</para>
235
236                 <para>A few modifications are then made to the newly created 
237                 share:</para>
238
239                 <itemizedlist>
240                 <listitem><para>The share name is set to the located printer 
241                 name</para></listitem>
242
243                 <listitem><para>If no printer name was given, the printer name 
244                 is set to the located printer name</para></listitem>
245
246                 <listitem><para>If the share does not permit guest access and 
247                 no username was given, the username is set to the located 
248                 printer name.</para></listitem>
249                 </itemizedlist>
250
251                 <para>Note that the [printers] service MUST be 
252                 printable - if you specify otherwise, the server will refuse 
253                 to load the configuration file.</para>
254                 
255                 <para>Typically the path specified would be that of a 
256                 world-writeable spool directory with the sticky bit set on 
257                 it. A typical [printers] entry would look like 
258                 this:</para>
259
260                 <screen><computeroutput>
261                 [printers]
262                         path = /usr/spool/public
263                         guest ok = yes
264                         printable = yes 
265                 </computeroutput></screen>
266
267                 <para>All aliases given for a printer in the printcap file 
268                 are legitimate printer names as far as the server is concerned. 
269                 If your printing subsystem doesn't work like that, you will have 
270                 to set up a pseudo-printcap. This is a file consisting of one or 
271                 more lines like this:</para>
272
273                 <screen>
274                 <computeroutput>
275                 alias|alias|alias|alias...    
276                 </computeroutput>
277                 </screen>
278
279                 <para>Each alias should be an acceptable printer name for 
280                 your printing subsystem. In the [global] section, specify 
281                 the new file as your printcap.  The server will then only recognize 
282                 names found in your pseudo-printcap, which of course can contain 
283                 whatever aliases you like. The same technique could be used 
284                 simply to limit access to a subset of your local printers.</para>
285
286                 <para>An alias, by the way, is defined as any component of the 
287                 first entry of a printcap record. Records are separated by newlines,
288                 components (if there are more than one) are separated by vertical 
289                 bar symbols ('|').</para>
290                 
291                 <para>NOTE: On SYSV systems which use lpstat to determine what 
292                 printers are defined on the system you may be able to use
293                 "printcap name = lpstat" to automatically obtain a list 
294                 of printers. See the "printcap name" option 
295                 for more details.</para>
296         </refsect2>
297 </refsect1>
298
299 <refsect1>
300         <title>PARAMETERS</title>
301
302         <para>parameters define the specific attributes of sections.</para>
303
304         <para>Some parameters are specific to the [global] section
305         (e.g., <emphasis>security</emphasis>).  Some parameters are usable 
306         in all sections (e.g., <emphasis>create mode</emphasis>). All others 
307         are permissible only in normal sections. For the purposes of the 
308         following descriptions the [homes] and [printers]
309         sections will be considered normal.  The letter <emphasis>G</emphasis> 
310         in parentheses indicates that a parameter is specific to the
311         [global] section. The letter <emphasis>S</emphasis>
312         indicates that a parameter can be specified in a service specific
313         section. Note that all <emphasis>S</emphasis> parameters can also be specified in 
314         the [global] section - in which case they will define
315         the default behavior for all services.</para>
316
317         <para>parameters are arranged here in alphabetical order - this may 
318         not create best bedfellows, but at least you can find them! Where
319         there are synonyms, the preferred synonym is described, others refer 
320         to the preferred synonym.</para>
321 </refsect1>
322
323 <refsect1>
324         <title>VARIABLE SUBSTITUTIONS</title>
325
326         <para>Many of the strings that are settable in the config file 
327         can take substitutions. For example the option "path =
328         /tmp/%u" would be interpreted as "path = 
329         /tmp/john" if the user connected with the username john.</para>
330
331         <para>These substitutions are mostly noted in the descriptions below, 
332         but there are some general substitutions which apply whenever they 
333         might be relevant. These are:</para>
334
335         <variablelist>
336                 <varlistentry>
337                 <term>%S</term>
338                 <listitem><para>the name of the current service, if any.</para>
339                 </listitem>
340                 </varlistentry>
341                 
342                 <varlistentry>
343                 <term>%P</term>
344                 <listitem><para>the root directory of the current service, 
345                 if any.</para></listitem>
346                 </varlistentry>
347                 
348                 <varlistentry>
349                 <term>%u</term>
350                 <listitem><para>user name of the current service, if any.</para>
351                 </listitem>
352                 </varlistentry>
353                 
354                 <varlistentry>
355                 <term>%g</term>
356                 <listitem><para>primary group name of %u.</para></listitem>
357                 </varlistentry>
358                 
359                 <varlistentry>
360                 <term>%U</term>
361                 <listitem><para>session user name (the user name that the client 
362                 wanted, not necessarily the same as the one they got).</para></listitem>
363                 </varlistentry>
364                 
365                 <varlistentry>
366                 <term>%G</term>
367                 <listitem><para>primary group name of %U.</para></listitem>
368                 </varlistentry>
369
370                 <varlistentry>
371                 <term>%H</term>
372                 <listitem><para>the home directory of the user given 
373                 by %u.</para></listitem>
374                 </varlistentry>
375                 
376                 <varlistentry>
377                 <term>%v</term>
378                 <listitem><para>the Samba version.</para></listitem>
379                 </varlistentry>
380                 
381                 <varlistentry>
382                 <term>%h</term>
383                 <listitem><para>the Internet hostname that Samba is running 
384                 on.</para></listitem>
385                 </varlistentry>
386
387                 <varlistentry>
388                 <term>%m</term>
389                 <listitem><para>the NetBIOS name of the client machine 
390                 (very useful).</para></listitem>
391                 </varlistentry>
392                 
393                 <varlistentry>
394                 <term>%L</term>
395                 <listitem><para>the NetBIOS name of the server. This allows you 
396                 to change your config based on what the client calls you. Your 
397                 server can have a "dual personality".</para>
398
399                 <para>Note that this paramater is not available when Samba listens
400                 on port 445, as clients no longer send this information </para>
401                 </listitem>
402
403                 </varlistentry>
404                 
405                 <varlistentry>
406                 <term>%M</term>
407                 <listitem><para>the Internet name of the client machine.
408                 </para></listitem>
409                 </varlistentry>
410                 
411                 <varlistentry>
412                 <term>%N</term>
413                 <listitem><para>the name of your NIS home directory server.  
414                 This is obtained from your NIS auto.map entry.  If you have 
415                 not compiled Samba with the <emphasis>--with-automount</emphasis> 
416                 option then this value will be the same as %L.</para>
417                 </listitem>
418                 </varlistentry>
419                 
420                 <varlistentry>
421                 <term>%p</term>
422                 <listitem><para>the path of the service's home directory, 
423                 obtained from your NIS auto.map entry. The NIS auto.map entry 
424                 is split up as "%N:%p".</para></listitem>
425                 </varlistentry>
426                 
427                 <varlistentry>
428                 <term>%R</term>
429                 <listitem><para>the selected protocol level after 
430                 protocol negotiation. It can be one of CORE, COREPLUS, 
431                 LANMAN1, LANMAN2 or NT1.</para></listitem>
432                 </varlistentry>
433
434                 <varlistentry>
435                 <term>%d</term>
436                 <listitem><para>The process id of the current server 
437                 process.</para></listitem>
438                 </varlistentry>
439                 
440                 <varlistentry>
441                 <term>%a</term>
442                 <listitem><para>the architecture of the remote
443                 machine. Only some are recognized, and those may not be 
444                 100% reliable. It currently recognizes Samba, WfWg, Win95,
445                 WinNT and Win2k. Anything else will be known as 
446                 "UNKNOWN". If it gets it wrong then sending a level 
447                 3 log to <ulink url="mailto:samba@samba.org">samba@samba.org
448                 </ulink> should allow it to be fixed.</para></listitem>
449                 </varlistentry>
450                 
451                 <varlistentry>
452                 <term>%I</term>
453                 <listitem><para>The IP address of the client machine.</para>
454                 </listitem>
455                 </varlistentry>
456
457                 <varlistentry>
458                 <term>%T</term>
459                 <listitem><para>the current date and time.</para></listitem>
460                 </varlistentry>
461                 
462                 <varlistentry>
463                 <term>%$(<replaceable>envvar</replaceable>)</term>
464                 <listitem><para>The value of the environment variable
465                 <replaceable>envar</replaceable>.</para></listitem>
466                 </varlistentry>
467         </variablelist>
468
469         <para>There are some quite creative things that can be done 
470         with these substitutions and other smb.conf options.</para
471 </refsect1>
472
473 <refsect1>
474         <title id="NAMEMANGLINGSECT">NAME MANGLING</title>
475         
476         <para>Samba supports "name mangling" so that DOS and 
477         Windows clients can use files that don't conform to the 8.3 format. 
478         It can also be set to adjust the case of 8.3 format filenames.</para>
479
480         <para>There are several options that control the way mangling is 
481         performed, and they are grouped here rather than listed separately. 
482         For the defaults look at the output of the testparm program. </para>
483
484         <para>All of these options can be set separately for each service 
485         (or globally, of course). </para>
486
487         <para>The options are: </para>
488         
489         <variablelist>
490         
491         <varlistentry>
492                 <term>mangle case = yes/no</term>
493                 <listitem><para> controls if names that have characters that 
494                 aren't of the "default" case are mangled. For example, 
495                 if this is yes then a name like "Mail" would be mangled. 
496                 Default <emphasis>no</emphasis>.</para></listitem>
497                 </varlistentry> 
498         
499                 <varlistentry>
500                 <term>case sensitive = yes/no</term>
501                 <listitem><para>controls whether filenames are case sensitive. If 
502                 they aren't then Samba must do a filename search and match on passed 
503                 names. Default <emphasis>no</emphasis>.</para></listitem>
504                 </varlistentry> 
505
506                 <varlistentry>
507                 <term>default case = upper/lower</term>
508                 <listitem><para>controls what the default case is for new 
509                 filenames. Default <emphasis>lower</emphasis>.</para></listitem>
510                 </varlistentry> 
511         
512                 <varlistentry>
513                 <term>preserve case = yes/no</term>
514                 <listitem><para>controls if new files are created with the 
515                 case that the client passes, or if they are forced to be the 
516                 "default" case. Default <emphasis>yes</emphasis>.
517                 </para></listitem>
518                 </varlistentry> 
519
520                 <varlistentry>
521                 <term>short preserve case = yes/no</term>
522                 <listitem><para>controls if new files which conform to 8.3 syntax, 
523                 that is all in upper case and of suitable length, are created 
524                 upper case, or if they are forced to be the "default" 
525                 case. This option can be use with "preserve case = yes" 
526                 to permit long filenames to retain their case, while short names 
527                 are lowercased. Default <emphasis>yes</emphasis>.</para></listitem>
528                 </varlistentry> 
529         </variablelist>
530         
531         <para>By default, Samba 2.2 has the same semantics as a Windows 
532         NT server, in that it is case insensitive but case preserving.</para>
533         
534 </refsect1>
535
536 <refsect1>
537         <title id="VALIDATIONSECT">NOTE ABOUT USERNAME/PASSWORD VALIDATION</title>
538
539         <para>There are a number of ways in which a user can connect 
540         to a service. The server uses the following steps in determining 
541         if it will allow a connection to a specified service. If all the 
542         steps fail, then the connection request is rejected.  However, if one of the 
543         steps succeeds, then the following steps are not checked.</para>
544
545         <para>If the service is marked "guest only = yes" then
546         steps 1 to 5 are skipped.</para>
547
548         <orderedlist numeration="Arabic">
549                 <listitem><para>If the client has passed a username/password 
550                 pair and that username/password pair is validated by the UNIX 
551                 system's password programs then the connection is made as that 
552                 username. Note that this includes the 
553                 \\server\service%<replaceable>username</replaceable> method of passing 
554                 a username.</para></listitem>
555
556                 <listitem><para>If the client has previously registered a username 
557                 with the system and now supplies a correct password for that 
558                 username then the connection is allowed.</para></listitem>
559                 
560                 <listitem><para>The client's NetBIOS name and any previously 
561                 used user names are checked against the supplied password, if 
562                 they match then the connection is allowed as the corresponding 
563                 user.</para></listitem>
564                 
565                 <listitem><para>If the client has previously validated a
566                 username/password pair with the server and the client has passed 
567                 the validation token then that username is used. </para></listitem>
568
569                 <listitem><para>If a "user = " field is given in the
570                 <filename>smb.conf</filename> file for the service and the client 
571                 has supplied a password, and that password matches (according to 
572                 the UNIX system's password checking) with one of the usernames 
573                 from the "user =" field then the connection is made as 
574                 the username in the "user =" line. If one 
575                 of the username in the "user =" list begins with a
576                 '@' then that name expands to a list of names in 
577                 the group of the same name.</para></listitem>
578
579                 <listitem><para>If the service is a guest service then a 
580                 connection is made as the username given in the "guest 
581                 account =" for the service, irrespective of the 
582                 supplied password.</para></listitem>
583         </orderedlist>
584
585 </refsect1>
586
587 <refsect1>
588         <title>COMPLETE LIST OF GLOBAL PARAMETERS</title>
589
590         <para>Here is a list of all global parameters. See the section of 
591         each parameter for details.  Note that some are synonyms.</para>
592
593         <itemizedlist>
594                 <listitem><para><link linkend="ABORTSHUTDOWNSCRIPT"><parameter>abort shutdown script</parameter></link></para></listitem>
595                 <listitem><para><link linkend="ADDPRINTERCOMMAND"><parameter>add printer command</parameter></link></para></listitem>
596                 <listitem><para><link linkend="ADDSHARECOMMAND"><parameter>add share command</parameter></link></para></listitem>
597                 <listitem><para><link linkend="ADDUSERSCRIPT"><parameter>add user script</parameter></link></para></listitem>
598                 <listitem><para><link linkend="ADDMACHINESCRIPT"><parameter>add machine script</parameter></link></para></listitem>
599                 <listitem><para><link linkend="ALLOWTRUSTEDDOMAINS"><parameter>allow trusted domains</parameter></link></para></listitem>
600                 <listitem><para><link linkend="ANNOUNCEAS"><parameter>announce as</parameter></link></para></listitem>
601                 <listitem><para><link linkend="ANNOUNCEVERSION"><parameter>announce version</parameter></link></para></listitem>
602                 <listitem><para><link linkend="AUTHMETHODS"><parameter>auth methods</parameter></link></para></listitem>
603                 <listitem><para><link linkend="AUTOSERVICES"><parameter>auto services</parameter></link></para></listitem>
604                 <listitem><para><link linkend="BINDINTERFACESONLY"><parameter>bind interfaces only</parameter></link></para></listitem>
605                 <listitem><para><link linkend="BROWSELIST"><parameter>browse list</parameter></link></para></listitem>
606                 <listitem><para><link linkend="CHANGENOTIFYTIMEOUT"><parameter>change notify timeout</parameter></link></para></listitem>
607                 <listitem><para><link linkend="CHANGESHARECOMMAND"><parameter>change share command</parameter></link></para></listitem>
608                 <listitem><para><link linkend="CONFIGFILE"><parameter>config file</parameter></link></para></listitem>
609                 <listitem><para><link linkend="DEADTIME"><parameter>deadtime</parameter></link></para></listitem>
610                 <listitem><para><link linkend="DEBUGHIRESTIMESTAMP"><parameter>debug hires timestamp</parameter></link></para></listitem>
611                 <listitem><para><link linkend="DEBUGPID"><parameter>debug pid</parameter></link></para></listitem>
612                 <listitem><para><link linkend="DEBUGTIMESTAMP"><parameter>debug timestamp</parameter></link></para></listitem>
613                 <listitem><para><link linkend="DEBUGUID"><parameter>debug uid</parameter></link></para></listitem>
614                 <listitem><para><link linkend="DEBUGLEVEL"><parameter>debuglevel</parameter></link></para></listitem>
615                 <listitem><para><link linkend="DEFAULT"><parameter>default</parameter></link></para></listitem>
616                 <listitem><para><link linkend="DEFAULTSERVICE"><parameter>default service</parameter></link></para></listitem>
617                 <listitem><para><link linkend="DELETEPRINTERCOMMAND"><parameter>delete printer command</parameter></link></para></listitem>
618                 <listitem><para><link linkend="DELETESHARECOMMAND"><parameter>delete share command</parameter></link></para></listitem>
619                 <listitem><para><link linkend="DELETEUSERSCRIPT"><parameter>delete user script</parameter></link></para></listitem>
620                 <listitem><para><link linkend="DFREECOMMAND"><parameter>dfree command</parameter></link></para></listitem>
621                 <listitem><para><link linkend="DISABLESPOOLSS"><parameter>disable spoolss</parameter></link></para></listitem>
622                 <listitem><para><link linkend="DNSPROXY"><parameter>dns proxy</parameter></link></para></listitem>
623                 <listitem><para><link linkend="DOMAINADMINGROUP"><parameter>domain admin group</parameter></link></para></listitem>
624                 <listitem><para><link linkend="DOMAINGUESTGROUP"><parameter>domain guest group</parameter></link></para></listitem>
625                 <listitem><para><link linkend="DOMAINLOGONS"><parameter>domain logons</parameter></link></para></listitem>
626                 <listitem><para><link linkend="DOMAINMASTER"><parameter>domain master</parameter></link></para></listitem>
627                 <listitem><para><link linkend="ENCRYPTPASSWORDS"><parameter>encrypt passwords</parameter></link></para></listitem>
628                 <listitem><para><link linkend="ENHANCEDBROWSING"><parameter>enhanced browsing</parameter></link></para></listitem>
629                 <listitem><para><link linkend="ENUMPORTSCOMMAND"><parameter>enumports command</parameter></link></para></listitem>
630                 <listitem><para><link linkend="GETWDCACHE"><parameter>getwd cache</parameter></link></para></listitem>
631                 <listitem><para><link linkend="HIDELOCALUSERS"><parameter>hide local users</parameter></link></para></listitem>
632                 <listitem><para><link linkend="HIDEUNREADABLE"><parameter>hide unreadable</parameter></link></para></listitem>
633                 <listitem><para><link linkend="HOMEDIRMAP"><parameter>homedir map</parameter></link></para></listitem>
634                 <listitem><para><link linkend="HOSTMSDFS"><parameter>host msdfs</parameter></link></para></listitem>
635                 <listitem><para><link linkend="HOSTSEQUIV"><parameter>hosts equiv</parameter></link></para></listitem>
636                 <listitem><para><link linkend="INTERFACES"><parameter>interfaces</parameter></link></para></listitem>
637                 <listitem><para><link linkend="KEEPALIVE"><parameter>keepalive</parameter></link></para></listitem>
638                 <listitem><para><link linkend="KERNELOPLOCKS"><parameter>kernel oplocks</parameter></link></para></listitem>
639                 <listitem><para><link linkend="LANMANAUTH"><parameter>lanman auth</parameter></link></para></listitem>
640                 <listitem><para><link linkend="LARGEREADWRITE"><parameter>large readwrite</parameter></link></para></listitem>
641                 
642                 <listitem><para><link linkend="LDAPADMINDN"><parameter>ldap admin dn</parameter></link></para></listitem>
643                 <listitem><para><link linkend="LDAPFILTER"><parameter>ldap filter</parameter></link></para></listitem>
644                 <listitem><para><link linkend="LDAPPORT"><parameter>ldap port</parameter></link></para></listitem>
645                 <listitem><para><link linkend="LDAPSERVER"><parameter>ldap server</parameter></link></para></listitem>
646                 <listitem><para><link linkend="LDAPSSL"><parameter>ldap ssl</parameter></link></para></listitem>
647                 <listitem><para><link linkend="LDAPSUFFIX"><parameter>ldap suffix</parameter></link></para></listitem>
648
649                 <listitem><para><link linkend="LMANNOUNCE"><parameter>lm announce</parameter></link></para></listitem>
650                 <listitem><para><link linkend="LMINTERVAL"><parameter>lm interval</parameter></link></para></listitem>
651                 <listitem><para><link linkend="LOADPRINTERS"><parameter>load printers</parameter></link></para></listitem>
652                 <listitem><para><link linkend="LOCALMASTER"><parameter>local master</parameter></link></para></listitem>
653                 <listitem><para><link linkend="LOCKDIR"><parameter>lock dir</parameter></link></para></listitem>
654                 <listitem><para><link linkend="LOCKDIRECTORY"><parameter>lock directory</parameter></link></para></listitem>
655                 <listitem><para><link linkend="LOGFILE"><parameter>log file</parameter></link></para></listitem>
656                 <listitem><para><link linkend="LOGLEVEL"><parameter>log level</parameter></link></para></listitem>
657                 <listitem><para><link linkend="LOGONDRIVE"><parameter>logon drive</parameter></link></para></listitem>
658                 <listitem><para><link linkend="LOGONHOME"><parameter>logon home</parameter></link></para></listitem>
659                 <listitem><para><link linkend="LOGONPATH"><parameter>logon path</parameter></link></para></listitem>
660                 <listitem><para><link linkend="LOGONSCRIPT"><parameter>logon script</parameter></link></para></listitem>
661                 <listitem><para><link linkend="LPQCACHETIME"><parameter>lpq cache time</parameter></link></para></listitem>
662                 <listitem><para><link linkend="MACHINEPASSWORDTIMEOUT"><parameter>machine password timeout</parameter></link></para></listitem>
663                 <listitem><para><link linkend="MANGLEDSTACK"><parameter>mangled stack</parameter></link></para></listitem>
664                 <listitem><para><link linkend="MAPTOGUEST"><parameter>map to guest</parameter></link></para></listitem>
665                 <listitem><para><link linkend="MAXDISKSIZE"><parameter>max disk size</parameter></link></para></listitem>
666                 <listitem><para><link linkend="MAXLOGSIZE"><parameter>max log size</parameter></link></para></listitem>
667                 <listitem><para><link linkend="MAXMUX"><parameter>max mux</parameter></link></para></listitem>
668                 <listitem><para><link linkend="MAXOPENFILES"><parameter>max open files</parameter></link></para></listitem>
669                 <listitem><para><link linkend="MAXPROTOCOL"><parameter>max protocol</parameter></link></para></listitem>
670                 <listitem><para><link linkend="MAXSMBDPROCESSES"><parameter>max smbd processes</parameter></link></para></listitem>
671                 <listitem><para><link linkend="MAXTTL"><parameter>max ttl</parameter></link></para></listitem>
672                 <listitem><para><link linkend="MAXWINSTTL"><parameter>max wins ttl</parameter></link></para></listitem>
673                 <listitem><para><link linkend="MAXXMIT"><parameter>max xmit</parameter></link></para></listitem>
674                 <listitem><para><link linkend="MESSAGECOMMAND"><parameter>message command</parameter></link></para></listitem>
675                 <listitem><para><link linkend="MINPASSWDLENGTH"><parameter>min passwd length</parameter></link></para></listitem>
676                 <listitem><para><link linkend="MINPASSWORDLENGTH"><parameter>min password length</parameter></link></para></listitem>
677                 <listitem><para><link linkend="MINPROTOCOL"><parameter>min protocol</parameter></link></para></listitem>
678                 <listitem><para><link linkend="MINWINSTTL"><parameter>min wins ttl</parameter></link></para></listitem>
679                 <listitem><para><link linkend="NAMERESOLVEORDER"><parameter>name resolve order</parameter></link></para></listitem>
680                 <listitem><para><link linkend="NETBIOSALIASES"><parameter>netbios aliases</parameter></link></para></listitem>
681                 <listitem><para><link linkend="NETBIOSNAME"><parameter>netbios name</parameter></link></para></listitem>
682                 <listitem><para><link linkend="NETBIOSSCOPE"><parameter>netbios scope</parameter></link></para></listitem>
683                 <listitem><para><link linkend="NISHOMEDIR"><parameter>nis homedir</parameter></link></para></listitem>
684                 <listitem><para><link linkend="NONUNIXACCOUNTRANGE"><parameter>non unix account range</parameter></link></para></listitem>
685                 <listitem><para><link linkend="NTPIPESUPPORT"><parameter>nt pipe support</parameter></link></para></listitem>
686                 <listitem><para><link linkend="NULLPASSWORDS"><parameter>null passwords</parameter></link></para></listitem>
687                 <listitem><para><link linkend="OBEYPAMRESTRICTIONS"><parameter>obey pam restrictions</parameter></link></para></listitem>
688                 <listitem><para><link linkend="OPLOCKBREAKWAITTIME"><parameter>oplock break wait time</parameter></link></para></listitem>
689                 <listitem><para><link linkend="OSLEVEL"><parameter>os level</parameter></link></para></listitem>
690                 <listitem><para><link linkend="OS2DRIVERMAP"><parameter>os2 driver map</parameter></link></para></listitem>
691                 <listitem><para><link linkend="PAMPASSWORDCHANGE"><parameter>pam password change</parameter></link></para></listitem>
692                 <listitem><para><link linkend="PANICACTION"><parameter>panic action</parameter></link></para></listitem>
693                 <listitem><para><link linkend="PASSDBBACKEND"><parameter>passdb backend</parameter></link></para></listitem>
694                 <listitem><para><link linkend="PASSWDCHAT"><parameter>passwd chat</parameter></link></para></listitem>
695                 <listitem><para><link linkend="PASSWDCHATDEBUG"><parameter>passwd chat debug</parameter></link></para></listitem>
696                 <listitem><para><link linkend="PASSWDPROGRAM"><parameter>passwd program</parameter></link></para></listitem>
697                 <listitem><para><link linkend="PASSWORDLEVEL"><parameter>password level</parameter></link></para></listitem>
698                 <listitem><para><link linkend="PASSWORDSERVER"><parameter>password server</parameter></link></para></listitem>
699                 <listitem><para><link linkend="PREFEREDMASTER"><parameter>prefered master</parameter></link></para></listitem>
700                 <listitem><para><link linkend="PREFERREDMASTER"><parameter>preferred master</parameter></link></para></listitem>
701                 <listitem><para><link linkend="PRELOAD"><parameter>preload</parameter></link></para></listitem>
702                 <listitem><para><link linkend="PRINTCAP"><parameter>printcap</parameter></link></para></listitem>
703                 <listitem><para><link linkend="PRINTCAPNAME"><parameter>printcap name</parameter></link></para></listitem>
704                 <listitem><para><link linkend="PRINTERDRIVERFILE"><parameter>printer driver file</parameter></link></para></listitem>
705                 <listitem><para><link linkend="PRIVATEDIR"><parameter>private dir</parameter></link></para></listitem>
706                 <listitem><para><link linkend="PROTOCOL"><parameter>protocol</parameter></link></para></listitem>
707                 <listitem><para><link linkend="READBMPX"><parameter>read bmpx</parameter></link></para></listitem>
708                 <listitem><para><link linkend="READRAW"><parameter>read raw</parameter></link></para></listitem>
709                 <listitem><para><link linkend="READSIZE"><parameter>read size</parameter></link></para></listitem>
710                 <listitem><para><link linkend="REMOTEANNOUNCE"><parameter>remote announce</parameter></link></para></listitem>
711                 <listitem><para><link linkend="REMOTEBROWSESYNC"><parameter>remote browse sync</parameter></link></para></listitem>
712                 <listitem><para><link linkend="RESTRICTANONYMOUS"><parameter>restrict anonymous</parameter></link></para></listitem>
713                 <listitem><para><link linkend="ROOT"><parameter>root</parameter></link></para></listitem>
714                 <listitem><para><link linkend="ROOTDIR"><parameter>root dir</parameter></link></para></listitem>
715                 <listitem><para><link linkend="ROOTDIRECTORY"><parameter>root directory</parameter></link></para></listitem>
716                 <listitem><para><link linkend="SECURITY"><parameter>security</parameter></link></para></listitem>
717                 <listitem><para><link linkend="SERVERSTRING"><parameter>server string</parameter></link></para></listitem>
718                 <listitem><para><link linkend="SHOWADDPRINTERWIZARD"><parameter>show add printer wizard</parameter></link></para></listitem>
719                 <listitem><para><link linkend="SHUTDOWNSCRIPT"><parameter>shutdown script</parameter></link></para></listitem>
720                 <listitem><para><link linkend="SMBPASSWDFILE"><parameter>smb passwd file</parameter></link></para></listitem>
721                 <listitem><para><link linkend="SOCKETADDRESS"><parameter>socket address</parameter></link></para></listitem>
722                 <listitem><para><link linkend="SOCKETOPTIONS"><parameter>socket options</parameter></link></para></listitem>
723                 <listitem><para><link linkend="SOURCEENVIRONMENT"><parameter>source environment</parameter></link></para></listitem>
724
725                 <listitem><para><link linkend="SSL"><parameter>ssl</parameter></link></para></listitem>
726                 <listitem><para><link linkend="SSLCACERTDIR"><parameter>ssl CA certDir</parameter></link></para></listitem>
727                 <listitem><para><link linkend="SSLCACERTFILE"><parameter>ssl CA certFile</parameter></link></para></listitem>
728                 <listitem><para><link linkend="SSLCIPHERS"><parameter>ssl ciphers</parameter></link></para></listitem>
729                 <listitem><para><link linkend="SSLCLIENTCERT"><parameter>ssl client cert</parameter></link></para></listitem>
730                 <listitem><para><link linkend="SSLCLIENTKEY"><parameter>ssl client key</parameter></link></para></listitem>
731                 <listitem><para><link linkend="SSLCOMPATIBILITY"><parameter>ssl compatibility</parameter></link></para></listitem>
732                 <listitem><para><link linkend="SSLEGDSOCKET"><parameter>ssl egd socket</parameter></link></para></listitem>
733                 <listitem><para><link linkend="SSLENTROPYBYTES"><parameter>ssl entropy bytes</parameter></link></para></listitem>
734                 <listitem><para><link linkend="SSLENTROPYFILE"><parameter>ssl entropy file</parameter></link></para></listitem>
735                 <listitem><para><link linkend="SSLHOSTS"><parameter>ssl hosts</parameter></link></para></listitem>
736                 <listitem><para><link linkend="SSLHOSTSRESIGN"><parameter>ssl hosts resign</parameter></link></para></listitem>
737                 <listitem><para><link linkend="SSLREQUIRECLIENTCERT"><parameter>ssl require clientcert</parameter></link></para></listitem>
738                 <listitem><para><link linkend="SSLREQUIRESERVERCERT"><parameter>ssl require servercert</parameter></link></para></listitem>
739                 <listitem><para><link linkend="SSLSERVERCERT"><parameter>ssl server cert</parameter></link></para></listitem>
740                 <listitem><para><link linkend="SSLSERVERKEY"><parameter>ssl server key</parameter></link></para></listitem>
741                 <listitem><para><link linkend="SSLVERSION"><parameter>ssl version</parameter></link></para></listitem>
742
743                 <listitem><para><link linkend="STATCACHE"><parameter>stat cache</parameter></link></para></listitem>
744                 <listitem><para><link linkend="STATCACHESIZE"><parameter>stat cache size</parameter></link></para></listitem>
745                 <listitem><para><link linkend="STRIPDOT"><parameter>strip dot</parameter></link></para></listitem>
746                 <listitem><para><link linkend="SYSLOG"><parameter>syslog</parameter></link></para></listitem>
747                 <listitem><para><link linkend="SYSLOGONLY"><parameter>syslog only</parameter></link></para></listitem>
748                 <listitem><para><link linkend="TEMPLATEHOMEDIR"><parameter>template homedir</parameter></link></para></listitem>
749                 <listitem><para><link linkend="TEMPLATESHELL"><parameter>template shell</parameter></link></para></listitem>
750                 <listitem><para><link linkend="TIMEOFFSET"><parameter>time offset</parameter></link></para></listitem>
751                 <listitem><para><link linkend="TIMESERVER"><parameter>time server</parameter></link></para></listitem>
752                 <listitem><para><link linkend="TIMESTAMPLOGS"><parameter>timestamp logs</parameter></link></para></listitem>
753                 <listitem><para><link linkend="TOTALPRINTJOBS"><parameter>total print jobs</parameter></link></para></listitem>
754                 <listitem><para><link linkend="UNIXEXTENSIONS"><parameter>unix extensions</parameter></link></para></listitem>
755                 <listitem><para><link linkend="UNIXPASSWORDSYNC"><parameter>unix password sync</parameter></link></para></listitem>
756                 <listitem><para><link linkend="UPDATEENCRYPTED"><parameter>update encrypted</parameter></link></para></listitem>
757                 <listitem><para><link linkend="USEMMAP"><parameter>use mmap</parameter></link></para></listitem>
758                 <listitem><para><link linkend="USERHOSTS"><parameter>use rhosts</parameter></link></para></listitem>
759                 <listitem><para><link linkend="USERNAMELEVEL"><parameter>username level</parameter></link></para></listitem>
760                 <listitem><para><link linkend="USERNAMEMAP"><parameter>username map</parameter></link></para></listitem>
761                 <listitem><para><link linkend="UTMP"><parameter>utmp</parameter></link></para></listitem>
762                 <listitem><para><link linkend="UTMPDIRECTORY"><parameter>utmp directory</parameter></link></para></listitem>
763                 <listitem><para><link linkend="WINBINDCACHETIME"><parameter>winbind cache time</parameter></link></para></listitem>
764                 <listitem><para><link linkend="WINBINDENUMUSERS"><parameter>winbind enum users</parameter></link></para></listitem>
765                 <listitem><para><link linkend="WINBINDENUMGROUPS"><parameter>winbind enum groups</parameter></link></para></listitem>
766                 <listitem><para><link linkend="WINBINDGID"><parameter>winbind gid</parameter></link></para></listitem>
767                 <listitem><para><link linkend="WINBINDSEPARATOR"><parameter>winbind separator</parameter></link></para></listitem>
768                 <listitem><para><link linkend="WINBINDUID"><parameter>winbind uid</parameter></link></para></listitem>
769                 <listitem><para><link linkend="WINBINDUSEDEFAULTDOMAIN"><parameter>winbind use default domain</parameter></link></para></listitem>
770                 <listitem><para><link linkend="WINSHOOK"><parameter>wins hook</parameter></link></para></listitem>
771                 <listitem><para><link linkend="WINSPROXY"><parameter>wins proxy</parameter></link></para></listitem>
772                 <listitem><para><link linkend="WINSSERVER"><parameter>wins server</parameter></link></para></listitem>
773                 <listitem><para><link linkend="WINSSUPPORT"><parameter>wins support</parameter></link></para></listitem>
774                 <listitem><para><link linkend="WORKGROUP"><parameter>workgroup</parameter></link></para></listitem>
775                 <listitem><para><link linkend="WRITERAW"><parameter>write raw</parameter></link></para></listitem>
776         </itemizedlist>
777
778 </refsect1>
779
780 <refsect1>
781         <title>COMPLETE LIST OF SERVICE PARAMETERS</title>
782         
783         <para>Here is a list of all service parameters. See the section on 
784         each parameter for details. Note that some are synonyms.</para>
785         
786         <itemizedlist>
787                 <listitem><para><link linkend="ADMINUSERS"><parameter>admin users</parameter></link></para></listitem>
788                 <listitem><para><link linkend="ALLOWHOSTS"><parameter>allow hosts</parameter></link></para></listitem>
789                 <listitem><para><link linkend="AVAILABLE"><parameter>available</parameter></link></para></listitem>
790                 <listitem><para><link linkend="BLOCKINGLOCKS"><parameter>blocking locks</parameter></link></para></listitem>
791                 <listitem><para><link linkend="BROWSABLE"><parameter>browsable</parameter></link></para></listitem>
792                 <listitem><para><link linkend="BROWSEABLE"><parameter>browseable</parameter></link></para></listitem>
793                 <listitem><para><link linkend="CASESENSITIVE"><parameter>case sensitive</parameter></link></para></listitem>
794                 <listitem><para><link linkend="CASESIGNAMES"><parameter>casesignames</parameter></link></para></listitem>
795                 <listitem><para><link linkend="COMMENT"><parameter>comment</parameter></link></para></listitem>
796                 <listitem><para><link linkend="COPY"><parameter>copy</parameter></link></para></listitem>
797                 <listitem><para><link linkend="CREATEMASK"><parameter>create mask</parameter></link></para></listitem>
798                 <listitem><para><link linkend="CREATEMODE"><parameter>create mode</parameter></link></para></listitem>
799                 <listitem><para><link linkend="DEFAULTCASE"><parameter>default case</parameter></link></para></listitem>
800                 <listitem><para><link linkend="DEFAULTDEVMODE"><parameter>default devmode</parameter></link></para></listitem>
801                 <listitem><para><link linkend="DELETEREADONLY"><parameter>delete readonly</parameter></link></para></listitem>
802                 <listitem><para><link linkend="DELETEVETOFILES"><parameter>delete veto files</parameter></link></para></listitem>
803                 <listitem><para><link linkend="DENYHOSTS"><parameter>deny hosts</parameter></link></para></listitem>
804                 <listitem><para><link linkend="DIRECTORY"><parameter>directory</parameter></link></para></listitem>
805                 <listitem><para><link linkend="DIRECTORYMASK"><parameter>directory mask</parameter></link></para></listitem>
806                 <listitem><para><link linkend="DIRECTORYMODE"><parameter>directory mode</parameter></link></para></listitem>
807                 <listitem><para><link linkend="DIRECTORYSECURITYMASK"><parameter>directory security mask</parameter></link></para></listitem>
808                 <listitem><para><link linkend="DONTDESCEND"><parameter>dont descend</parameter></link></para></listitem>
809                 <listitem><para><link linkend="DOSFILEMODE"><parameter>dos filemode</parameter></link></para></listitem>
810                 <listitem><para><link linkend="DOSFILETIMERESOLUTION"><parameter>dos filetime resolution</parameter></link></para></listitem>
811                 <listitem><para><link linkend="DOSFILETIMES"><parameter>dos filetimes</parameter></link></para></listitem>
812                 <listitem><para><link linkend="EXEC"><parameter>exec</parameter></link></para></listitem>
813                 <listitem><para><link linkend="FAKEDIRECTORYCREATETIMES"><parameter>fake directory create times</parameter></link></para></listitem>
814                 <listitem><para><link linkend="FAKEOPLOCKS"><parameter>fake oplocks</parameter></link></para></listitem>
815                 <listitem><para><link linkend="FOLLOWSYMLINKS"><parameter>follow symlinks</parameter></link></para></listitem>
816                 <listitem><para><link linkend="FORCECREATEMODE"><parameter>force create mode</parameter></link></para></listitem>
817                 <listitem><para><link linkend="FORCEDIRECTORYMODE"><parameter>force directory mode</parameter></link></para></listitem>
818                 <listitem><para><link linkend="FORCEDIRECTORYSECURITYMODE"><parameter>force directory security mode</parameter></link></para></listitem>
819                 <listitem><para><link linkend="FORCEGROUP"><parameter>force group</parameter></link></para></listitem>
820                 <listitem><para><link linkend="FORCESECURITYMODE"><parameter>force security mode</parameter></link></para></listitem>
821                 <listitem><para><link linkend="FORCEUSER"><parameter>force user</parameter></link></para></listitem>
822                 <listitem><para><link linkend="FSTYPE"><parameter>fstype</parameter></link></para></listitem>
823                 <listitem><para><link linkend="GROUP"><parameter>group</parameter></link></para></listitem>
824                 <listitem><para><link linkend="GUESTACCOUNT"><parameter>guest account</parameter></link></para></listitem>
825                 <listitem><para><link linkend="GUESTOK"><parameter>guest ok</parameter></link></para></listitem>
826                 <listitem><para><link linkend="GUESTONLY"><parameter>guest only</parameter></link></para></listitem>
827                 <listitem><para><link linkend="HIDEDOTFILES"><parameter>hide dot files</parameter></link></para></listitem>
828                 <listitem><para><link linkend="HIDEFILES"><parameter>hide files</parameter></link></para></listitem>
829                 <listitem><para><link linkend="HOSTSALLOW"><parameter>hosts allow</parameter></link></para></listitem>
830                 <listitem><para><link linkend="HOSTSDENY"><parameter>hosts deny</parameter></link></para></listitem>
831                 <listitem><para><link linkend="INCLUDE"><parameter>include</parameter></link></para></listitem>
832                 <listitem><para><link linkend="INHERITPERMISSIONS"><parameter>inherit permissions</parameter></link></para></listitem>
833                 <listitem><para><link linkend="INVALIDUSERS"><parameter>invalid users</parameter></link></para></listitem>
834                 <listitem><para><link linkend="LEVEL2OPLOCKS"><parameter>level2 oplocks</parameter></link></para></listitem>
835                 <listitem><para><link linkend="LOCKING"><parameter>locking</parameter></link></para></listitem>
836                 <listitem><para><link linkend="LPPAUSECOMMAND"><parameter>lppause command</parameter></link></para></listitem>
837                 <listitem><para><link linkend="LPQCOMMAND"><parameter>lpq command</parameter></link></para></listitem>
838                 <listitem><para><link linkend="LPRESUMECOMMAND"><parameter>lpresume command</parameter></link></para></listitem>
839                 <listitem><para><link linkend="LPRMCOMMAND"><parameter>lprm command</parameter></link></para></listitem>
840                 <listitem><para><link linkend="MAGICOUTPUT"><parameter>magic output</parameter></link></para></listitem>
841                 <listitem><para><link linkend="MAGICSCRIPT"><parameter>magic script</parameter></link></para></listitem>
842                 <listitem><para><link linkend="MANGLECASE"><parameter>mangle case</parameter></link></para></listitem>
843                 <listitem><para><link linkend="MANGLEDMAP"><parameter>mangled map</parameter></link></para></listitem>
844                 <listitem><para><link linkend="MANGLEDNAMES"><parameter>mangled names</parameter></link></para></listitem>
845                 <listitem><para><link linkend="MANGLINGCHAR"><parameter>mangling char</parameter></link></para></listitem>
846                 <listitem><para><link linkend="MAPARCHIVE"><parameter>map archive</parameter></link></para></listitem>
847                 <listitem><para><link linkend="MAPHIDDEN"><parameter>map hidden</parameter></link></para></listitem>
848                 <listitem><para><link linkend="MAPSYSTEM"><parameter>map system</parameter></link></para></listitem>
849                 <listitem><para><link linkend="MAXCONNECTIONS"><parameter>max connections</parameter></link></para></listitem>
850                 <listitem><para><link linkend="MAXPRINTJOBS"><parameter>max print jobs</parameter></link></para></listitem>
851                 <listitem><para><link linkend="MINPRINTSPACE"><parameter>min print space</parameter></link></para></listitem>
852                 <listitem><para><link linkend="MSDFSROOT"><parameter>msdfs root</parameter></link></para></listitem>
853                 <listitem><para><link linkend="NTACLSUPPORT"><parameter>nt acl support</parameter></link></para></listitem>
854                 <listitem><para><link linkend="ONLYGUEST"><parameter>only guest</parameter></link></para></listitem>
855                 <listitem><para><link linkend="ONLYUSER"><parameter>only user</parameter></link></para></listitem>
856                 <listitem><para><link linkend="OPLOCKCONTENTIONLIMIT"><parameter>oplock contention limit</parameter></link></para></listitem>
857                 <listitem><para><link linkend="OPLOCKS"><parameter>oplocks</parameter></link></para></listitem>
858                 <listitem><para><link linkend="PATH"><parameter>path</parameter></link></para></listitem>
859                 <listitem><para><link linkend="POSIXLOCKING"><parameter>posix locking</parameter></link></para></listitem>
860                 <listitem><para><link linkend="POSTEXEC"><parameter>postexec</parameter></link></para></listitem>
861                 <listitem><para><link linkend="POSTSCRIPT"><parameter>postscript</parameter></link></para></listitem>
862                 <listitem><para><link linkend="PREEXEC"><parameter>preexec</parameter></link></para></listitem>
863                 <listitem><para><link linkend="PREEXECCLOSE"><parameter>preexec close</parameter></link></para></listitem>
864                 <listitem><para><link linkend="PRESERVECASE"><parameter>preserve case</parameter></link></para></listitem>
865                 <listitem><para><link linkend="PRINTCOMMAND"><parameter>print command</parameter></link></para></listitem>
866                 <listitem><para><link linkend="PRINTOK"><parameter>print ok</parameter></link></para></listitem>
867                 <listitem><para><link linkend="PRINTABLE"><parameter>printable</parameter></link></para></listitem>
868                 <listitem><para><link linkend="PRINTER"><parameter>printer</parameter></link></para></listitem>
869                 <listitem><para><link linkend="PRINTERADMIN"><parameter>printer admin</parameter></link></para></listitem>
870                 <listitem><para><link linkend="PRINTERDRIVER"><parameter>printer driver</parameter></link></para></listitem>
871                 <listitem><para><link linkend="PRINTERDRIVERLOCATION"><parameter>printer driver location</parameter></link></para></listitem>
872                 <listitem><para><link linkend="PRINTERNAME"><parameter>printer name</parameter></link></para></listitem>
873                 <listitem><para><link linkend="PRINTING"><parameter>printing</parameter></link></para></listitem>
874                 <listitem><para><link linkend="PUBLIC"><parameter>public</parameter></link></para></listitem>
875                 <listitem><para><link linkend="QUEUEPAUSECOMMAND"><parameter>queuepause command</parameter></link></para></listitem>
876                 <listitem><para><link linkend="QUEUERESUMECOMMAND"><parameter>queueresume command</parameter></link></para></listitem>
877                 <listitem><para><link linkend="READLIST"><parameter>read list</parameter></link></para></listitem>
878                 <listitem><para><link linkend="READONLY"><parameter>read only</parameter></link></para></listitem>
879                 <listitem><para><link linkend="ROOTPOSTEXEC"><parameter>root postexec</parameter></link></para></listitem>
880                 <listitem><para><link linkend="ROOTPREEXEC"><parameter>root preexec</parameter></link></para></listitem>
881                 <listitem><para><link linkend="ROOTPREEXECCLOSE"><parameter>root preexec close</parameter></link></para></listitem>
882                 <listitem><para><link linkend="SECURITYMASK"><parameter>security mask</parameter></link></para></listitem>
883                 <listitem><para><link linkend="SETDIRECTORY"><parameter>set directory</parameter></link></para></listitem>
884                 <listitem><para><link linkend="SHORTPRESERVECASE"><parameter>short preserve case</parameter></link></para></listitem>
885                 <listitem><para><link linkend="STATUS"><parameter>status</parameter></link></para></listitem>
886                 <listitem><para><link linkend="STRICTALLOCATE"><parameter>strict allocate</parameter></link></para></listitem>
887                 <listitem><para><link linkend="STRICTLOCKING"><parameter>strict locking</parameter></link></para></listitem>
888                 <listitem><para><link linkend="STRICTSYNC"><parameter>strict sync</parameter></link></para></listitem>
889                 <listitem><para><link linkend="SYNCALWAYS"><parameter>sync always</parameter></link></para></listitem>
890                 <listitem><para><link linkend="USECLIENTDRIVER"><parameter>use client driver</parameter></link></para></listitem>
891                 <listitem><para><link linkend="USER"><parameter>user</parameter></link></para></listitem>
892                 <listitem><para><link linkend="USERNAME"><parameter>username</parameter></link></para></listitem>
893                 <listitem><para><link linkend="USERS"><parameter>users</parameter></link></para></listitem>
894                 <listitem><para><link linkend="VALIDUSERS"><parameter>valid users</parameter></link></para></listitem>
895                 <listitem><para><link linkend="VETOFILES"><parameter>veto files</parameter></link></para></listitem>
896                 <listitem><para><link linkend="VETOOPLOCKFILES"><parameter>veto oplock files</parameter></link></para></listitem>
897                 <listitem><para><link linkend="VFSOBJECT"><parameter>vfs object</parameter></link></para></listitem>
898                 <listitem><para><link linkend="VFSOPTIONS"><parameter>vfs options</parameter></link></para></listitem>
899                 <listitem><para><link linkend="VOLUME"><parameter>volume</parameter></link></para></listitem>
900                 <listitem><para><link linkend="WIDELINKS"><parameter>wide links</parameter></link></para></listitem>
901                 <listitem><para><link linkend="WRITABLE"><parameter>writable</parameter></link></para></listitem>
902                 <listitem><para><link linkend="WRITECACHESIZE"><parameter>write cache size</parameter></link></para></listitem>
903                 <listitem><para><link linkend="WRITELIST"><parameter>write list</parameter></link></para></listitem>
904                 <listitem><para><link linkend="WRITEOK"><parameter>write ok</parameter></link></para></listitem>
905                 <listitem><para><link linkend="WRITEABLE"><parameter>writeable</parameter></link></para></listitem>
906         </itemizedlist>
907
908 </refsect1>
909
910 <refsect1>
911         <title>EXPLANATION OF EACH PARAMETER</title>
912         
913         <variablelist>
914
915                 <varlistentry>
916                 <term><anchor id="ABORTSHUTDOWNSCRIPT">abort shutdown script (G)</term>
917                 <listitem><para><emphasis>This parameter only exists in the HEAD cvs branch</emphasis>
918                 This a full path name to a script called by
919                 <ulink url="smbd.8.html"><command>smbd(8)</command></ulink>  that
920                 should stop a shutdown procedure issued by the <link 
921                 linkend="SHUTDOWNSCRIPT"><parameter>shutdown script</parameter></link>.</para>
922                 
923                 <para>This command will be run as user.</para>
924
925                 <para>Default: <emphasis>None</emphasis>.</para>
926                 <para>Example: <command>abort shutdown script = /sbin/shutdown -c</command></para>
927                 </listitem>
928                 </varlistentry>
929
930
931                 <varlistentry>
932                 <term><anchor id="ADDPRINTERCOMMAND">add printer command (G)</term>
933                 <listitem><para>With the introduction of MS-RPC based printing
934                 support for Windows NT/2000 clients in Samba 2.2, The MS Add
935                 Printer Wizard (APW) icon is now also available in the 
936                 "Printers..." folder displayed a share listing.  The APW
937                 allows for printers to be add remotely to a Samba or Windows 
938                 NT/2000 print server.</para>
939                 
940                 <para>For a Samba host this means that the printer must be 
941                 physically added to the underlying printing system.  The <parameter>add 
942                 printer command</parameter> defines a script to be run which 
943                 will perform the necessary operations for adding the printer
944                 to the print system and to add the appropriate service definition 
945                 to the  <filename>smb.conf</filename> file in order that it can be 
946                 shared by <ulink url="smbd.8.html"><command>smbd(8)</command>
947                 </ulink>.</para>
948                 
949                 <para>The <parameter>add printer command</parameter> is
950                 automatically invoked with the following parameter (in 
951                 order:</para>
952                 
953                 <itemizedlist>
954                         <listitem><para><parameter>printer name</parameter></para></listitem>
955                         <listitem><para><parameter>share name</parameter></para></listitem>
956                         <listitem><para><parameter>port name</parameter></para></listitem>
957                         <listitem><para><parameter>driver name</parameter></para></listitem>
958                         <listitem><para><parameter>location</parameter></para></listitem>
959                         <listitem><para><parameter>Windows 9x driver location</parameter>
960                         </para></listitem>
961                 </itemizedlist>
962                 
963                 <para>All parameters are filled in from the PRINTER_INFO_2 structure sent 
964                 by the Windows NT/2000 client with one exception.  The "Windows 9x
965                 driver location" parameter is included for backwards compatibility
966                 only.  The remaining fields in the structure are generated from answers
967                 to the APW questions.</para>
968                 
969                 <para>Once the <parameter>add printer command</parameter> has 
970                 been executed, <command>smbd</command> will reparse the <filename>
971                 smb.conf</filename> to determine if the share defined by the APW
972                 exists.  If the sharename is still invalid, then <command>smbd
973                 </command> will return an ACCESS_DENIED error to the client.</para>
974                 
975                 <para>See also <link linkend="DELETEPRINTERCOMMAND"><parameter>
976                 delete printer command</parameter></link>, <link 
977                 linkend="printing"><parameter>printing</parameter></link>,
978                 <link linkend="SHOWADDPRINTERWIZARD"><parameter>show add
979                 printer wizard</parameter></link></para>
980                 
981                 <para>Default: <emphasis>none</emphasis></para>
982                 <para>Example: <command>addprinter command = /usr/bin/addprinter
983                 </command></para>
984                 </listitem>
985                 </varlistentry>
986
987
988
989                 <varlistentry>
990                 <term><anchor id="ADDSHARECOMMAND">add share command (G)</term>
991                 <listitem><para>Samba 2.2.0 introduced the ability to dynamically 
992                 add and delete shares via the Windows NT 4.0 Server Manager.  The 
993                 <parameter>add share command</parameter> is used to define an 
994                 external program or script which will add a new service definition 
995                 to <filename>smb.conf</filename>.  In order to successfully 
996                 execute the <parameter>add share command</parameter>, <command>smbd</command>
997                 requires that the administrator be connected using a root account (i.e. 
998                 uid == 0).
999                 </para>
1000                 
1001                 <para>
1002                 When executed, <command>smbd</command> will automatically invoke the 
1003                 <parameter>add share command</parameter> with four parameters.
1004                 </para>
1005                 
1006                 <itemizedlist>
1007                         <listitem><para><parameter>configFile</parameter> - the location 
1008                         of the global <filename>smb.conf</filename> file. 
1009                         </para></listitem>
1010                         
1011                         <listitem><para><parameter>shareName</parameter> - the name of the new 
1012                         share.
1013                         </para></listitem>
1014                         
1015                         <listitem><para><parameter>pathName</parameter> - path to an **existing**
1016                         directory on disk.
1017                         </para></listitem>
1018                         
1019                         <listitem><para><parameter>comment</parameter> - comment string to associate 
1020                         with the new share.
1021                         </para></listitem>
1022                 </itemizedlist>
1023                 
1024                 <para>
1025                 This parameter is only used for add file shares.  To add printer shares, 
1026                 see the <link linkend="ADDPRINTERCOMMAND"><parameter>add printer 
1027                 command</parameter></link>.
1028                 </para>
1029                 
1030                 <para>
1031                 See also <link linkend="CHANGESHARECOMMAND"><parameter>change share 
1032                 command</parameter></link>, <link linkend="DELETESHARECOMMAND"><parameter>delete share
1033                 command</parameter></link>.
1034                 </para>
1035                 
1036                 <para>Default: <emphasis>none</emphasis></para>
1037                 <para>Example: <command>add share command = /usr/local/bin/addshare</command></para>
1038                 </listitem>
1039                 </varlistentry>
1040
1041
1042
1043                 <varlistentry>
1044                 <term><anchor id="ADDMACHINESCRIPT">add machine script (G)</term>
1045                 <listitem><para>This is the full pathname to a script that will 
1046                 be run by <ulink url="smbd.8.html">smbd(8)</ulink>  when a machine is added
1047                 to it's domain using the administrator username and password method. </para>
1048
1049                 <para>This option is only required when using sam back-ends tied to the
1050                 Unix uid method of RID calculation such as smbpasswd.  This option is only
1051                 available in Samba 3.0.</para>
1052
1053                 <para>Default: <command>add machine script = &lt;empty string&gt;
1054                 </command></para>       
1055
1056                 <para>Example: <command>add machine script = /usr/sbin/adduser -n -g machines -c Machine -d /dev/null -s /bin/false %u
1057                 </command></para>
1058                 </listitem>
1059                 </varlistentry>
1060
1061
1062                 <varlistentry>
1063                 <term><anchor id="ADDUSERSCRIPT">add user script (G)</term>
1064                 <listitem><para>This is the full pathname to a script that will 
1065                 be run <emphasis>AS ROOT</emphasis> by <ulink url="smbd.8.html">smbd(8)
1066                 </ulink> under special circumstances described below.</para>
1067
1068                 <para>Normally, a Samba server requires that UNIX users are 
1069                 created for all users accessing files on this server. For sites 
1070                 that use Windows NT account databases as their primary user database 
1071                 creating these users and keeping the user list in sync with the 
1072                 Windows NT PDC is an onerous task. This option allows <ulink 
1073                 url="smbd.8.html">smbd</ulink> to create the required UNIX users 
1074                 <emphasis>ON DEMAND</emphasis> when a user accesses the Samba server.</para>
1075
1076                 <para>In order to use this option, <ulink url="smbd.8.html">smbd</ulink> 
1077                 must <emphasis>NOT</emphasis> be set to <parameter>security = share</parameter>
1078                 and <parameter>add user script</parameter>
1079                 must be set to a full pathname for a script that will create a UNIX 
1080                 user given one argument of <parameter>%u</parameter>, which expands into 
1081                 the UNIX user name to create.</para>
1082
1083                 <para>When the Windows user attempts to access the Samba server, 
1084                 at login (session setup in the SMB protocol) time, <ulink url="smbd.8.html">
1085                 smbd</ulink> contacts the <parameter>password server</parameter> and 
1086                 attempts to authenticate the given user with the given password. If the 
1087                 authentication succeeds then <command>smbd</command> 
1088                 attempts to find a UNIX user in the UNIX password database to map the 
1089                 Windows user into. If this lookup fails, and <parameter>add user script
1090                 </parameter> is set then <command>smbd</command> will
1091                 call the specified script <emphasis>AS ROOT</emphasis>, expanding 
1092                 any <parameter>%u</parameter> argument to be the user name to create.</para>
1093
1094                 <para>If this script successfully creates the user then <command>smbd
1095                 </command> will continue on as though the UNIX user
1096                 already existed. In this way, UNIX users are dynamically created to
1097                 match existing Windows NT accounts.</para>
1098
1099                 <para>See also <link linkend="SECURITY"><parameter>
1100                 security</parameter></link>, <link linkend="PASSWORDSERVER">
1101                 <parameter>password server</parameter></link>, 
1102                 <link linkend="DELETEUSERSCRIPT"><parameter>delete user 
1103                 script</parameter></link>.</para>
1104
1105                 <para>Default: <command>add user script = &lt;empty string&gt;
1106                 </command></para>       
1107
1108                 <para>Example: <command>add user script = /usr/local/samba/bin/add_user 
1109                 %u</command></para>
1110                 </listitem>
1111                 </varlistentry>
1112
1113
1114
1115                 <varlistentry>
1116                 <term><anchor id="ADMINUSERS">admin users (S)</term>
1117                 <listitem><para>This is a list of users who will be granted 
1118                 administrative privileges on the share. This means that they 
1119                 will do all file operations as the super-user (root).</para>
1120
1121                 <para>You should use this option very carefully, as any user in 
1122                 this list will be able to do anything they like on the share, 
1123                 irrespective of file permissions.</para>
1124
1125                 <para>Default: <emphasis>no admin users</emphasis></para>
1126
1127                 <para>Example: <command>admin users = jason</command></para>
1128                 </listitem>
1129                 </varlistentry>
1130                 
1131
1132
1133                 <varlistentry>
1134                 <term><anchor id="ALLOWHOSTS">allow hosts (S)</term>
1135                 <listitem><para>Synonym for <link linkend="HOSTSALLOW">
1136                 <parameter>hosts allow</parameter></link>.</para></listitem>
1137                 </varlistentry>
1138                 
1139
1140
1141                 <varlistentry>
1142                 <term><anchor id="ALLOWTRUSTEDDOMAINS">allow trusted domains (G)</term>
1143                 <listitem><para>This option only takes effect when the <link 
1144                 linkend="SECURITY"><parameter>security</parameter></link> option is set to 
1145                 <constant>server</constant> or <constant>domain</constant>.  
1146                 If it is set to no, then attempts to connect to a resource from 
1147                 a domain or workgroup other than the one which <ulink url="smbd.8.html">smbd</ulink> is running 
1148                 in will fail, even if that domain is trusted by the remote server 
1149                 doing the authentication.</para>
1150                 
1151                 <para>This is useful if you only want your Samba server to 
1152                 serve resources to users in the domain it is a member of. As 
1153                 an example, suppose that there are two domains DOMA and DOMB.  DOMB 
1154                 is trusted by DOMA, which contains the Samba server.  Under normal 
1155                 circumstances, a user with an account in DOMB can then access the 
1156                 resources of a UNIX account with the same account name on the 
1157                 Samba server even if they do not have an account in DOMA.  This 
1158                 can make implementing a security boundary difficult.</para>
1159
1160                 <para>Default: <command>allow trusted domains = yes</command></para>
1161
1162                 </listitem>
1163                 </varlistentry>
1164                 
1165
1166
1167                 <varlistentry>
1168                 <term><anchor id="ANNOUNCEAS">announce as (G)</term>
1169                 <listitem><para>This specifies what type of server 
1170                 <ulink url="nmbd.8.html"><command>nmbd</command></ulink> 
1171                 will announce itself as, to a network neighborhood browse 
1172                 list. By default this is set to Windows NT. The valid options 
1173                 are : "NT Server" (which can also be written as "NT"), 
1174                 "NT Workstation", "Win95" or "WfW" meaning Windows NT Server, 
1175                 Windows NT Workstation, Windows 95 and Windows for Workgroups 
1176                 respectively. Do not change this parameter unless you have a 
1177                 specific need to stop Samba appearing as an NT server as this 
1178                 may prevent Samba servers from participating as browser servers 
1179                 correctly.</para>
1180
1181                 <para>Default: <command>announce as = NT Server</command></para>
1182                 
1183                 <para>Example: <command>announce as = Win95</command></para>
1184                 </listitem>
1185                 </varlistentry>
1186                 
1187
1188
1189                 <varlistentry>
1190                 <term><anchor id="ANNOUNCEVERSION">announce version (G)</term>
1191                 <listitem><para>This specifies the major and minor version numbers 
1192                 that nmbd will use when announcing itself as a server. The default 
1193                 is 4.2.  Do not change this parameter unless you have a specific 
1194                 need to set a Samba server to be a downlevel server.</para>
1195
1196                 <para>Default: <command>announce version = 4.5</command></para>
1197
1198                 <para>Example: <command>announce version = 2.0</command></para>
1199                 </listitem>
1200                 </varlistentry>
1201
1202
1203
1204                 <varlistentry>
1205                 <term><anchor id="AUTOSERVICES">auto services (G)</term>
1206                 <listitem><para>This is a synonym for the <link linkend="PRELOAD">
1207                 <parameter>preload</parameter></link>.</para>
1208                 </listitem>
1209                 </varlistentry>
1210                 
1211
1212
1213                 <varlistentry>
1214                 <term><anchor id="AUTHMETHODS">auth methods (G)</term>
1215                 <listitem><para>This option allows the administrator to chose what
1216                 authentication methods <command>smbd</command> will use when authenticating
1217                 a user.  This option defaults to sensible values based on <link linkend="SECURITY"><parameter>
1218                 security</parameter></link>.
1219
1220                 Each entry in the list attempts to authenticate the user in turn, until
1221                 the user authenticates.  In practice only one method will ever actually 
1222                 be able to complete the authentication.
1223                 </para>
1224
1225                 <para>Default: <command>auth methods = &lt;empty string&gt;</command></para>
1226                 <para>Example: <command>auth methods = guest sam ntdomain</command></para>
1227                 </listitem>
1228                 </varlistentry>
1229
1230
1231                 <varlistentry>
1232                 <term><anchor id="AVAILABLE">available (S)</term>
1233                 <listitem><para>This parameter lets you "turn off" a service. If 
1234                 <parameter>available = no</parameter>, then <emphasis>ALL</emphasis> 
1235                 attempts to connect to the service will fail. Such failures are 
1236                 logged.</para>
1237
1238                 <para>Default: <command>available = yes</command></para>
1239                 
1240                 </listitem>
1241                 </varlistentry>
1242                 
1243
1244
1245                 <varlistentry>
1246                 <term><anchor id="BINDINTERFACESONLY">bind interfaces only (G)</term>
1247                 <listitem><para>This global parameter allows the Samba admin 
1248                 to limit what interfaces on a machine will serve SMB requests. If 
1249                 affects file service <ulink url="smbd.8.html">smbd(8)</ulink> and 
1250                 name service <ulink url="nmbd.8.html">nmbd(8)</ulink> in slightly 
1251                 different ways.</para>
1252
1253                 <para>For name service it causes <command>nmbd</command> to bind 
1254                 to ports 137 and 138 on the interfaces listed in the <link 
1255                 linkend="INTERFACES">interfaces</link> parameter. <command>nmbd
1256                 </command> also binds to the "all addresses" interface (0.0.0.0) 
1257                 on ports 137 and 138 for the purposes of reading broadcast messages. 
1258                 If this option is not set then <command>nmbd</command> will service 
1259                 name requests on all of these sockets. If <parameter>bind interfaces
1260                 only</parameter> is set then <command>nmbd</command> will check the 
1261                 source address of any packets coming in on the broadcast sockets 
1262                 and discard any that don't match the broadcast addresses of the 
1263                 interfaces in the <parameter>interfaces</parameter> parameter list. 
1264                 As unicast packets are received on the other sockets it allows 
1265                 <command>nmbd</command> to refuse to serve names to machines that 
1266                 send packets that arrive through any interfaces not listed in the
1267                 <parameter>interfaces</parameter> list.  IP Source address spoofing
1268                 does defeat this simple check, however so it must not be used
1269                 seriously as a security feature for <command>nmbd</command>.</para>
1270
1271                 <para>For file service it causes <ulink url="smbd.8.html">smbd(8)</ulink>
1272                 to bind only to the interface list given in the <link linkend="INTERFACES">
1273                 interfaces</link> parameter. This restricts the networks that 
1274                 <command>smbd</command> will serve to packets coming in those 
1275                 interfaces.  Note that you should not use this parameter for machines 
1276                 that are serving PPP or other intermittent or non-broadcast network 
1277                 interfaces as it will not cope with non-permanent interfaces.</para>
1278
1279                 <para>If <parameter>bind interfaces only</parameter> is set then 
1280                 unless the network address <emphasis>127.0.0.1</emphasis> is added 
1281                 to the <parameter>interfaces</parameter> parameter list <ulink
1282                 url="smbpasswd.8.html"><command>smbpasswd(8)</command></ulink> 
1283                 and <ulink url="swat.8.html"><command>swat(8)</command></ulink> may 
1284                 not work as expected due to the reasons covered below.</para>
1285
1286                 <para>To change a users SMB password, the <command>smbpasswd</command>
1287                 by default connects to the <emphasis>localhost - 127.0.0.1</emphasis> 
1288                 address as an SMB client to issue the password change request. If 
1289                 <parameter>bind interfaces only</parameter> is set then unless the 
1290                 network address <emphasis>127.0.0.1</emphasis> is added to the
1291                 <parameter>interfaces</parameter> parameter list then <command>
1292                 smbpasswd</command> will fail to connect in it's default mode. 
1293                 <command>smbpasswd</command> can be forced to use the primary IP interface 
1294                 of the local host by using its <ulink url="smbpasswd.8.html#minusr">
1295                 <parameter>-r <replaceable>remote machine</replaceable></parameter>
1296                 </ulink> parameter, with <replaceable>remote machine</replaceable> set 
1297                 to the IP name of the primary interface of the local host.</para>
1298
1299                 <para>The <command>swat</command> status page tries to connect with
1300                 <command>smbd</command> and <command>nmbd</command> at the address 
1301                 <emphasis>127.0.0.1</emphasis> to determine if they are running.  
1302                 Not adding <emphasis>127.0.0.1</emphasis>  will cause <command>
1303                 smbd</command> and <command>nmbd</command> to always show
1304                 "not running" even if they really are.  This can prevent <command>
1305                 swat</command> from starting/stopping/restarting <command>smbd</command>
1306                 and <command>nmbd</command>.</para>
1307
1308                 <para>Default: <command>bind interfaces only = no</command></para>
1309                 
1310                 </listitem>
1311                 </varlistentry>
1312
1313
1314
1315                 <varlistentry>
1316                 <term><anchor id="BLOCKINGLOCKS">blocking locks (S)</term>
1317                 <listitem><para>This parameter controls the behavior of <ulink 
1318                 url="smbd.8.html">smbd(8)</ulink> when given a request by a client 
1319                 to obtain a byte range lock on a region of an open file, and the 
1320                 request has a time limit associated with it.</para>
1321                 
1322                 <para>If this parameter is set and the lock range requested 
1323                 cannot be immediately satisfied, Samba 2.2 will internally 
1324                 queue the lock request, and periodically attempt to obtain 
1325                 the lock until the timeout period expires.</para>
1326
1327                 <para>If this parameter is set to <constant>false</constant>, then 
1328                 Samba 2.2 will behave as previous versions of Samba would and 
1329                 will fail the lock request immediately if the lock range 
1330                 cannot be obtained.</para>
1331
1332                 <para>Default: <command>blocking locks = yes</command></para>
1333
1334                 </listitem>
1335                 </varlistentry>
1336                 
1337
1338
1339                 <varlistentry>
1340                 <term><anchor id="BROWSABLE">browsable (S)</term>
1341                 <listitem><para>See the <link linkend="BROWSEABLE"><parameter>
1342                 browseable</parameter></link>.</para></listitem>
1343                 </varlistentry>
1344                 
1345
1346
1347                 <varlistentry>
1348                 <term><anchor id="BROWSELIST">browse list (G)</term>
1349                 <listitem><para>This controls whether <ulink url="smbd.8.html">
1350                 <command>smbd(8)</command></ulink> will serve a browse list to 
1351                 a client doing a <command>NetServerEnum</command> call. Normally 
1352                 set to <constant>true</constant>. You should never need to change 
1353                 this.</para>
1354                 
1355                 <para>Default: <command>browse list = yes</command></para></listitem>
1356                 </varlistentry>
1357                 
1358
1359
1360                 <varlistentry>
1361                 <term><anchor id="BROWSEABLE">browseable (S)</term>
1362                 <listitem><para>This controls whether this share is seen in 
1363                 the list of available shares in a net view and in the browse list.</para>
1364
1365                 <para>Default: <command>browseable = yes</command></para>
1366                 </listitem>
1367                 </varlistentry>
1368                 
1369
1370
1371                 <varlistentry>
1372                 <term><anchor id="CASESENSITIVE">case sensitive (S)</term>
1373                 <listitem><para>See the discussion in the section <link 
1374                 linkend="NAMEMANGLINGSECT">NAME MANGLING</link>.</para>
1375                 
1376                 <para>Default: <command>case sensitive = no</command></para>
1377                 </listitem>
1378                 </varlistentry>
1379
1380
1381
1382                 <varlistentry>
1383                 <term><anchor id="CASESIGNAMES">casesignames (S)</term>
1384                 <listitem><para>Synonym for <link linkend="CASESENSITIVE">case 
1385                 sensitive</link>.</para></listitem>
1386                 </varlistentry>
1387                 
1388                 
1389                 
1390                 <varlistentry>
1391                 <term><anchor id="CHANGENOTIFYTIMEOUT">change notify timeout (G)</term>
1392                 <listitem><para>This SMB allows a client to tell a server to 
1393                 "watch" a particular directory for any changes and only reply to
1394                 the SMB request when a change has occurred. Such constant scanning of
1395                 a directory is expensive under UNIX, hence an <ulink url="smbd.8.html">
1396                 <command>smbd(8)</command></ulink> daemon only performs such a scan 
1397                 on each requested directory once every <parameter>change notify 
1398                 timeout</parameter> seconds.</para>
1399
1400                 <para>Default: <command>change notify timeout = 60</command></para>
1401                 <para>Example: <command>change notify timeout = 300</command></para>
1402
1403                 <para>Would change the scan time to every 5 minutes.</para></listitem>
1404                 </varlistentry>
1405                 
1406
1407
1408                 <varlistentry>
1409                 <term><anchor id="CHANGESHARECOMMAND">change share command (G)</term>
1410                 <listitem><para>Samba 2.2.0 introduced the ability to dynamically 
1411                 add and delete shares via the Windows NT 4.0 Server Manager.  The 
1412                 <parameter>change share command</parameter> is used to define an 
1413                 external program or script which will modify an existing service definition 
1414                 in <filename>smb.conf</filename>.  In order to successfully 
1415                 execute the <parameter>change share command</parameter>, <command>smbd</command>
1416                 requires that the administrator be connected using a root account (i.e. 
1417                 uid == 0).
1418                 </para>
1419                 
1420                 <para>
1421                 When executed, <command>smbd</command> will automatically invoke the 
1422                 <parameter>change share command</parameter> with four parameters.
1423                 </para>
1424                 
1425                 <itemizedlist>
1426                         <listitem><para><parameter>configFile</parameter> - the location 
1427                         of the global <filename>smb.conf</filename> file. 
1428                         </para></listitem>
1429                         
1430                         <listitem><para><parameter>shareName</parameter> - the name of the new 
1431                         share.
1432                         </para></listitem>
1433                         
1434                         <listitem><para><parameter>pathName</parameter> - path to an **existing**
1435                         directory on disk.
1436                         </para></listitem>
1437                         
1438                         <listitem><para><parameter>comment</parameter> - comment string to associate 
1439                         with the new share.
1440                         </para></listitem>
1441                 </itemizedlist>
1442                 
1443                 <para>
1444                 This parameter is only used modify existing file shares definitions.  To modify 
1445                 printer shares, use the "Printers..." folder as seen when browsing the Samba host.
1446                 </para>
1447                 
1448                 <para>
1449                 See also <link linkend="ADDSHARECOMMAND"><parameter>add share
1450                 command</parameter></link>, <link linkend="DELETESHARECOMMAND"><parameter>delete 
1451                 share command</parameter></link>.
1452                 </para>
1453                 
1454                 <para>Default: <emphasis>none</emphasis></para>
1455                 <para>Example: <command>change share command = /usr/local/bin/addshare</command></para>
1456                 </listitem>
1457                 </varlistentry>
1458
1459
1460                 
1461
1462                 
1463                 <varlistentry>
1464                 <term><anchor id="COMMENT">comment (S)</term>
1465                 <listitem><para>This is a text field that is seen next to a share 
1466                 when a client does a queries the server, either via the network 
1467                 neighborhood or via <command>net view</command> to list what shares 
1468                 are available.</para>
1469
1470                 <para>If you want to set the string that is displayed next to the 
1471                 machine name then see the <link linkend="SERVERSTRING"><parameter>
1472                 server string</parameter></link> parameter.</para>
1473
1474                 <para>Default: <emphasis>No comment string</emphasis></para>
1475                 <para>Example: <command>comment = Fred's Files</command></para></listitem>
1476                 </varlistentry>
1477                 
1478                 
1479                 
1480                 <varlistentry>
1481                 <term><anchor id="CONFIGFILE">config file (G)</term>
1482                 <listitem><para>This allows you to override the config file 
1483                 to use, instead of the default (usually <filename>smb.conf</filename>). 
1484                 There is a chicken and egg problem here as this option is set 
1485                 in the config file!</para>
1486
1487                 <para>For this reason, if the name of the config file has changed 
1488                 when the parameters are loaded then it will reload them from 
1489                 the new config file.</para>
1490
1491                 <para>This option takes the usual substitutions, which can 
1492                 be very useful.</para>
1493
1494                 <para>If the config file doesn't exist then it won't be loaded 
1495                 (allowing you to special case the config files of just a few 
1496                 clients).</para>
1497
1498                 <para>Example: <command>config file = /usr/local/samba/lib/smb.conf.%m
1499                 </command></para></listitem>
1500                 </varlistentry>
1501                 
1502                 
1503                 
1504                 <varlistentry>
1505                 <term><anchor id="COPY">copy (S)</term>
1506                 <listitem><para>This parameter allows you to "clone" service 
1507                 entries. The specified service is simply duplicated under the 
1508                 current service's name. Any parameters specified in the current 
1509                 section will override those in the section being copied.</para>
1510
1511                 <para>This feature lets you set up a 'template' service and 
1512                 create similar services easily. Note that the service being 
1513                 copied must occur earlier in the configuration file than the 
1514                 service doing the copying.</para>
1515
1516                 <para>Default: <emphasis>no value</emphasis></para>
1517                 <para>Example: <command>copy = otherservice</command></para></listitem>
1518                 </varlistentry>
1519                 
1520                 
1521                 
1522                 <varlistentry>
1523                 <term><anchor id="CREATEMASK">create mask (S)</term>
1524                 <listitem><para>A synonym for this parameter is 
1525                 <link linkend="CREATEMODE"><parameter>create mode</parameter>
1526                 </link>.</para>
1527
1528                 <para>When a file is created, the necessary permissions are 
1529                 calculated according to the mapping from DOS modes to UNIX 
1530                 permissions, and the resulting UNIX mode is then bit-wise 'AND'ed 
1531                 with this parameter. This parameter may be thought of as a bit-wise 
1532                 MASK for the UNIX modes of a file. Any bit <emphasis>not</emphasis> 
1533                 set here will be removed from the modes set on a file when it is 
1534                 created.</para>
1535
1536                 <para>The default value of this parameter removes the 
1537                 'group' and 'other' write and execute bits from the UNIX modes.</para>
1538
1539                 <para>Following this Samba will bit-wise 'OR' the UNIX mode created 
1540                 from this parameter with the value of the <link
1541                 linkend="FORCECREATEMODE"><parameter>force create mode</parameter></link>
1542                 parameter which is set to 000 by default.</para>
1543
1544                 <para>This parameter does not affect directory modes. See the 
1545                 parameter <link linkend="DIRECTORYMODE"><parameter>directory mode
1546                 </parameter></link> for details.</para>
1547
1548                 <para>See also the <link linkend="FORCECREATEMODE"><parameter>force 
1549                 create mode</parameter></link> parameter for forcing particular mode 
1550                 bits to be set on created files. See also the <link linkend="DIRECTORYMODE">
1551                 <parameter>directory mode</parameter></link> parameter for masking 
1552                 mode bits on created directories.  See also the <link linkend="INHERITPERMISSIONS">
1553                 <parameter>inherit permissions</parameter></link> parameter.</para>
1554
1555                 <para>Note that this parameter does not apply to permissions
1556                 set by Windows NT/2000 ACL editors. If the administrator wishes to enforce
1557                 a mask on access control lists also, they need to set the <link 
1558                 linkend="SECURITYMASK"><parameter>security mask</parameter></link>.</para>
1559
1560                 <para>Default: <command>create mask = 0744</command></para>
1561                 <para>Example: <command>create mask = 0775</command></para></listitem>
1562                 </varlistentry>
1563                 
1564                 
1565                 
1566                 <varlistentry>
1567                 <term><anchor id="CREATEMODE">create mode (S)</term>
1568                 <listitem><para>This is a synonym for <link linkend="CREATEMASK"><parameter>
1569                 create mask</parameter></link>.</para></listitem>
1570                 </varlistentry>
1571                 
1572                 
1573                 
1574                 <varlistentry>
1575                 <term><anchor id="DEADTIME">deadtime (G)</term>
1576                 <listitem><para>The value of the parameter (a decimal integer) 
1577                 represents the number of minutes of inactivity before a connection 
1578                 is considered dead, and it is disconnected. The deadtime only takes 
1579                 effect if the number of open files is zero.</para>
1580                 
1581                 <para>This is useful to stop a server's resources being 
1582                 exhausted by a large number of inactive connections.</para>
1583
1584                 <para>Most clients have an auto-reconnect feature when a 
1585                 connection is broken so in most cases this parameter should be 
1586                 transparent to users.</para>
1587
1588                 <para>Using this parameter with a timeout of a few minutes 
1589                 is recommended for most systems.</para>
1590
1591                 <para>A deadtime of zero indicates that no auto-disconnection 
1592                 should be performed.</para>
1593
1594                 <para>Default: <command>deadtime = 0</command></para>
1595                 <para>Example: <command>deadtime = 15</command></para></listitem>
1596                 </varlistentry>
1597
1598
1599
1600                 <varlistentry>
1601                 <term><anchor id="DEBUGHIRESTIMESTAMP">debug hires timestamp (G)</term>
1602                 <listitem><para>Sometimes the timestamps in the log messages 
1603                 are needed with a resolution of higher that seconds, this 
1604                 boolean parameter adds microsecond resolution to the timestamp 
1605                 message header when turned on.</para>
1606
1607                 <para>Note that the parameter <link linkend="DEBUGTIMESTAMP"><parameter>
1608                 debug timestamp</parameter></link> must be on for this to have an 
1609                 effect.</para>
1610
1611                 <para>Default: <command>debug hires timestamp = no</command></para>
1612                 </listitem>
1613                 </varlistentry>
1614                 
1615
1616
1617                 <varlistentry>
1618                 <term><anchor id="DEBUGPID">debug pid (G)</term>
1619                 <listitem><para>When using only one log file for more then one 
1620                 forked <ulink url="smbd.8.html">smbd</ulink>-process there may be hard to follow which process 
1621                 outputs which message. This boolean parameter is adds the process-id 
1622                 to the timestamp message headers in the logfile when turned on.</para>
1623
1624                 <para>Note that the parameter <link linkend="DEBUGTIMESTAMP"><parameter>
1625                 debug timestamp</parameter></link> must be on for this to have an 
1626                 effect.</para>
1627
1628                 <para>Default: <command>debug pid = no</command></para></listitem>
1629                 </varlistentry>
1630
1631
1632                 <varlistentry>
1633                 <term><anchor id="DEBUGTIMESTAMP">debug timestamp (G)</term>
1634                 <listitem><para>Samba 2.2 debug log messages are timestamped 
1635                 by default. If you are running at a high <link linkend="DEBUGLEVEL">
1636                 <parameter>debug level</parameter></link> these timestamps
1637                 can be distracting. This boolean parameter allows timestamping 
1638                 to be turned off.</para>
1639
1640                 <para>Default: <command>debug timestamp = yes</command></para></listitem>
1641                 </varlistentry>
1642
1643
1644
1645                 <varlistentry>
1646                 <term><anchor id="DEBUGUID">debug uid (G)</term>
1647                 <listitem><para>Samba is sometimes run as root and sometime 
1648                 run as the connected user, this boolean parameter inserts the 
1649                 current euid, egid, uid and gid to the timestamp message headers 
1650                 in the log file if turned on.</para>
1651                 
1652                 <para>Note that the parameter <link linkend="DEBUGTIMESTAMP"><parameter>
1653                 debug timestamp</parameter></link> must be on for this to have an 
1654                 effect.</para>
1655
1656                 <para>Default: <command>debug uid = no</command></para></listitem>
1657                 </varlistentry>
1658
1659
1660
1661                 <varlistentry>
1662                 <term><anchor id="DEBUGLEVEL">debuglevel (G)</term>
1663                 <listitem><para>Synonym for <link linkend="LOGLEVEL"><parameter>
1664                 log level</parameter></link>.</para>
1665                 </listitem>
1666                 </varlistentry>
1667
1668
1669
1670                 <varlistentry>
1671                 <term><anchor id="DEFAULT">default (G)</term>
1672                 <listitem><para>A synonym for <link linkend="DEFAULTSERVICE"><parameter>
1673                 default service</parameter></link>.</para></listitem>
1674                 </varlistentry>
1675                 
1676                 
1677                 
1678                 <varlistentry>
1679                 <term><anchor id="DEFAULTCASE">default case (S)</term>
1680                 <listitem><para>See the section on <link linkend="NAMEMANGLINGSECT">
1681                 NAME MANGLING</link>. Also note the <link linkend="SHORTPRESERVECASE">
1682                 <parameter>short preserve case</parameter></link> parameter.</para>
1683
1684                 <para>Default: <command>default case = lower</command></para>
1685                 </listitem>
1686                 </varlistentry>
1687
1688
1689
1690                 <varlistentry>
1691                 <term><anchor id="DEFAULTDEVMODE">default devmode (S)</term>
1692                 <listitem><para>This parameter is only applicable to <link
1693                 linkend="PRINTOK">printable</link> services.  When smbd is serving
1694                 Printer Drivers to Windows NT/2k/XP clients, each printer on the Samba
1695                 server has a Device Mode which defines things such as paper size and
1696                 orientation and duplex settings.  The device mode can only correctly be
1697                 generated by the printer driver itself (which can only be executed on a
1698                 Win32 platform).  Because smbd is unable to execute the driver code
1699                 to generate the device mode, the default behavior is to set this field
1700                 to NULL.
1701                 </para>
1702
1703                 <para>Most problems with serving printer drivers to Windows NT/2k/XP clients
1704                 can be traced to a problem with the generated device mode.  Certain drivers
1705                 will do things such as crashing the client's Explorer.exe with a NULL devmode.
1706                 However, other printer drivers can cause the client's spooler service
1707                 (spoolsv.exe) to die if the devmode was not created by the driver itself
1708                 (i.e. smbd generates a default devmode).
1709                 </para>
1710
1711                 <para>This parameter should be used with care and tested with the printer
1712                 driver in question.  It is better to leave the device mode to NULL
1713                 and let the Windows client set the correct values.  Because drivers do not
1714                 do this all the time, setting <command>default devmode = yes</command>
1715                 will instruct smbd to generate a default one.
1716                 </para>
1717
1718                 <para>For more information on Windows NT/2k printing and Device Modes,
1719                 see the <ulink url="http://msdn.microsoft.com/">MSDN documentation</ulink>.
1720                 </para>
1721
1722                 <para>Default: <command>default devmode = no</command></para>
1723                 </listitem>
1724                 </varlistentry>
1725
1726
1727
1728                 <varlistentry>
1729                 <term><anchor id="DEFAULTSERVICE">default service (G)</term>
1730                 <listitem><para>This parameter specifies the name of a service
1731                 which will be connected to if the service actually requested cannot
1732                 be found. Note that the square brackets are <emphasis>NOT</emphasis>
1733                 given in the parameter value (see example below).</para>
1734
1735                 <para>There is no default value for this parameter. If this 
1736                 parameter is not given, attempting to connect to a nonexistent 
1737                 service results in an error.</para>
1738
1739                 <para>Typically the default service would be a <link linkend="GUESTOK">
1740                 <parameter>guest ok</parameter></link>, <link linkend="READONLY">
1741                 <parameter>read-only</parameter></link> service.</para>
1742
1743                 <para>Also note that the apparent service name will be changed 
1744                 to equal that of the requested service, this is very useful as it 
1745                 allows you to use macros like <parameter>%S</parameter> to make 
1746                 a wildcard service.</para>
1747
1748                 <para>Note also that any "_" characters in the name of the service 
1749                 used in the default service will get mapped to a "/". This allows for
1750                 interesting things.</para>
1751
1752
1753                 <para>Example:</para>
1754                 
1755                 <para><programlisting>
1756 [global]
1757         default service = pub
1758         
1759 [pub]
1760         path = /%S
1761                 </programlisting></para>
1762                 </listitem>
1763                 </varlistentry>
1764                 
1765
1766
1767                 <varlistentry>
1768                 <term><anchor id="DELETEPRINTERCOMMAND">delete printer command (G)</term>
1769                 <listitem><para>With the introduction of MS-RPC based printer
1770                 support for Windows NT/2000 clients in Samba 2.2, it is now 
1771                 possible to delete printer at run time by issuing the 
1772                 DeletePrinter() RPC call.</para>
1773                 
1774                 <para>For a Samba host this means that the printer must be 
1775                 physically deleted from underlying printing system.  The <parameter>
1776                 deleteprinter command</parameter> defines a script to be run which 
1777                 will perform the necessary operations for removing the printer
1778                 from the print system and from <filename>smb.conf</filename>.
1779                 </para>
1780                 
1781                 <para>The <parameter>delete printer command</parameter> is 
1782                 automatically called with only one parameter: <parameter>
1783                 "printer name"</parameter>.</para>
1784                 
1785                                 
1786                 <para>Once the <parameter>delete printer command</parameter> has 
1787                 been executed, <command>smbd</command> will reparse the <filename>
1788                 smb.conf</filename> to associated printer no longer exists.  
1789                 If the sharename is still valid, then <command>smbd
1790                 </command> will return an ACCESS_DENIED error to the client.</para>
1791                 
1792                 <para>See also <link linkend="ADDPRINTERCOMMAND"><parameter>
1793                 add printer command</parameter></link>, <link 
1794                 linkend="printing"><parameter>printing</parameter></link>,
1795                 <link linkend="SHOWADDPRINTERWIZARD"><parameter>show add
1796                 printer wizard</parameter></link></para>
1797                 
1798                 <para>Default: <emphasis>none</emphasis></para>
1799                 <para>Example: <command>deleteprinter command = /usr/bin/removeprinter
1800                 </command></para>
1801                 </listitem>
1802                 </varlistentry>
1803
1804
1805
1806
1807
1808
1809                 <varlistentry>
1810                 <term><anchor id="DELETEREADONLY">delete readonly (S)</term>
1811                 <listitem><para>This parameter allows readonly files to be deleted.  
1812                 This is not normal DOS semantics, but is allowed by UNIX.</para>
1813                 
1814                 <para>This option may be useful for running applications such 
1815                 as rcs, where UNIX file ownership prevents changing file 
1816                 permissions, and DOS semantics prevent deletion of a read only file.</para>
1817
1818                 <para>Default: <command>delete readonly = no</command></para></listitem>
1819                 </varlistentry>
1820
1821
1822
1823                 <varlistentry>
1824                 <term><anchor id="DELETESHARECOMMAND">delete share command (G)</term>
1825                 <listitem><para>Samba 2.2.0 introduced the ability to dynamically 
1826                 add and delete shares via the Windows NT 4.0 Server Manager.  The 
1827                 <parameter>delete share command</parameter> is used to define an 
1828                 external program or script which will remove an existing service 
1829                 definition from <filename>smb.conf</filename>.  In order to successfully 
1830                 execute the <parameter>delete share command</parameter>, <command>smbd</command>
1831                 requires that the administrator be connected using a root account (i.e. 
1832                 uid == 0).
1833                 </para>
1834                 
1835                 <para>
1836                 When executed, <command>smbd</command> will automatically invoke the 
1837                 <parameter>delete share command</parameter> with two parameters.
1838                 </para>
1839                 
1840                 <itemizedlist>
1841                         <listitem><para><parameter>configFile</parameter> - the location 
1842                         of the global <filename>smb.conf</filename> file. 
1843                         </para></listitem>
1844                         
1845                         <listitem><para><parameter>shareName</parameter> - the name of 
1846                         the existing service.
1847                         </para></listitem>
1848                 </itemizedlist>
1849                 
1850                 <para>
1851                 This parameter is only used to remove file shares.  To delete printer shares, 
1852                 see the <link linkend="DELETEPRINTERCOMMAND"><parameter>delete printer 
1853                 command</parameter></link>.
1854                 </para>
1855                 
1856                 <para>
1857                 See also <link linkend="ADDSHARECOMMAND"><parameter>add share
1858                 command</parameter></link>, <link linkend="CHANGESHARECOMMAND"><parameter>change 
1859                 share command</parameter></link>.
1860                 </para>
1861                 
1862                 <para>Default: <emphasis>none</emphasis></para>
1863                 <para>Example: <command>delete share command = /usr/local/bin/delshare</command></para>
1864                 
1865                 </listitem>
1866                 </varlistentry>
1867
1868
1869                 
1870                 
1871                 <varlistentry>
1872                 <term><anchor id="DELETEUSERSCRIPT">delete user script (G)</term>
1873                 <listitem><para>This is the full pathname to a script that will 
1874                 be run <emphasis>AS ROOT</emphasis> by <ulink url="smbd.8.html">
1875                 <command>smbd(8)</command></ulink> under special circumstances 
1876                 described below.</para>
1877
1878                 <para>Normally, a Samba server requires that UNIX users are 
1879                 created for all users accessing files on this server. For sites 
1880                 that use Windows NT account databases as their primary user database 
1881                 creating these users and keeping the user list in sync with the 
1882                 Windows NT PDC is an onerous task. This option allows <command>
1883                 smbd</command> to delete the required UNIX users <emphasis>ON 
1884                 DEMAND</emphasis> when a user accesses the Samba server and the 
1885                 Windows NT user no longer exists.</para>
1886                 
1887                 <para>In order to use this option, <command>smbd</command> must be 
1888                 set to <parameter>security = domain</parameter> or <parameter>security =
1889                 user</parameter> and <parameter>delete user script</parameter> 
1890                 must be set to a full pathname for a script 
1891                 that will delete a UNIX user given one argument of <parameter>%u</parameter>, 
1892                 which expands into the UNIX user name to delete.</para>
1893
1894                 <para>When the Windows user attempts to access the Samba server, 
1895                 at <emphasis>login</emphasis> (session setup in the SMB protocol) 
1896                 time, <command>smbd</command> contacts the <link linkend="PASSWORDSERVER">
1897                 <parameter>password server</parameter></link> and attempts to authenticate 
1898                 the given user with the given password. If the authentication fails 
1899                 with the specific Domain error code meaning that the user no longer 
1900                 exists then <command>smbd</command> attempts to find a UNIX user in 
1901                 the UNIX password database that matches the Windows user account. If 
1902                 this lookup succeeds, and <parameter>delete user script</parameter> is 
1903                 set then <command>smbd</command> will all the specified script 
1904                 <emphasis>AS ROOT</emphasis>, expanding any <parameter>%u</parameter> 
1905                 argument to be the user name to delete.</para>
1906
1907                 <para>This script should delete the given UNIX username. In this way, 
1908                 UNIX users are dynamically deleted to match existing Windows NT 
1909                 accounts.</para>
1910
1911                 <para>See also <link linkend="SECURITYEQUALSDOMAIN">security = domain</link>,
1912                 <link linkend="PASSWORDSERVER"><parameter>password server</parameter>
1913                 </link>, <link linkend="ADDUSERSCRIPT"><parameter>add user script</parameter>
1914                 </link>.</para>
1915
1916                 <para>Default: <command>delete user script = &lt;empty string&gt;
1917                 </command></para>
1918                 <para>Example: <command>delete user script = /usr/local/samba/bin/del_user 
1919                 %u</command></para></listitem>
1920                 </varlistentry>
1921
1922
1923
1924
1925
1926                 <varlistentry>
1927                 <term><anchor id="DELETEVETOFILES">delete veto files (S)</term>
1928                 <listitem><para>This option is used when Samba is attempting to 
1929                 delete a directory that contains one or more vetoed directories 
1930                 (see the <link linkend="VETOFILES"><parameter>veto files</parameter></link>
1931                 option).  If this option is set to <constant>false</constant> (the default) then if a vetoed 
1932                 directory contains any non-vetoed files or directories then the 
1933                 directory delete will fail. This is usually what you want.</para>
1934
1935                 <para>If this option is set to <constant>true</constant>, then Samba 
1936                 will attempt to recursively delete any files and directories within 
1937                 the vetoed directory. This can be useful for integration with file 
1938                 serving systems such as NetAtalk which create meta-files within 
1939                 directories you might normally veto DOS/Windows users from seeing 
1940                 (e.g. <filename>.AppleDouble</filename>)</para>
1941
1942                 <para>Setting <command>delete veto files = yes</command> allows these 
1943                 directories to be  transparently deleted when the parent directory 
1944                 is deleted (so long as the user has permissions to do so).</para>
1945
1946                 <para>See also the <link linkend="VETOFILES"><parameter>veto 
1947                 files</parameter></link> parameter.</para>
1948
1949                 <para>Default: <command>delete veto files = no</command></para></listitem>
1950                 </varlistentry>
1951
1952
1953
1954
1955                 <varlistentry>
1956                 <term><anchor id="DENYHOSTS">deny hosts (S)</term>
1957                 <listitem><para>Synonym for <link linkend="HOSTSDENY"><parameter>hosts 
1958                 deny</parameter></link>.</para></listitem>
1959                 </varlistentry>
1960
1961                 
1962                 
1963                 
1964                 <varlistentry>
1965                 <term><anchor id="DFREECOMMAND">dfree command (G)</term>
1966                 <listitem><para>The <parameter>dfree command</parameter> setting should 
1967                 only be used on systems where a problem occurs with the internal 
1968                 disk space calculations. This has been known to happen with Ultrix, 
1969                 but may occur with other operating systems. The symptom that was 
1970                 seen was an error of "Abort Retry Ignore" at the end of each 
1971                 directory listing.</para>
1972                 
1973                 <para>This setting allows the replacement of the internal routines to
1974                 calculate the total disk space and amount available with an external
1975                 routine. The example below gives a possible script that might fulfill
1976                 this function.</para>
1977
1978                 <para>The external program will be passed a single parameter indicating 
1979                 a directory in the filesystem being queried. This will typically consist
1980                 of the string <filename>./</filename>. The script should return two 
1981                 integers in ASCII. The first should be the total disk space in blocks, 
1982                 and the second should be the number of available blocks. An optional 
1983                 third return value can give the block size in bytes. The default 
1984                 blocksize is 1024 bytes.</para>
1985
1986                 <para>Note: Your script should <emphasis>NOT</emphasis> be setuid or 
1987                 setgid and should be owned by (and writeable only by) root!</para>
1988
1989                 <para>Default: <emphasis>By default internal routines for 
1990                 determining the disk capacity and remaining space will be used.
1991                 </emphasis></para>
1992
1993                 <para>Example: <command>dfree command = /usr/local/samba/bin/dfree
1994                 </command></para>
1995
1996                 <para>Where the script dfree (which must be made executable) could be:</para>
1997
1998                 <para><programlisting> 
1999                 #!/bin/sh
2000                 df $1 | tail -1 | awk '{print $2" "$4}'
2001                 </programlisting></para>
2002
2003                 <para>or perhaps (on Sys V based systems):</para>
2004
2005                 <para><programlisting> 
2006                 #!/bin/sh
2007                 /usr/bin/df -k $1 | tail -1 | awk '{print $3" "$5}'
2008                 </programlisting></para>
2009                 
2010                 <para>Note that you may have to replace the command names 
2011                 with full path names on some systems.</para>
2012                 </listitem>
2013                 </varlistentry>
2014                 
2015                 
2016                 
2017                 
2018                 <varlistentry>
2019                 <term><anchor id="DIRECTORY">directory (S)</term>
2020                 <listitem><para>Synonym for <link linkend="PATH"><parameter>path
2021                 </parameter></link>.</para></listitem>
2022                 </varlistentry>
2023                 
2024                 
2025                 
2026                 <varlistentry>
2027                 <term><anchor id="DIRECTORYMASK">directory mask (S)</term>
2028                 <listitem><para>This parameter is the octal modes which are 
2029                 used when converting DOS modes to UNIX modes when creating UNIX 
2030                 directories.</para>
2031
2032                 <para>When a directory is created, the necessary permissions are 
2033                 calculated according to the mapping from DOS modes to UNIX permissions, 
2034                 and the resulting UNIX mode is then bit-wise 'AND'ed with this 
2035                 parameter. This parameter may be thought of as a bit-wise MASK for 
2036                 the UNIX modes of a directory. Any bit <emphasis>not</emphasis> set 
2037                 here will be removed from the modes set on a directory when it is 
2038                 created.</para>
2039
2040                 <para>The default value of this parameter removes the 'group' 
2041                 and 'other' write bits from the UNIX mode, allowing only the 
2042                 user who owns the directory to modify it.</para>
2043                 
2044                 <para>Following this Samba will bit-wise 'OR' the UNIX mode 
2045                 created from this parameter with the value of the <link
2046                 linkend="FORCEDIRECTORYMODE"><parameter>force directory mode
2047                 </parameter></link> parameter. This parameter is set to 000 by 
2048                 default (i.e. no extra mode bits are added).</para>
2049
2050                 <para>Note that this parameter does not apply to permissions
2051                 set by Windows NT/2000 ACL editors. If the administrator wishes to enforce
2052                 a mask on access control lists also, they need to set the <link 
2053                 linkend="DIRECTORYSECURITYMASK"><parameter>directory security mask</parameter></link>.</para>
2054
2055                 <para>See the <link linkend="FORCEDIRECTORYMODE"><parameter>force 
2056                 directory mode</parameter></link> parameter to cause particular mode 
2057                 bits to always be set on created directories.</para>
2058
2059                 <para>See also the <link linkend="CREATEMODE"><parameter>create mode
2060                 </parameter></link> parameter for masking mode bits on created files, 
2061                 and the <link linkend="DIRECTORYSECURITYMASK"><parameter>directory 
2062                 security mask</parameter></link> parameter.</para>
2063
2064                 <para>Also refer to the <link linkend="INHERITPERMISSIONS"><parameter>
2065                 inherit permissions</parameter></link> parameter.</para>
2066
2067                 <para>Default: <command>directory mask = 0755</command></para>
2068                 <para>Example: <command>directory mask = 0775</command></para>
2069                 </listitem>
2070                 </varlistentry>
2071
2072
2073
2074                 <varlistentry>
2075                 <term><anchor id="DIRECTORYMODE">directory mode (S)</term>
2076                 <listitem><para>Synonym for <link linkend="DIRECTORYMASK"><parameter>
2077                 directory mask</parameter></link></para></listitem>
2078                 </varlistentry>
2079                 
2080                 
2081                 
2082                 <varlistentry>
2083                 <term><anchor id="DIRECTORYSECURITYMASK">directory security mask (S)</term>
2084                 <listitem><para>This parameter controls what UNIX permission bits 
2085                 can be modified when a Windows NT client is manipulating the UNIX 
2086                 permission on a directory using the native NT security dialog 
2087                 box.</para>
2088
2089                 <para>This parameter is applied as a mask (AND'ed with) to 
2090                 the changed permission bits, thus preventing any bits not in 
2091                 this mask from being modified. Essentially, zero bits in this 
2092                 mask may be treated as a set of bits the user is not allowed 
2093                 to change.</para>
2094
2095                 <para>If not set explicitly this parameter is set to 0777
2096                 meaning a user is allowed to modify all the user/group/world
2097                 permissions on a directory.</para>
2098
2099                 <para><emphasis>Note</emphasis> that users who can access the 
2100                 Samba server through other means can easily bypass this restriction, 
2101                 so it is primarily useful for standalone "appliance" systems.  
2102                 Administrators of most normal systems will probably want to leave
2103                 it as the default of <constant>0777</constant>.</para>
2104
2105                 <para>See also the <link linkend="FORCEDIRECTORYSECURITYMODE"><parameter>
2106                 force directory security mode</parameter></link>, <link
2107                 linkend="SECURITYMASK"><parameter>security mask</parameter></link>, 
2108                 <link linkend="FORCESECURITYMODE"><parameter>force security mode
2109                 </parameter></link> parameters.</para>
2110
2111                 <para>Default: <command>directory security mask = 0777</command></para>
2112                 <para>Example: <command>directory security mask = 0700</command></para>
2113                 </listitem>
2114                 </varlistentry>
2115
2116
2117
2118                 <varlistentry>
2119                 <term><anchor id="DISABLESPOOLSS">disable spoolss (G)</term>
2120                 <listitem><para>Enabling this parameter will disables Samba's support
2121                 for the SPOOLSS set of MS-RPC's and will yield identical behavior
2122                 as Samba 2.0.x.  Windows NT/2000 clients will downgrade to using
2123                 Lanman style printing commands. Windows 9x/ME will be uneffected by
2124                 the parameter. However, this will also disable the ability to upload
2125                 printer drivers to a Samba server via the Windows NT Add Printer
2126                 Wizard or by using the NT printer properties dialog window.  It will
2127                 also disable the capability of Windows NT/2000 clients to download
2128                 print drivers from the Samba host upon demand.
2129                 <emphasis>Be very careful about enabling this parameter.</emphasis>
2130                 </para>
2131
2132                 <para>See also <link linkend="USECLIENTDRIVER">use client driver</link>
2133                 </para>
2134  
2135                 <para>Default : <command>disable spoolss = no</command></para>
2136                 </listitem>
2137                 </varlistentry>
2138                 
2139                 
2140                 
2141                 <varlistentry>
2142                 <term><anchor id="DNSPROXY">dns proxy (G)</term>
2143                 <listitem><para>Specifies that <ulink url="nmbd.8.html">nmbd(8)</ulink> 
2144                 when acting as a WINS server and finding that a NetBIOS name has not 
2145                 been registered, should treat the NetBIOS name word-for-word as a DNS 
2146                 name and do a lookup with the DNS server for that name on behalf of 
2147                 the name-querying client.</para>
2148
2149                 <para>Note that the maximum length for a NetBIOS name is 15 
2150                 characters, so the DNS name (or DNS alias) can likewise only be 
2151                 15 characters, maximum.</para>
2152
2153                 <para><command>nmbd</command> spawns a second copy of itself to do the
2154                 DNS name lookup requests, as doing a name lookup is a blocking 
2155                 action.</para>
2156
2157                 <para>See also the parameter <link linkend="WINSSUPPORT"><parameter>
2158                 wins support</parameter></link>.</para>
2159
2160                 <para>Default: <command>dns proxy = yes</command></para></listitem>
2161                 </varlistentry>
2162
2163
2164
2165                 <varlistentry>
2166                 <term><anchor id="DOMAINADMINGROUP">domain admin group (G)</term>
2167                 <listitem><para>This parameter is intended as a temporary solution
2168                 to enable users to be a member of the "Domain Admins" group when 
2169                 a Samba host is acting as a PDC.  A complete solution will be provided
2170                 by a system for mapping Windows NT/2000 groups onto UNIX groups.
2171                 Please note that this parameter has a somewhat confusing name.  It 
2172                 accepts a list of usernames and of group names in standard 
2173                 <filename>smb.conf</filename>   notation.
2174                 </para>
2175                 
2176                 <para>See also <link linkend="DOMAINGUESTGROUP"><parameter>domain
2177                 guest group</parameter></link>, <link linkend="DOMAINLOGONS"><parameter>domain
2178                 logons</parameter></link>
2179                 </para>
2180                 
2181                 <para>Default: <emphasis>no domain administrators</emphasis></para>
2182                 <para>Example: <command>domain admin group = root @wheel</command></para>
2183                 </listitem>
2184                 </varlistentry>
2185
2186
2187
2188
2189                 <varlistentry>
2190                 <term><anchor id="DOMAINGUESTGROUP">domain guest group (G)</term>
2191                 <listitem><para>This parameter is intended as a temporary solution
2192                 to enable users to be a member of the "Domain Guests" group when 
2193                 a Samba host is acting as a PDC.  A complete solution will be provided
2194                 by a system for mapping Windows NT/2000 groups onto UNIX groups.
2195                 Please note that this parameter has a somewhat confusing name.  It 
2196                 accepts a list of usernames and of group names in standard 
2197                 <filename>smb.conf</filename>   notation.
2198                 </para>
2199                 
2200                 <para>See also <link linkend="DOMAINADMINGROUP"><parameter>domain
2201                 admin group</parameter></link>, <link linkend="DOMAINLOGONS"><parameter>domain
2202                 logons</parameter></link>
2203                 </para>         
2204                 
2205                 <para>Default: <emphasis>no domain guests</emphasis></para>
2206                 <para>Example: <command>domain guest group = nobody @guest</command></para>
2207                 </listitem>
2208                 </varlistentry>
2209
2210
2211                 <varlistentry>
2212                 <term><anchor id="DOMAINLOGONS">domain logons (G)</term>
2213                 <listitem><para>If set to <constant>true</constant>, the Samba server will serve 
2214                 Windows 95/98 Domain logons for the <link linkend="WORKGROUP">
2215                 <parameter>workgroup</parameter></link> it is in. Samba 2.2 also 
2216                 has limited capability to act as a domain controller for Windows 
2217                 NT 4 Domains.  For more details on setting up this feature see 
2218                 the Samba-PDC-HOWTO included in the <filename>htmldocs/</filename>
2219                 directory shipped with the source code.</para>
2220                 
2221                 <para>Default: <command>domain logons = no</command></para></listitem>
2222                 </varlistentry>
2223                 
2224                 
2225                 
2226                 <varlistentry>
2227                 <term><anchor id="DOMAINMASTER">domain master (G)</term>
2228                 <listitem><para>Tell <ulink url="nmbd.8.html"><command>
2229                 nmbd(8)</command></ulink> to enable WAN-wide browse list
2230                 collation. Setting this option causes <command>nmbd</command> to
2231                 claim a special domain specific NetBIOS name that identifies 
2232                 it as a domain master browser for its given <link linkend="WORKGROUP">
2233                 <parameter>workgroup</parameter></link>. Local master browsers 
2234                 in the same <parameter>workgroup</parameter> on broadcast-isolated 
2235                 subnets will give this <command>nmbd</command> their local browse lists, 
2236                 and then ask <ulink url="smbd.8.html"><command>smbd(8)</command></ulink> 
2237                 for a complete copy of the browse list for the whole wide area 
2238                 network.  Browser clients will then contact their local master browser, 
2239                 and will receive the domain-wide browse list, instead of just the list 
2240                 for their broadcast-isolated subnet.</para>
2241
2242                 <para>Note that Windows NT Primary Domain Controllers expect to be 
2243                 able to claim this <parameter>workgroup</parameter> specific special 
2244                 NetBIOS name that identifies them as domain master browsers for 
2245                 that <parameter>workgroup</parameter> by default (i.e. there is no 
2246                 way to prevent a Windows NT PDC from attempting to do this). This 
2247                 means that if this parameter is set and <command>nmbd</command> claims 
2248                 the special name for a <parameter>workgroup</parameter> before a Windows 
2249                 NT PDC is able to do so then cross subnet browsing will behave 
2250                 strangely and may fail.</para>
2251                 
2252                 <para>If <link linkend="DOMAINLOGONS"><command>domain logons = yes</command>
2253                 </link>, then the default behavior is to enable the <parameter>domain 
2254                 master</parameter> parameter.  If <parameter>domain logons</parameter> is 
2255                 not enabled (the default setting), then neither will <parameter>domain 
2256                 master</parameter> be enabled by default.</para>
2257
2258                 <para>Default: <command>domain master = auto</command></para></listitem>
2259                 </varlistentry>
2260                 
2261                 
2262                 
2263                 
2264                 <varlistentry>
2265                 <term><anchor id="DONTDESCEND">dont descend (S)</term>
2266                 <listitem><para>There are certain directories on some systems 
2267                 (e.g., the <filename>/proc</filename> tree under Linux) that are either not 
2268                 of interest to clients or are infinitely deep (recursive). This 
2269                 parameter allows you to specify a comma-delimited list of directories 
2270                 that the server should always show as empty.</para>
2271
2272                 <para>Note that Samba can be very fussy about the exact format 
2273                 of the "dont descend" entries. For example you may need <filename>
2274                 ./proc</filename> instead of just <filename>/proc</filename>. 
2275                 Experimentation is the best policy :-)  </para>
2276                 
2277                 <para>Default: <emphasis>none (i.e., all directories are OK 
2278                 to descend)</emphasis></para>
2279                 <para>Example: <command>dont descend = /proc,/dev</command></para>
2280                 </listitem>
2281                 </varlistentry>
2282                 
2283
2284
2285                 <varlistentry>
2286                 <term><anchor id="DOSFILEMODE">dos filemode (S)</term>
2287                 <listitem><para> The default behavior in Samba is to provide 
2288                 UNIX-like behavior where only the owner of a file/directory is 
2289                 able to change the permissions on it.  However, this behavior
2290                 is often confusing to  DOS/Windows users.  Enabling this parameter 
2291                 allows a user who has write access to the file (by whatever 
2292                 means) to modify the permissions on it.  Note that a user
2293                 belonging to the group owning the file will not be allowed to
2294                 change permissions if the group is only granted read access.
2295                 Ownership of the file/directory is not changed, only the permissions 
2296                 are modified.</para>
2297                 
2298                 <para>Default: <command>dos filemode = no</command></para>
2299                 </listitem>
2300                 </varlistentry>
2301
2302                 
2303                 
2304                 <varlistentry>
2305                 <term><anchor id="DOSFILETIMERESOLUTION">dos filetime resolution (S)</term>
2306                 <listitem><para>Under the DOS and Windows FAT filesystem, the finest 
2307                 granularity on time resolution is two seconds. Setting this parameter 
2308                 for a share causes Samba to round the reported time down to the 
2309                 nearest two second boundary when a query call that requires one second 
2310                 resolution is made to <ulink url="smbd.8.html"><command>smbd(8)</command>
2311                 </ulink>.</para>
2312
2313                 <para>This option is mainly used as a compatibility option for Visual 
2314                 C++ when used against Samba shares. If oplocks are enabled on a 
2315                 share, Visual C++ uses two different time reading calls to check if a 
2316                 file has changed since it was last read. One of these calls uses a
2317                 one-second granularity, the other uses a two second granularity. As
2318                 the two second call rounds any odd second down, then if the file has a
2319                 timestamp of an odd number of seconds then the two timestamps will not
2320                 match and Visual C++ will keep reporting the file has changed. Setting
2321                 this option causes the two timestamps to match, and Visual C++ is
2322                 happy.</para>
2323
2324                 <para>Default: <command>dos filetime resolution = no</command></para>
2325                 </listitem>
2326                 </varlistentry>
2327
2328
2329
2330                 <varlistentry>
2331                 <term><anchor id="DOSFILETIMES">dos filetimes (S)</term>
2332                 <listitem><para>Under DOS and Windows, if a user can write to a 
2333                 file they can change the timestamp on it. Under POSIX semantics, 
2334                 only the owner of the file or root may change the timestamp. By 
2335                 default, Samba runs with POSIX semantics and refuses to change the 
2336                 timestamp on a file if the user <command>smbd</command> is acting 
2337                 on behalf of is not the file owner. Setting this option to <constant>
2338                 true</constant> allows DOS semantics and <ulink url="smbd.8.html">smbd</ulink> will change the file 
2339                 timestamp as DOS requires.</para>
2340
2341                 <para>Default: <command>dos filetimes = no</command></para></listitem>
2342                 </varlistentry>
2343
2344                 
2345
2346                 <varlistentry>
2347                 <term><anchor id="ENCRYPTPASSWORDS">encrypt passwords (G)</term>
2348                 <listitem><para>This boolean controls whether encrypted passwords 
2349                 will be negotiated with the client. Note that Windows NT 4.0 SP3 and 
2350                 above and also Windows 98 will by default expect encrypted passwords 
2351                 unless a registry entry is changed. To use encrypted passwords in 
2352                 Samba see the file ENCRYPTION.txt in the Samba documentation 
2353                 directory <filename>docs/</filename> shipped with the source code.</para>
2354
2355                 <para>In order for encrypted passwords to work correctly
2356                 <ulink url="smbd.8.html"><command>smbd(8)</command></ulink> must either 
2357                 have access to a local <ulink url="smbpasswd.5.html"><filename>smbpasswd(5)
2358                 </filename></ulink> file (see the <ulink url="smbpasswd.8.html"><command>
2359                 smbpasswd(8)</command></ulink> program for information on how to set up 
2360                 and maintain this file), or set the <link
2361                 linkend="SECURITY">security = [server|domain|ads]</link> parameter which 
2362                 causes <command>smbd</command> to authenticate against another 
2363                 server.</para>
2364                 
2365                 <para>Default: <command>encrypt passwords = yes</command></para></listitem>
2366                 </varlistentry>
2367
2368
2369                 <varlistentry>
2370                 <term><anchor id="ENHANCEDBROWSING">enhanced browsing (G)</term>
2371                 <listitem><para>This option enables a couple of enhancements to 
2372                 cross-subnet browse propagation that have been added in Samba 
2373                 but which are not standard in Microsoft implementations.  
2374                 </para>
2375
2376                 <para>The first enhancement to browse propagation consists of a regular
2377                 wildcard query to a Samba WINS server for all Domain Master Browsers,
2378                 followed by a browse synchronization with each of the returned
2379                 DMBs. The second enhancement consists of a regular randomised browse
2380                 synchronization with all currently known DMBs.</para>
2381
2382                 <para>You may wish to disable this option if you have a problem with empty
2383                 workgroups not disappearing from browse lists. Due to the restrictions
2384                 of the browse protocols these enhancements can cause a empty workgroup
2385                 to stay around forever which can be annoying.</para>
2386
2387                 <para>In general you should leave this option enabled as it makes
2388                 cross-subnet browse propagation much more reliable.</para>
2389
2390                 <para>Default: <command>enhanced browsing = yes</command></para>
2391                 </listitem>
2392                 </varlistentry>
2393
2394
2395                 <varlistentry>
2396                 <term><anchor id="ENUMPORTSCOMMAND">enumports command (G)</term>
2397                 <listitem><para>The concept of a "port" is fairly foreign
2398                 to UNIX hosts.  Under Windows NT/2000 print servers, a port
2399                 is associated with a port monitor and generally takes the form of
2400                 a local port (i.e. LPT1:, COM1:, FILE:) or a remote port
2401                 (i.e. LPD Port Monitor, etc...).  By default, Samba has only one
2402                 port defined--<constant>"Samba Printer Port"</constant>.  Under 
2403                 Windows NT/2000, all printers must have a valid port name.  
2404                 If you wish to have a list of ports displayed (<command>smbd
2405                 </command> does not use a port name for anything) other than 
2406                 the default <constant>"Samba Printer Port"</constant>, you 
2407                 can define <parameter>enumports command</parameter> to point to
2408                 a program which should generate a list of ports, one per line,
2409                 to standard output.  This listing will then be used in response
2410                 to the level 1 and 2 EnumPorts() RPC.</para>
2411                 
2412                 <para>Default: <emphasis>no enumports command</emphasis></para>
2413                 <para>Example: <command>enumports command = /usr/bin/listports
2414                 </command></para>
2415                 </listitem>
2416                 </varlistentry>
2417                 
2418                 <varlistentry>
2419                 <term><anchor id="EXEC">exec (S)</term>
2420                 <listitem><para>This is a synonym for <link linkend="PREEXEC">
2421                 <parameter>preexec</parameter></link>.</para></listitem>
2422                 </varlistentry>
2423
2424
2425
2426                 <varlistentry>
2427                 <term><anchor id="FAKEDIRECTORYCREATETIMES">fake directory create times (S)</term>
2428                 <listitem><para>NTFS and Windows VFAT file systems keep a create 
2429                 time for all files and directories. This is not the same as the 
2430                 ctime - status change time - that Unix keeps, so Samba by default 
2431                 reports the earliest of the various times Unix does keep. Setting 
2432                 this parameter for a share causes Samba to always report midnight 
2433                 1-1-1980 as the create time for directories.</para>
2434
2435                 <para>This option is mainly used as a compatibility option for 
2436                 Visual C++ when used against Samba shares. Visual C++ generated 
2437                 makefiles have the object directory as a dependency for each object 
2438                 file, and a make rule to create the directory. Also, when NMAKE 
2439                 compares timestamps it uses the creation time when examining a 
2440                 directory. Thus the object directory will be created if it does not 
2441                 exist, but once it does exist it will always have an earlier 
2442                 timestamp than the object files it contains.</para>
2443
2444                 <para>However, Unix time semantics mean that the create time 
2445                 reported by Samba will be updated whenever a file is created or 
2446                 or deleted in the directory.  NMAKE finds all object files in 
2447                 the object directory.  The timestamp of the last one built is then 
2448                 compared to the timestamp of the object directory.  If the 
2449                 directory's timestamp if newer, then all object files
2450                 will be rebuilt.  Enabling this option 
2451                 ensures directories always predate their contents and an NMAKE build 
2452                 will proceed as expected.</para>
2453
2454                 <para>Default: <command>fake directory create times = no</command></para>
2455                 </listitem>
2456                 </varlistentry>
2457
2458
2459
2460                 <varlistentry>
2461                 <term><anchor id="FAKEOPLOCKS">fake oplocks (S)</term>
2462                 <listitem><para>Oplocks are the way that SMB clients get permission 
2463                 from a server to locally cache file operations. If a server grants 
2464                 an oplock (opportunistic lock) then the client is free to assume 
2465                 that it is the only one accessing the file and it will aggressively 
2466                 cache file data. With some oplock types the client may even cache 
2467                 file open/close operations. This can give enormous performance benefits.
2468                 </para>
2469
2470                 <para>When you set <command>fake oplocks = yes</command>, <ulink 
2471                 url="smbd.8.html"><command>smbd(8)</command></ulink> will
2472                 always grant oplock requests no matter how many clients are using 
2473                 the file.</para>
2474
2475                 <para>It is generally much better to use the real <link 
2476                 linkend="OPLOCKS"><parameter>oplocks</parameter></link> support rather 
2477                 than this parameter.</para>
2478                 
2479                 <para>If you enable this option on all read-only shares or 
2480                 shares that you know will only be accessed from one client at a 
2481                 time such as physically read-only media like CDROMs, you will see 
2482                 a big performance improvement on many operations. If you enable 
2483                 this option on shares where multiple clients may be accessing the 
2484                 files read-write at the same time you can get data corruption. Use 
2485                 this option carefully!</para>
2486                 
2487                 <para>Default: <command>fake oplocks = no</command></para></listitem>
2488                 </varlistentry>
2489
2490
2491
2492                 <varlistentry>
2493                 <term><anchor id="FOLLOWSYMLINKS">follow symlinks (S)</term>
2494                 <listitem><para>This parameter allows the Samba administrator 
2495                 to stop <ulink url="smbd.8.html"><command>smbd(8)</command></ulink> 
2496                 from following symbolic links in a particular share. Setting this 
2497                 parameter to <constant>no</constant> prevents any file or directory 
2498                 that is a symbolic link from being followed (the user will get an 
2499                 error).  This option is very useful to stop users from adding a 
2500                 symbolic link to <filename>/etc/passwd</filename> in their home 
2501                 directory for instance.  However it will slow filename lookups 
2502                 down slightly.</para>
2503
2504                 <para>This option is enabled (i.e. <command>smbd</command> will 
2505                 follow symbolic links) by default.</para>
2506                 
2507                 <para>Default: <command>follow symlinks = yes</command></para></listitem>
2508                 </varlistentry>
2509                 
2510                 
2511                 
2512                 <varlistentry>
2513                 <term><anchor id="FORCECREATEMODE">force create mode (S)</term>
2514                 <listitem><para>This parameter specifies a set of UNIX mode bit 
2515                 permissions that will <emphasis>always</emphasis> be set on a 
2516                 file created by Samba. This is done by bitwise 'OR'ing these bits onto 
2517                 the mode bits of a file that is being created or having its 
2518                 permissions changed. The default for this parameter is (in octal) 
2519                 000. The modes in this parameter are bitwise 'OR'ed onto the file 
2520                 mode after the mask set in the <parameter>create mask</parameter> 
2521                 parameter is applied.</para>
2522                 
2523                 <para>See also the parameter <link linkend="CREATEMASK"><parameter>create 
2524                 mask</parameter></link> for details on masking mode bits on files.</para>
2525
2526                 <para>See also the <link linkend="INHERITPERMISSIONS"><parameter>inherit 
2527                 permissions</parameter></link> parameter.</para>
2528
2529                 <para>Default: <command>force create mode = 000</command></para>
2530                 <para>Example: <command>force create mode = 0755</command></para>
2531
2532                 <para>would force all created files to have read and execute 
2533                 permissions set for 'group' and 'other' as well as the 
2534                 read/write/execute bits set for the 'user'.</para>
2535                 </listitem>
2536                 </varlistentry>
2537
2538
2539
2540                 <varlistentry>
2541                 <term><anchor id="FORCEDIRECTORYMODE">force directory mode (S)</term>
2542                 <listitem><para>This parameter specifies a set of UNIX mode bit 
2543                 permissions that will <emphasis>always</emphasis> be set on a directory 
2544                 created by Samba. This is done by bitwise 'OR'ing these bits onto the 
2545                 mode bits of a directory that is being created. The default for this 
2546                 parameter is (in octal) 0000 which will not add any extra permission 
2547                 bits to a created directory. This operation is done after the mode 
2548                 mask in the parameter <parameter>directory mask</parameter> is 
2549                 applied.</para>
2550
2551                 <para>See also the parameter <link linkend="DIRECTORYMASK"><parameter>
2552                 directory mask</parameter></link> for details on masking mode bits 
2553                 on created directories.</para>
2554                 
2555                 <para>See also the <link linkend="INHERITPERMISSIONS"><parameter>
2556                 inherit permissions</parameter></link> parameter.</para>
2557
2558                 <para>Default: <command>force directory mode = 000</command></para>
2559                 <para>Example: <command>force directory mode = 0755</command></para>
2560
2561                 <para>would force all created directories to have read and execute
2562                 permissions set for 'group' and 'other' as well as the
2563                 read/write/execute bits set for the 'user'.</para>
2564                 </listitem>
2565                 </varlistentry>
2566                 
2567                 
2568                 
2569                 <varlistentry>
2570                 <term><anchor id="FORCEDIRECTORYSECURITYMODE">force directory 
2571                 security mode (S)</term>
2572                 <listitem><para>This parameter controls what UNIX permission bits 
2573                 can be modified when a Windows NT client is manipulating the UNIX 
2574                 permission on a directory using the native NT security dialog box.</para>
2575
2576                 <para>This parameter is applied as a mask (OR'ed with) to the 
2577                 changed permission bits, thus forcing any bits in this mask that 
2578                 the user may have modified to be on. Essentially, one bits in this 
2579                 mask may be treated as a set of bits that, when modifying security 
2580                 on a directory, the user has always set to be 'on'.</para>
2581
2582                 <para>If not set explicitly this parameter is 000, which 
2583                 allows a user to modify all the user/group/world permissions on a 
2584                 directory without restrictions.</para>
2585
2586                 <para><emphasis>Note</emphasis> that users who can access the 
2587                 Samba server through other means can easily bypass this restriction, 
2588                 so it is primarily useful for standalone "appliance" systems.  
2589                 Administrators of most normal systems will probably want to leave
2590                 it set as 0000.</para>
2591
2592                 <para>See also the <link linkend="DIRECTORYSECURITYMASK"><parameter>
2593                 directory security mask</parameter></link>, <link linkend="SECURITYMASK">
2594                 <parameter>security mask</parameter></link>, 
2595                 <link linkend="FORCESECURITYMODE"><parameter>force security mode
2596                 </parameter></link> parameters.</para>
2597
2598                 <para>Default: <command>force directory security mode = 0</command></para>
2599                 <para>Example: <command>force directory security mode = 700</command></para>
2600                 </listitem>
2601                 </varlistentry>
2602
2603
2604
2605
2606                 <varlistentry>
2607                 <term><anchor id="FORCEGROUP">force group (S)</term>
2608                 <listitem><para>This specifies a UNIX group name that will be 
2609                 assigned as the default primary group for all users connecting 
2610                 to this service. This is useful for sharing files by ensuring 
2611                 that all access to files on service will use the named group for 
2612                 their permissions checking. Thus, by assigning permissions for this 
2613                 group to the files and directories within this service the Samba 
2614                 administrator can restrict or allow sharing of these files.</para>
2615
2616                 <para>In Samba 2.0.5 and above this parameter has extended 
2617                 functionality in the following way. If the group name listed here 
2618                 has a '+' character prepended to it then the current user accessing 
2619                 the share only has the primary group default assigned to this group 
2620                 if they are already assigned as a member of that group. This allows 
2621                 an administrator to decide that only users who are already in a 
2622                 particular group will create files with group ownership set to that 
2623                 group. This gives a finer granularity of ownership assignment. For 
2624                 example, the setting <filename>force group = +sys</filename> means 
2625                 that only users who are already in group sys will have their default
2626                 primary group assigned to sys when accessing this Samba share. All
2627                 other users will retain their ordinary primary group.</para>
2628
2629                 <para>If the <link linkend="FORCEUSER"><parameter>force user
2630                 </parameter></link> parameter is also set the group specified in 
2631                 <parameter>force group</parameter> will override the primary group
2632                 set in <parameter>force user</parameter>.</para>
2633
2634                 <para>See also <link linkend="FORCEUSER"><parameter>force 
2635                 user</parameter></link>.</para>
2636
2637                 <para>Default: <emphasis>no forced group</emphasis></para>
2638                 <para>Example: <command>force group = agroup</command></para>
2639                 </listitem>
2640                 </varlistentry>
2641
2642
2643
2644                 <varlistentry>
2645                 <term><anchor id="FORCESECURITYMODE">force security mode (S)</term>
2646                 <listitem><para>This parameter controls what UNIX permission 
2647                 bits can be modified when a Windows NT client is manipulating 
2648                 the UNIX permission on a file using the native NT security dialog 
2649                 box.</para>
2650                 
2651                 <para>This parameter is applied as a mask (OR'ed with) to the 
2652                 changed permission bits, thus forcing any bits in this mask that 
2653                 the user may have modified to be on. Essentially, one bits in this 
2654                 mask may be treated as a set of bits that, when modifying security 
2655                 on a file, the user has always set to be 'on'.</para>
2656
2657                 <para>If not set explicitly this parameter is set to 0,
2658                 and allows a user to modify all the user/group/world permissions on a file,
2659                 with no restrictions.</para>
2660                 
2661                 <para><emphasis>Note</emphasis> that users who can access 
2662                 the Samba server through other means can easily bypass this restriction, 
2663                 so it is primarily useful for standalone "appliance" systems.  
2664                 Administrators of most normal systems will probably want to leave
2665                 this set to 0000.</para>
2666
2667                 <para>See also the <link linkend="FORCEDIRECTORYSECURITYMODE"><parameter>
2668                 force directory security mode</parameter></link>,
2669                 <link linkend="DIRECTORYSECURITYMASK"><parameter>directory security
2670                 mask</parameter></link>, <link linkend="SECURITYMASK"><parameter>
2671                 security mask</parameter></link> parameters.</para>
2672
2673                 <para>Default: <command>force security mode = 0</command></para>
2674                 <para>Example: <command>force security mode = 700</command></para>
2675                 </listitem>
2676                 </varlistentry>
2677                 
2678                 
2679                 
2680                 <varlistentry>
2681                 <term><anchor id="FORCEUSER">force user (S)</term>
2682                 <listitem><para>This specifies a UNIX user name that will be 
2683                 assigned as the default user for all users connecting to this service. 
2684                 This is useful for sharing files. You should also use it carefully 
2685                 as using it incorrectly can cause security problems.</para>
2686
2687                 <para>This user name only gets used once a connection is established. 
2688                 Thus clients still need to connect as a valid user and supply a 
2689                 valid password. Once connected, all file operations will be performed 
2690                 as the "forced user", no matter what username the client connected 
2691                 as.  This can be very useful.</para>
2692
2693                 <para>In Samba 2.0.5 and above this parameter also causes the 
2694                 primary group of the forced user to be used as the primary group 
2695                 for all file activity. Prior to 2.0.5 the primary group was left 
2696                 as the primary group of the connecting user (this was a bug).</para>
2697
2698                 <para>See also <link linkend="FORCEGROUP"><parameter>force group
2699                 </parameter></link></para>
2700
2701                 <para>Default: <emphasis>no forced user</emphasis></para>
2702                 <para>Example: <command>force user = auser</command></para>
2703                 </listitem>
2704                 </varlistentry>
2705
2706
2707
2708                 <varlistentry>
2709                 <term><anchor id="FSTYPE">fstype (S)</term>
2710                 <listitem><para>This parameter allows the administrator to 
2711                 configure the string that specifies the type of filesystem a share 
2712                 is using that is reported by <ulink url="smbd.8.html"><command>smbd(8)
2713                 </command></ulink> when a client queries the filesystem type
2714                 for a share. The default type is <constant>NTFS</constant> for 
2715                 compatibility with Windows NT but this can be changed to other 
2716                 strings such as <constant>Samba</constant> or <constant>FAT
2717                 </constant> if required.</para>
2718                 
2719                 <para>Default: <command>fstype = NTFS</command></para>
2720                 <para>Example: <command>fstype = Samba</command></para></listitem>
2721                 </varlistentry>
2722                 
2723                 
2724                 
2725                 <varlistentry>
2726                 <term><anchor id="GETWDCACHE">getwd cache (G)</term>
2727                 <listitem><para>This is a tuning option. When this is enabled a 
2728                 caching algorithm will be used to reduce the time taken for getwd() 
2729                 calls. This can have a significant impact on performance, especially 
2730                 when the <link linkend="WIDELINKS"><parameter>wide links</parameter>
2731                 </link>parameter is set to <constant>false</constant>.</para>
2732
2733                 <para>Default: <command>getwd cache = yes</command></para>
2734                 </listitem>
2735                 </varlistentry>
2736
2737
2738
2739                 <varlistentry>
2740                 <term><anchor id="GROUP">group (S)</term>
2741                 <listitem><para>Synonym for <link linkend="FORCEGROUP"><parameter>force 
2742                 group</parameter></link>.</para></listitem>
2743                 </varlistentry>
2744                 
2745                 
2746                 
2747                 <varlistentry>
2748                 <term><anchor id="GUESTACCOUNT">guest account (S)</term>
2749                 <listitem><para>This is a username which will be used for access 
2750                 to services which are specified as <link linkend="GUESTOK"><parameter>
2751                 guest ok</parameter></link> (see below). Whatever privileges this 
2752                 user has will be available to any client connecting to the guest service. 
2753                 Typically this user will exist in the password file, but will not
2754                 have a valid login. The user account "ftp" is often a good choice 
2755                 for this parameter. If a username is specified in a given service, 
2756                 the specified username overrides this one.</para>
2757
2758                 <para>One some systems the default guest account "nobody" may not 
2759                 be able to print. Use another account in this case. You should test 
2760                 this by trying to log in as your guest user (perhaps by using the 
2761                 <command>su -</command> command) and trying to print using the 
2762                 system print command such as <command>lpr(1)</command> or <command>
2763                 lp(1)</command>.</para>
2764                 
2765                 <para>Default: <emphasis>specified at compile time, usually 
2766                 "nobody"</emphasis></para>
2767
2768                 <para>Example: <command>guest account = ftp</command></para></listitem>
2769                 </varlistentry>
2770
2771                 
2772                 
2773                 <varlistentry>
2774                 <term><anchor id="GUESTOK">guest ok (S)</term>
2775                 <listitem><para>If this parameter is <constant>yes</constant> for 
2776                 a service, then no password is required to connect to the service. 
2777                 Privileges will be those of the <link linkend="GUESTACCOUNT"><parameter>
2778                 guest account</parameter></link>.</para>
2779
2780                 <para>See the section below on <link linkend="SECURITY"><parameter>
2781                 security</parameter></link> for more information about this option.
2782                 </para>
2783
2784                 <para>Default: <command>guest ok = no</command></para></listitem>
2785                 </varlistentry>
2786                 
2787                 
2788                 
2789                 <varlistentry>
2790                 <term><anchor id="GUESTONLY">guest only (S)</term>
2791                 <listitem><para>If this parameter is <constant>yes</constant> for 
2792                 a service, then only guest connections to the service are permitted. 
2793                 This parameter will have no effect if <link linkend="GUESTOK">
2794                 <parameter>guest ok</parameter></link> is not set for the service.</para>
2795
2796                 <para>See the section below on <link linkend="SECURITY"><parameter>
2797                 security</parameter></link> for more information about this option.
2798                 </para>
2799
2800                 <para>Default: <command>guest only = no</command></para></listitem>
2801                 </varlistentry>
2802
2803
2804                 
2805                 <varlistentry>
2806                 <term><anchor id="HIDEDOTFILES">hide dot files (S)</term>
2807                 <listitem><para>This is a boolean parameter that controls whether 
2808                 files starting with a dot appear as hidden files.</para>
2809
2810                 <para>Default: <command>hide dot files = yes</command></para></listitem>
2811                 </varlistentry>
2812
2813
2814         
2815                 <varlistentry>
2816                 <term><anchor id="HIDEFILES">hide files(S)</term>
2817                 <listitem><para>This is a list of files or directories that are not 
2818                 visible but are accessible.  The DOS 'hidden' attribute is applied 
2819                 to any files or directories that match.</para>
2820
2821                 <para>Each entry in the list must be separated by a '/', 
2822                 which allows spaces to be included in the entry.  '*'
2823                 and '?' can be used to specify multiple files or directories 
2824                 as in DOS wildcards.</para>
2825
2826                 <para>Each entry must be a Unix path, not a DOS path and must 
2827                 not include the Unix directory separator '/'.</para>
2828
2829                 <para>Note that the case sensitivity option is applicable 
2830                 in hiding files.</para>
2831                 
2832                 <para>Setting this parameter will affect the performance of Samba, 
2833                 as it will be forced to check all files and directories for a match 
2834                 as they are scanned.</para>
2835
2836                 <para>See also <link linkend="HIDEDOTFILES"><parameter>hide 
2837                 dot files</parameter></link>, <link linkend="VETOFILES"><parameter>
2838                 veto files</parameter></link> and <link linkend="CASESENSITIVE">
2839                 <parameter>case sensitive</parameter></link>.</para>
2840
2841                 <para>Default: <emphasis>no file are hidden</emphasis></para>
2842                 <para>Example: <command>hide files =
2843                 /.*/DesktopFolderDB/TrashFor%m/resource.frk/</command></para>
2844
2845                 <para>The above example is based on files that the Macintosh 
2846                 SMB client (DAVE) available from <ulink url="http://www.thursby.com"> 
2847                 Thursby</ulink> creates for internal use, and also still hides 
2848                 all files beginning with a dot.</para></listitem>
2849                 </varlistentry>
2850                 
2851                 
2852                 
2853                 <varlistentry>
2854                 <term><anchor id="HIDELOCALUSERS">hide local users(G)</term>
2855                 <listitem><para>This parameter toggles the hiding of local UNIX 
2856                 users (root, wheel, floppy, etc) from remote clients.</para>
2857
2858                 <para>Default: <command>hide local users = no</command></para></listitem>
2859                 </varlistentry>