* merge fixes for SGML syntax errors (does no one ever regenerate the docs?)
[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                 read only = no
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                 read only = yes
128                 printable = yes
129                 guest ok = yes
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                         read only = no
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>%U</term>
338                 <listitem><para>session user name (the user name that the client 
339                 wanted, not necessarily the same as the one they got).</para></listitem>
340                 </varlistentry>
341                 
342                 <varlistentry>
343                 <term>%G</term>
344                 <listitem><para>primary group name of %U.</para></listitem>
345                 </varlistentry>
346
347                 <varlistentry>
348                 <term>%h</term>
349                 <listitem><para>the Internet hostname that Samba is running 
350                 on.</para></listitem>
351                 </varlistentry>
352
353                 <varlistentry>
354                 <term>%m</term>
355                 <listitem><para>the NetBIOS name of the client machine 
356                 (very useful).</para></listitem>
357                 </varlistentry>
358                 
359                 <varlistentry>
360                 <term>%L</term>
361                 <listitem><para>the NetBIOS name of the server. This allows you 
362                 to change your config based on what the client calls you. Your 
363                 server can have a "dual personality".</para>
364
365                 <para>Note that this parameter is not available when Samba listens
366                 on port 445, as clients no longer send this information </para>
367                 </listitem>
368
369                 </varlistentry>
370                 
371                 <varlistentry>
372                 <term>%M</term>
373                 <listitem><para>the Internet name of the client machine.
374                 </para></listitem>
375                 </varlistentry>
376                 
377                 <varlistentry>
378                 <term>%R</term>
379                 <listitem><para>the selected protocol level after 
380                 protocol negotiation. It can be one of CORE, COREPLUS, 
381                 LANMAN1, LANMAN2 or NT1.</para></listitem>
382                 </varlistentry>
383
384                 <varlistentry>
385                 <term>%d</term>
386                 <listitem><para>The process id of the current server
387                 process.</para></listitem>
388                 </varlistentry>
389                 
390                 <varlistentry>
391                 <term>%a</term>
392                 <listitem><para>the architecture of the remote
393                 machine. Only some are recognized, and those may not be 
394                 100% reliable. It currently recognizes Samba, WfWg, Win95,
395                 WinNT and Win2k. Anything else will be known as 
396                 "UNKNOWN". If it gets it wrong then sending a level 
397                 3 log to <ulink url="mailto:samba@samba.org">samba@samba.org
398                 </ulink> should allow it to be fixed.</para></listitem>
399                 </varlistentry>
400                 
401                 <varlistentry>
402                 <term>%I</term>
403                 <listitem><para>The IP address of the client machine.</para>
404                 </listitem>
405                 </varlistentry>
406
407                 <varlistentry>
408                 <term>%T</term>
409                 <listitem><para>the current date and time.</para></listitem>
410                 </varlistentry>
411
412                 <varlistentry>
413                 <term>%D</term>
414                 <listitem><para>Name of the domain or workgroup of the current user.</para></listitem>
415                 </varlistentry>
416                 
417                 <varlistentry>
418                 <term>%$(<replaceable>envvar</replaceable>)</term>
419                 <listitem><para>The value of the environment variable
420                 <replaceable>envar</replaceable>.</para></listitem>
421                 </varlistentry>
422         </variablelist>
423
424         <para>The following substitutes apply only to some configuration options(only those 
425         that are used when a connection has been established):</para>
426
427         <variablelist>
428                 <varlistentry>
429                 <term>%S</term>
430                 <listitem><para>the name of the current service, if any.</para>
431                 </listitem>
432                 </varlistentry>
433         
434                 <varlistentry>
435                 <term>%P</term>
436                 <listitem><para>the root directory of the current service, 
437                 if any.</para></listitem>
438                 </varlistentry>
439         
440                 <varlistentry>
441                 <term>%u</term>
442                 <listitem><para>user name of the current service, if any.</para>
443                 </listitem>
444                 </varlistentry>
445         
446                 <varlistentry>
447                 <term>%g</term>
448                 <listitem><para>primary group name of %u.</para></listitem>
449                 </varlistentry>
450         
451                 <varlistentry>
452                 <term>%H</term>
453                 <listitem><para>the home directory of the user given 
454                 by %u.</para></listitem>
455                 </varlistentry>
456
457                 <varlistentry>
458                 <term>%N</term>
459                 <listitem><para>the name of your NIS home directory server.  
460                 This is obtained from your NIS auto.map entry.  If you have 
461                 not compiled Samba with the <emphasis>--with-automount</emphasis> 
462                 option then this value will be the same as %L.</para>
463                 </listitem>
464                 </varlistentry>
465         
466                 <varlistentry>
467                 <term>%p</term>
468                 <listitem><para>the path of the service's home directory, 
469                 obtained from your NIS auto.map entry. The NIS auto.map entry 
470                 is split up as "%N:%p".</para></listitem>
471                 </varlistentry>
472         </variablelist>
473         
474         <para>There are some quite creative things that can be done 
475         with these substitutions and other smb.conf options.</para
476 </refsect1>
477
478 <refsect1>
479         <title id="NAMEMANGLINGSECT">NAME MANGLING</title>
480         
481         <para>Samba supports "name mangling" so that DOS and 
482         Windows clients can use files that don't conform to the 8.3 format. 
483         It can also be set to adjust the case of 8.3 format filenames.</para>
484
485         <para>There are several options that control the way mangling is 
486         performed, and they are grouped here rather than listed separately. 
487         For the defaults look at the output of the testparm program. </para>
488
489         <para>All of these options can be set separately for each service 
490         (or globally, of course). </para>
491
492         <para>The options are: </para>
493         
494         <variablelist>
495         
496         <varlistentry>
497                 <term>mangle case = yes/no</term>
498                 <listitem><para> controls if names that have characters that 
499                 aren't of the "default" case are mangled. For example, 
500                 if this is yes then a name like "Mail" would be mangled. 
501                 Default <emphasis>no</emphasis>.</para></listitem>
502                 </varlistentry> 
503         
504                 <varlistentry>
505                 <term>case sensitive = yes/no</term>
506                 <listitem><para>controls whether filenames are case sensitive. If 
507                 they aren't then Samba must do a filename search and match on passed 
508                 names. Default <emphasis>no</emphasis>.</para></listitem>
509                 </varlistentry> 
510
511                 <varlistentry>
512                 <term>default case = upper/lower</term>
513                 <listitem><para>controls what the default case is for new 
514                 filenames. Default <emphasis>lower</emphasis>.</para></listitem>
515                 </varlistentry> 
516         
517                 <varlistentry>
518                 <term>preserve case = yes/no</term>
519                 <listitem><para>controls if new files are created with the 
520                 case that the client passes, or if they are forced to be the 
521                 "default" case. Default <emphasis>yes</emphasis>.
522                 </para></listitem>
523                 </varlistentry> 
524
525                 <varlistentry>
526                 <term>short preserve case = yes/no</term>
527                 <listitem><para>controls if new files which conform to 8.3 syntax,
528                 that is all in upper case and of suitable length, are created 
529                 upper case, or if they are forced to be the "default" 
530                 case. This option can be use with "preserve case = yes" 
531                 to permit long filenames to retain their case, while short names 
532                 are lowercased. Default <emphasis>yes</emphasis>.</para></listitem>
533                 </varlistentry> 
534         </variablelist>
535         
536         <para>By default, Samba 3.0 has the same semantics as a Windows 
537         NT server, in that it is case insensitive but case preserving.</para>
538         
539 </refsect1>
540
541 <refsect1>
542         <title id="VALIDATIONSECT">NOTE ABOUT USERNAME/PASSWORD VALIDATION</title>
543
544         <para>There are a number of ways in which a user can connect 
545         to a service. The server uses the following steps in determining 
546         if it will allow a connection to a specified service. If all the 
547         steps fail, then the connection request is rejected.  However, if one of the 
548         steps succeeds, then the following steps are not checked.</para>
549
550         <para>If the service is marked "guest only = yes" and the
551         server is running with share-level security ("security = share")
552         then steps 1 to 5 are skipped.</para>
553
554
555         <orderedlist numeration="Arabic">
556                 <listitem><para>If the client has passed a username/password 
557                 pair and that username/password pair is validated by the UNIX 
558                 system's password programs then the connection is made as that 
559                 username. Note that this includes the 
560                 \\server\service%<replaceable>username</replaceable> method of passing 
561                 a username.</para></listitem>
562
563                 <listitem><para>If the client has previously registered a username 
564                 with the system and now supplies a correct password for that 
565                 username then the connection is allowed.</para></listitem>
566                 
567                 <listitem><para>The client's NetBIOS name and any previously 
568                 used user names are checked against the supplied password, if 
569                 they match then the connection is allowed as the corresponding 
570                 user.</para></listitem>
571                 
572                 <listitem><para>If the client has previously validated a
573                 username/password pair with the server and the client has passed 
574                 the validation token then that username is used. </para></listitem>
575
576                 <listitem><para>If a "user = " field is given in the
577                 <filename>smb.conf</filename> file for the service and the client 
578                 has supplied a password, and that password matches (according to 
579                 the UNIX system's password checking) with one of the usernames 
580                 from the "user =" field then the connection is made as 
581                 the username in the "user =" line. If one 
582                 of the username in the "user =" list begins with a
583                 '@' then that name expands to a list of names in 
584                 the group of the same name.</para></listitem>
585
586                 <listitem><para>If the service is a guest service then a 
587                 connection is made as the username given in the "guest 
588                 account =" for the service, irrespective of the 
589                 supplied password.</para></listitem>
590         </orderedlist>
591
592 </refsect1>
593
594 <refsect1>
595         <title>COMPLETE LIST OF GLOBAL PARAMETERS</title>
596
597         <para>Here is a list of all global parameters. See the section of 
598         each parameter for details.  Note that some are synonyms.</para>
599
600         <itemizedlist>
601                 <listitem><para><link linkend="ABORTSHUTDOWNSCRIPT"><parameter>abort shutdown script</parameter></link></para></listitem>
602                 <listitem><para><link linkend="ADDGROUPSCRIPT"><parameter>add group script</parameter></link></para></listitem>
603                 <listitem><para><link linkend="ADDPRINTERCOMMAND"><parameter>addprinter command</parameter></link></para></listitem>
604                 <listitem><para><link linkend="ADDSHARECOMMAND"><parameter>add share command</parameter></link></para></listitem>
605                 <listitem><para><link linkend="ADDUSERSCRIPT"><parameter>add user script</parameter></link></para></listitem>
606                 <listitem><para><link linkend="ADDUSERTOGROUPSCRIPT"><parameter>add user to group script</parameter></link></para></listitem>
607                 <listitem><para><link linkend="ADDMACHINESCRIPT"><parameter>add machine script</parameter></link></para></listitem>
608                 <listitem><para><link linkend="DELETEGROUPSCRIPT"><parameter>delete group script</parameter></link></para></listitem>
609                 <listitem><para><link linkend="ADSSERVER"><parameter>ads server</parameter></link></para></listitem>
610                 <listitem><para><link linkend="ALGORITHMICRIDBASE"><parameter>algorithmic rid base</parameter></link></para></listitem>
611                 <listitem><para><link linkend="ALLOWTRUSTEDDOMAINS"><parameter>allow trusted domains</parameter></link></para></listitem>
612                 <listitem><para><link linkend="ANNOUNCEAS"><parameter>announce as</parameter></link></para></listitem>
613                 <listitem><para><link linkend="ANNOUNCEVERSION"><parameter>announce version</parameter></link></para></listitem>
614                 <listitem><para><link linkend="AUTHMETHODS"><parameter>auth methods</parameter></link></para></listitem>
615                 <listitem><para><link linkend="AUTOSERVICES"><parameter>auto services</parameter></link></para></listitem>
616                 <listitem><para><link linkend="BINDINTERFACESONLY"><parameter>bind interfaces only</parameter></link></para></listitem>
617                 <listitem><para><link linkend="BROWSELIST"><parameter>browse list</parameter></link></para></listitem>
618                 <listitem><para><link linkend="CHANGENOTIFYTIMEOUT"><parameter>change notify timeout</parameter></link></para></listitem>
619                 <listitem><para><link linkend="CHANGESHARECOMMAND"><parameter>change share command</parameter></link></para></listitem>
620                 <listitem><para><link linkend="CONFIGFILE"><parameter>config file</parameter></link></para></listitem>
621                 <listitem><para><link linkend="DEADTIME"><parameter>deadtime</parameter></link></para></listitem>
622                 <listitem><para><link linkend="DEBUGHIRESTIMESTAMP"><parameter>debug hires timestamp</parameter></link></para></listitem>
623                 <listitem><para><link linkend="DEBUGPID"><parameter>debug pid</parameter></link></para></listitem>
624                 <listitem><para><link linkend="DEBUGTIMESTAMP"><parameter>debug timestamp</parameter></link></para></listitem>
625                 <listitem><para><link linkend="DEBUGUID"><parameter>debug uid</parameter></link></para></listitem>
626                 <listitem><para><link linkend="DEBUGLEVEL"><parameter>debuglevel</parameter></link></para></listitem>
627                 <listitem><para><link linkend="DEFAULT"><parameter>default</parameter></link></para></listitem>
628                 <listitem><para><link linkend="DEFAULTSERVICE"><parameter>default service</parameter></link></para></listitem>
629                 <listitem><para><link linkend="DELETEPRINTERCOMMAND"><parameter>deleteprinter command</parameter></link></para></listitem>
630                 <listitem><para><link linkend="DELETESHARECOMMAND"><parameter>delete share command</parameter></link></para></listitem>
631                 <listitem><para><link linkend="DELETEUSERSCRIPT"><parameter>delete user script</parameter></link></para></listitem>
632                 <listitem><para><link linkend="DELETEUSERFROMGROUPSCRIPT"><parameter>delete user from group script</parameter></link></para></listitem>
633                 <listitem><para><link linkend="DFREECOMMAND"><parameter>dfree command</parameter></link></para></listitem>
634                 <listitem><para><link linkend="DISABLENETBIOS"><parameter>disable netbios</parameter></link></para></listitem>
635                 <listitem><para><link linkend="DISABLESPOOLSS"><parameter>disable spoolss</parameter></link></para></listitem>
636                 <listitem><para><link linkend="DISPLAYCHARSET"><parameter>display charset</parameter></link></para></listitem>
637                 <listitem><para><link linkend="DNSPROXY"><parameter>dns proxy</parameter></link></para></listitem>
638                 <listitem><para><link linkend="DOMAINLOGONS"><parameter>domain logons</parameter></link></para></listitem>
639                 <listitem><para><link linkend="DOMAINMASTER"><parameter>domain master</parameter></link></para></listitem>
640                 <listitem><para><link linkend="DOSCHARSET"><parameter>dos charset</parameter></link></para></listitem>
641                 <listitem><para><link linkend="ENCRYPTPASSWORDS"><parameter>encrypt passwords</parameter></link></para></listitem>
642                 <listitem><para><link linkend="ENHANCEDBROWSING"><parameter>enhanced browsing</parameter></link></para></listitem>
643                 <listitem><para><link linkend="ENUMPORTSCOMMAND"><parameter>enumports command</parameter></link></para></listitem>
644                 <listitem><para><link linkend="GETWDCACHE"><parameter>getwd cache</parameter></link></para></listitem>
645                 <listitem><para><link linkend="HIDELOCALUSERS"><parameter>hide local users</parameter></link></para></listitem>
646                 <listitem><para><link linkend="HIDEUNREADABLE"><parameter>hide unreadable</parameter></link></para></listitem>
647                 <listitem><para><link linkend="HIDEUNWRITEABLEFILES"><parameter>hide unwriteable files</parameter></link></para></listitem>
648                 <listitem><para><link linkend="HIDESPECIALFILES"><parameter>hide special files</parameter></link></para></listitem>
649                 <listitem><para><link linkend="HOMEDIRMAP"><parameter>homedir map</parameter></link></para></listitem>
650                 <listitem><para><link linkend="HOSTMSDFS"><parameter>host msdfs</parameter></link></para></listitem>
651                 <listitem><para><link linkend="HOSTNAMELOOKUPS"><parameter>hostname lookups</parameter></link></para></listitem>
652                 <listitem><para><link linkend="HOSTSEQUIV"><parameter>hosts equiv</parameter></link></para></listitem>
653                 <listitem><para><link linkend="INTERFACES"><parameter>interfaces</parameter></link></para></listitem>
654                 <listitem><para><link linkend="KEEPALIVE"><parameter>keepalive</parameter></link></para></listitem>
655                 <listitem><para><link linkend="KERNELOPLOCKS"><parameter>kernel oplocks</parameter></link></para></listitem>
656                 <listitem><para><link linkend="LANMANAUTH"><parameter>lanman auth</parameter></link></para></listitem>
657                 <listitem><para><link linkend="LARGEREADWRITE"><parameter>large readwrite</parameter></link></para></listitem>
658                 
659                 <listitem><para><link linkend="LDAPADMINDN"><parameter>ldap admin dn</parameter></link></para></listitem>
660                 <listitem><para><link linkend="LDAPFILTER"><parameter>ldap filter</parameter></link></para></listitem>
661                 <listitem><para><link linkend="LDAPPORT"><parameter>ldap port</parameter></link></para></listitem>
662                 <listitem><para><link linkend="LDAPSERVER"><parameter>ldap server</parameter></link></para></listitem>
663                 <listitem><para><link linkend="LDAPSSL"><parameter>ldap ssl</parameter></link></para></listitem>
664                 <listitem><para><link linkend="LDAPSUFFIX"><parameter>ldap suffix</parameter></link></para></listitem>
665                 <listitem><para><link linkend="LDAPUSERSUFFIX"><parameter>ldap user suffix</parameter></link></para></listitem>
666                 <listitem><para><link linkend="LDAPMACHINESUFFIX"><parameter>ldap machine suffix</parameter></link></para></listitem>
667                 <listitem><para><link linkend="LDAPPASSWDSYNC"><parameter>ldap passwd sync</parameter></link></para></listitem>
668                 <listitem><para><link linkend="LDAPTRUSTIDS"><parameter>ldap trust ids</parameter></link></para></listitem>
669
670                 <listitem><para><link linkend="LMANNOUNCE"><parameter>lm announce</parameter></link></para></listitem>
671                 <listitem><para><link linkend="LMINTERVAL"><parameter>lm interval</parameter></link></para></listitem>
672                 <listitem><para><link linkend="LOADPRINTERS"><parameter>load printers</parameter></link></para></listitem>
673                 <listitem><para><link linkend="LOCALMASTER"><parameter>local master</parameter></link></para></listitem>
674                 <listitem><para><link linkend="LOCKDIR"><parameter>lock dir</parameter></link></para></listitem>
675                 <listitem><para><link linkend="LOCKDIRECTORY"><parameter>lock directory</parameter></link></para></listitem>
676                 <listitem><para><link linkend="LOCKSPINCOUNT"><parameter>lock spin count</parameter></link></para></listitem>
677                 <listitem><para><link linkend="LOCKSPINTIME"><parameter>lock spin time</parameter></link></para></listitem>
678                 <listitem><para><link linkend="PIDDIRECTORY"><parameter>pid directory</parameter></link></para></listitem>
679                 <listitem><para><link linkend="LOGFILE"><parameter>log file</parameter></link></para></listitem>
680                 <listitem><para><link linkend="LOGLEVEL"><parameter>log level</parameter></link></para></listitem>
681                 <listitem><para><link linkend="LOGONDRIVE"><parameter>logon drive</parameter></link></para></listitem>
682                 <listitem><para><link linkend="LOGONHOME"><parameter>logon home</parameter></link></para></listitem>
683                 <listitem><para><link linkend="LOGONPATH"><parameter>logon path</parameter></link></para></listitem>
684                 <listitem><para><link linkend="LOGONSCRIPT"><parameter>logon script</parameter></link></para></listitem>
685                 <listitem><para><link linkend="LPQCACHETIME"><parameter>lpq cache time</parameter></link></para></listitem>
686                 <listitem><para><link linkend="MACHINEPASSWORDTIMEOUT"><parameter>machine password timeout</parameter></link></para></listitem>
687                 <listitem><para><link linkend="MANGLEDSTACK"><parameter>mangled stack</parameter></link></para></listitem>
688                 <listitem><para><link linkend="MAPTOGUEST"><parameter>map to guest</parameter></link></para></listitem>
689                 <listitem><para><link linkend="MAXDISKSIZE"><parameter>max disk size</parameter></link></para></listitem>
690                 <listitem><para><link linkend="MAXLOGSIZE"><parameter>max log size</parameter></link></para></listitem>
691                 <listitem><para><link linkend="MAXMUX"><parameter>max mux</parameter></link></para></listitem>
692                 <listitem><para><link linkend="MAXOPENFILES"><parameter>max open files</parameter></link></para></listitem>
693                 <listitem><para><link linkend="MAXPROTOCOL"><parameter>max protocol</parameter></link></para></listitem>
694                 <listitem><para><link linkend="MAXSMBDPROCESSES"><parameter>max smbd processes</parameter></link></para></listitem>
695                 <listitem><para><link linkend="MAXTTL"><parameter>max ttl</parameter></link></para></listitem>
696                 <listitem><para><link linkend="MAXWINSTTL"><parameter>max wins ttl</parameter></link></para></listitem>
697                 <listitem><para><link linkend="MAXXMIT"><parameter>max xmit</parameter></link></para></listitem>
698                 <listitem><para><link linkend="MESSAGECOMMAND"><parameter>message command</parameter></link></para></listitem>
699                 <listitem><para><link linkend="MINPASSWDLENGTH"><parameter>min passwd length</parameter></link></para></listitem>
700                 <listitem><para><link linkend="MINPASSWORDLENGTH"><parameter>min password length</parameter></link></para></listitem>
701                 <listitem><para><link linkend="MINPROTOCOL"><parameter>min protocol</parameter></link></para></listitem>
702                 <listitem><para><link linkend="MINWINSTTL"><parameter>min wins ttl</parameter></link></para></listitem>
703                 <listitem><para><link linkend="NAMECACHETIMEOUT"><parameter>name cache timeout</parameter></link></para></listitem>
704                 <listitem><para><link linkend="NAMERESOLVEORDER"><parameter>name resolve order</parameter></link></para></listitem>
705                 <listitem><para><link linkend="NETBIOSALIASES"><parameter>netbios aliases</parameter></link></para></listitem>
706                 <listitem><para><link linkend="NETBIOSNAME"><parameter>netbios name</parameter></link></para></listitem>
707                 <listitem><para><link linkend="NETBIOSSCOPE"><parameter>netbios scope</parameter></link></para></listitem>
708                 <listitem><para><link linkend="NISHOMEDIR"><parameter>nis homedir</parameter></link></para></listitem>
709                 <listitem><para><link linkend="NTLMAUTH"><parameter>ntlm auth</parameter></link></para></listitem>
710                 <listitem><para><link linkend="NONUNIXACCOUNTRANGE"><parameter>non unix account range</parameter></link></para></listitem>
711                 <listitem><para><link linkend="NTPIPESUPPORT"><parameter>nt pipe support</parameter></link></para></listitem>
712                 <listitem><para><link linkend="NTSTATUSSUPPORT"><parameter>nt status support</parameter></link></para></listitem>
713                 <listitem><para><link linkend="NULLPASSWORDS"><parameter>null passwords</parameter></link></para></listitem>
714                 <listitem><para><link linkend="OBEYPAMRESTRICTIONS"><parameter>obey pam restrictions</parameter></link></para></listitem>
715                 <listitem><para><link linkend="OPLOCKBREAKWAITTIME"><parameter>oplock break wait time</parameter></link></para></listitem>
716                 <listitem><para><link linkend="OSLEVEL"><parameter>os level</parameter></link></para></listitem>
717                 <listitem><para><link linkend="OS2DRIVERMAP"><parameter>os2 driver map</parameter></link></para></listitem>
718                 <listitem><para><link linkend="PAMPASSWORDCHANGE"><parameter>pam password change</parameter></link></para></listitem>
719                 <listitem><para><link linkend="PANICACTION"><parameter>panic action</parameter></link></para></listitem>
720                 <listitem><para><link linkend="PARANOIDSERVERSECURITY"><parameter>paranoid server security</parameter></link></para></listitem>
721                 <listitem><para><link linkend="PASSDBBACKEND"><parameter>passdb backend</parameter></link></para></listitem>
722                 <listitem><para><link linkend="PASSWDCHAT"><parameter>passwd chat</parameter></link></para></listitem>
723                 <listitem><para><link linkend="PASSWDCHATDEBUG"><parameter>passwd chat debug</parameter></link></para></listitem>
724                 <listitem><para><link linkend="PASSWDPROGRAM"><parameter>passwd program</parameter></link></para></listitem>
725                 <listitem><para><link linkend="PASSWORDLEVEL"><parameter>password level</parameter></link></para></listitem>
726                 <listitem><para><link linkend="PASSWORDSERVER"><parameter>password server</parameter></link></para></listitem>
727                 <listitem><para><link linkend="PREFEREDMASTER"><parameter>prefered master</parameter></link></para></listitem>
728                 <listitem><para><link linkend="PREFERREDMASTER"><parameter>preferred master</parameter></link></para></listitem>
729                 <listitem><para><link linkend="PRELOAD"><parameter>preload</parameter></link></para></listitem>
730                 <listitem><para><link linkend="PRINTCAP"><parameter>printcap</parameter></link></para></listitem>
731                 <listitem><para><link linkend="PRINTCAPNAME"><parameter>printcap name</parameter></link></para></listitem>
732                 <listitem><para><link linkend="PRINTERDRIVERFILE"><parameter>printer driver file</parameter></link></para></listitem>
733                 <listitem><para><link linkend="PRIVATEDIR"><parameter>private dir</parameter></link></para></listitem>
734                 <listitem><para><link linkend="PROTOCOL"><parameter>protocol</parameter></link></para></listitem>
735                 <listitem><para><link linkend="READBMPX"><parameter>read bmpx</parameter></link></para></listitem>
736                 <listitem><para><link linkend="READRAW"><parameter>read raw</parameter></link></para></listitem>
737                 <listitem><para><link linkend="READSIZE"><parameter>read size</parameter></link></para></listitem>
738                 <listitem><para><link linkend="REALM"><parameter>realm</parameter></link></para></listitem>
739                 <listitem><para><link linkend="REMOTEANNOUNCE"><parameter>remote announce</parameter></link></para></listitem>
740                 <listitem><para><link linkend="REMOTEBROWSESYNC"><parameter>remote browse sync</parameter></link></para></listitem>
741                 <listitem><para><link linkend="RESTRICTANONYMOUS"><parameter>restrict anonymous</parameter></link></para></listitem>
742                 <listitem><para><link linkend="ROOT"><parameter>root</parameter></link></para></listitem>
743                 <listitem><para><link linkend="ROOTDIR"><parameter>root dir</parameter></link></para></listitem>
744                 <listitem><para><link linkend="ROOTDIRECTORY"><parameter>root directory</parameter></link></para></listitem>
745                 <listitem><para><link linkend="SECURITY"><parameter>security</parameter></link></para></listitem>
746                 <listitem><para><link linkend="SERVERSTRING"><parameter>server string</parameter></link></para></listitem>
747                 <listitem><para><link linkend="SHOWADDPRINTERWIZARD"><parameter>show add printer wizard</parameter></link></para></listitem>
748                 <listitem><para><link linkend="SHUTDOWNSCRIPT"><parameter>shutdown script</parameter></link></para></listitem>
749                 <listitem><para><link linkend="SMBPASSWDFILE"><parameter>smb passwd file</parameter></link></para></listitem>
750                 <listitem><para><link linkend="SMBPORTS"><parameter>smb ports</parameter></link></para></listitem>
751                 <listitem><para><link linkend="SOCKETADDRESS"><parameter>socket address</parameter></link></para></listitem>
752                 <listitem><para><link linkend="SOCKETOPTIONS"><parameter>socket options</parameter></link></para></listitem>
753                 <listitem><para><link linkend="SOURCEENVIRONMENT"><parameter>source environment</parameter></link></para></listitem>
754                 <listitem><para><link linkend="SPNEGO"><parameter>use spnego</parameter></link></para></listitem>
755                 <listitem><para><link linkend="STATCACHE"><parameter>stat cache</parameter></link></para></listitem>
756                 <listitem><para><link linkend="STATCACHESIZE"><parameter>stat cache size</parameter></link></para></listitem>
757                 <listitem><para><link linkend="STRIPDOT"><parameter>strip dot</parameter></link></para></listitem>
758                 <listitem><para><link linkend="SYSLOG"><parameter>syslog</parameter></link></para></listitem>
759                 <listitem><para><link linkend="SYSLOGONLY"><parameter>syslog only</parameter></link></para></listitem>
760                 <listitem><para><link linkend="TEMPLATEHOMEDIR"><parameter>template homedir</parameter></link></para></listitem>
761                 <listitem><para><link linkend="TEMPLATESHELL"><parameter>template shell</parameter></link></para></listitem>
762                 <listitem><para><link linkend="TIMEOFFSET"><parameter>time offset</parameter></link></para></listitem>
763                 <listitem><para><link linkend="TIMESERVER"><parameter>time server</parameter></link></para></listitem>
764                 <listitem><para><link linkend="TIMESTAMPLOGS"><parameter>timestamp logs</parameter></link></para></listitem>
765                 <listitem><para><link linkend="TOTALPRINTJOBS"><parameter>total print jobs</parameter></link></para></listitem>
766                 <listitem><para><link linkend="UNICODE"><parameter>unicode</parameter></link></para></listitem>
767                 <listitem><para><link linkend="UNIXCHARSET"><parameter>unix charset</parameter></link></para></listitem>
768                 <listitem><para><link linkend="UNIXEXTENSIONS"><parameter>unix extensions</parameter></link></para></listitem>
769                 <listitem><para><link linkend="UNIXPASSWORDSYNC"><parameter>unix password sync</parameter></link></para></listitem>
770                 <listitem><para><link linkend="UPDATEENCRYPTED"><parameter>update encrypted</parameter></link></para></listitem>
771                 <listitem><para><link linkend="USEMMAP"><parameter>use mmap</parameter></link></para></listitem>
772                 <listitem><para><link linkend="USERHOSTS"><parameter>use rhosts</parameter></link></para></listitem>
773                 <listitem><para><link linkend="USESENDFILE"><parameter>use sendfile</parameter></link></para></listitem>
774                 <listitem><para><link linkend="USERNAMELEVEL"><parameter>username level</parameter></link></para></listitem>
775                 <listitem><para><link linkend="USERNAMEMAP"><parameter>username map</parameter></link></para></listitem>
776                 <listitem><para><link linkend="UTMP"><parameter>utmp</parameter></link></para></listitem>
777                 <listitem><para><link linkend="UTMPDIRECTORY"><parameter>utmp directory</parameter></link></para></listitem>
778                 <listitem><para><link linkend="WTMPDIRECTORY"><parameter>wtmp directory</parameter></link></para></listitem>
779                 <listitem><para><link linkend="WINBINDCACHETIME"><parameter>winbind cache time</parameter></link></para></listitem>
780                 <listitem><para><link linkend="WINBINDENUMUSERS"><parameter>winbind enum users</parameter></link></para></listitem>
781                 <listitem><para><link linkend="WINBINDENUMGROUPS"><parameter>winbind enum groups</parameter></link></para></listitem>
782                 <listitem><para><link linkend="WINBINDGID"><parameter>winbind gid</parameter></link></para></listitem>
783                 <listitem><para><link linkend="WINBINDSEPARATOR"><parameter>winbind separator</parameter></link></para></listitem>
784                 <listitem><para><link linkend="WINBINDUID"><parameter>winbind uid</parameter></link></para></listitem>
785                 <listitem><para><link linkend="WINBINDUSEDEFAULTDOMAIN"><parameter>winbind use default domain</parameter></link></para></listitem>
786                 <listitem><para><link linkend="WINSHOOK"><parameter>wins hook</parameter></link></para></listitem>
787                 <listitem><para><link linkend="WINSPARTNERS"><parameter>wins partners</parameter></link></para></listitem>
788                 <listitem><para><link linkend="WINSPROXY"><parameter>wins proxy</parameter></link></para></listitem>
789                 <listitem><para><link linkend="WINSSERVER"><parameter>wins server</parameter></link></para></listitem>
790                 <listitem><para><link linkend="WINSSUPPORT"><parameter>wins support</parameter></link></para></listitem>
791                 <listitem><para><link linkend="WORKGROUP"><parameter>workgroup</parameter></link></para></listitem>
792                 <listitem><para><link linkend="WRITERAW"><parameter>write raw</parameter></link></para></listitem>
793         </itemizedlist>
794
795 </refsect1>
796
797 <refsect1>
798         <title>COMPLETE LIST OF SERVICE PARAMETERS</title>
799         
800         <para>Here is a list of all service parameters. See the section on 
801         each parameter for details. Note that some are synonyms.</para>
802         
803         <itemizedlist>
804                 <listitem><para><link linkend="ADMINUSERS"><parameter>admin users</parameter></link></para></listitem>
805                 <listitem><para><link linkend="ALLOWHOSTS"><parameter>allow hosts</parameter></link></para></listitem>
806                 <listitem><para><link linkend="AVAILABLE"><parameter>available</parameter></link></para></listitem>
807                 <listitem><para><link linkend="BLOCKINGLOCKS"><parameter>blocking locks</parameter></link></para></listitem>
808 <listitem><para><link linkend="BLOCKSIZE"><parameter>block size</parameter></link></para></listitem>
809                 <listitem><para><link linkend="BROWSABLE"><parameter>browsable</parameter></link></para></listitem>
810                 <listitem><para><link linkend="BROWSEABLE"><parameter>browseable</parameter></link></para></listitem>
811                 <listitem><para><link linkend="CASESENSITIVE"><parameter>case sensitive</parameter></link></para></listitem>
812                 <listitem><para><link linkend="CASESIGNAMES"><parameter>casesignames</parameter></link></para></listitem>
813                 <listitem><para><link linkend="COMMENT"><parameter>comment</parameter></link></para></listitem>
814                 <listitem><para><link linkend="COPY"><parameter>copy</parameter></link></para></listitem>
815                 <listitem><para><link linkend="CREATEMASK"><parameter>create mask</parameter></link></para></listitem>
816                 <listitem><para><link linkend="CREATEMODE"><parameter>create mode</parameter></link></para></listitem>
817                 <listitem><para><link linkend="CSCPOLICY"><parameter>csc policy</parameter></link></para></listitem>
818                 
819                 <listitem><para><link linkend="DEFAULTCASE"><parameter>default case</parameter></link></para></listitem>
820                 <listitem><para><link linkend="DEFAULTDEVMODE"><parameter>default devmode</parameter></link></para></listitem>
821                 <listitem><para><link linkend="DELETEREADONLY"><parameter>delete readonly</parameter></link></para></listitem>
822                 <listitem><para><link linkend="DELETEVETOFILES"><parameter>delete veto files</parameter></link></para></listitem>
823                 <listitem><para><link linkend="DENYHOSTS"><parameter>deny hosts</parameter></link></para></listitem>
824                 <listitem><para><link linkend="DIRECTORY"><parameter>directory</parameter></link></para></listitem>
825                 <listitem><para><link linkend="DIRECTORYMASK"><parameter>directory mask</parameter></link></para></listitem>
826                 <listitem><para><link linkend="DIRECTORYMODE"><parameter>directory mode</parameter></link></para></listitem>
827                 <listitem><para><link linkend="DIRECTORYSECURITYMASK"><parameter>directory security mask</parameter></link></para></listitem>
828                 <listitem><para><link linkend="DONTDESCEND"><parameter>dont descend</parameter></link></para></listitem>
829                 <listitem><para><link linkend="DOSFILEMODE"><parameter>dos filemode</parameter></link></para></listitem>
830                 <listitem><para><link linkend="DOSFILETIMERESOLUTION"><parameter>dos filetime resolution</parameter></link></para></listitem>
831                 <listitem><para><link linkend="DOSFILETIMES"><parameter>dos filetimes</parameter></link></para></listitem>
832                 <listitem><para><link linkend="EXEC"><parameter>exec</parameter></link></para></listitem>
833                 <listitem><para><link linkend="FAKEDIRECTORYCREATETIMES"><parameter>fake directory create times</parameter></link></para></listitem>
834                 <listitem><para><link linkend="FAKEOPLOCKS"><parameter>fake oplocks</parameter></link></para></listitem>
835                 <listitem><para><link linkend="FOLLOWSYMLINKS"><parameter>follow symlinks</parameter></link></para></listitem>
836                 <listitem><para><link linkend="FORCECREATEMODE"><parameter>force create mode</parameter></link></para></listitem>
837                 <listitem><para><link linkend="FORCEDIRECTORYMODE"><parameter>force directory mode</parameter></link></para></listitem>
838                 <listitem><para><link linkend="FORCEDIRECTORYSECURITYMODE"><parameter>force directory security mode</parameter></link></para></listitem>
839                 <listitem><para><link linkend="FORCEGROUP"><parameter>force group</parameter></link></para></listitem>
840                 <listitem><para><link linkend="FORCESECURITYMODE"><parameter>force security mode</parameter></link></para></listitem>
841                 <listitem><para><link linkend="FORCEUSER"><parameter>force user</parameter></link></para></listitem>
842                 <listitem><para><link linkend="FSTYPE"><parameter>fstype</parameter></link></para></listitem>
843                 <listitem><para><link linkend="GROUP"><parameter>group</parameter></link></para></listitem>
844                 <listitem><para><link linkend="GUESTACCOUNT"><parameter>guest account</parameter></link></para></listitem>
845                 <listitem><para><link linkend="GUESTOK"><parameter>guest ok</parameter></link></para></listitem>
846                 <listitem><para><link linkend="GUESTONLY"><parameter>guest only</parameter></link></para></listitem>
847                 <listitem><para><link linkend="HIDEDOTFILES"><parameter>hide dot files</parameter></link></para></listitem>
848                 <listitem><para><link linkend="HIDEFILES"><parameter>hide files</parameter></link></para></listitem>
849                 <listitem><para><link linkend="HOSTSALLOW"><parameter>hosts allow</parameter></link></para></listitem>
850                 <listitem><para><link linkend="HOSTSDENY"><parameter>hosts deny</parameter></link></para></listitem>
851                 <listitem><para><link linkend="INCLUDE"><parameter>include</parameter></link></para></listitem>
852                 <listitem><para><link linkend="INHERITACLS"><parameter>inherit acls</parameter></link></para></listitem>
853                 <listitem><para><link linkend="INHERITPERMISSIONS"><parameter>inherit permissions</parameter></link></para></listitem>
854                 <listitem><para><link linkend="INVALIDUSERS"><parameter>invalid users</parameter></link></para></listitem>
855                 <listitem><para><link linkend="LEVEL2OPLOCKS"><parameter>level2 oplocks</parameter></link></para></listitem>
856                 <listitem><para><link linkend="LOCKING"><parameter>locking</parameter></link></para></listitem>
857                 <listitem><para><link linkend="LPPAUSECOMMAND"><parameter>lppause command</parameter></link></para></listitem>
858                 <listitem><para><link linkend="LPQCOMMAND"><parameter>lpq command</parameter></link></para></listitem>
859                 <listitem><para><link linkend="LPRESUMECOMMAND"><parameter>lpresume command</parameter></link></para></listitem>
860                 <listitem><para><link linkend="LPRMCOMMAND"><parameter>lprm command</parameter></link></para></listitem>
861                 <listitem><para><link linkend="MAGICOUTPUT"><parameter>magic output</parameter></link></para></listitem>
862                 <listitem><para><link linkend="MAGICSCRIPT"><parameter>magic script</parameter></link></para></listitem>
863                 <listitem><para><link linkend="MANGLECASE"><parameter>mangle case</parameter></link></para></listitem>
864                 <listitem><para><link linkend="MANGLEDMAP"><parameter>mangled map</parameter></link></para></listitem>
865                 <listitem><para><link linkend="MANGLEDNAMES"><parameter>mangled names</parameter></link></para></listitem>
866                 <listitem><para><link linkend="MANGLINGCHAR"><parameter>mangling char</parameter></link></para></listitem>
867                 <listitem><para><link linkend="MANGLINGMETHOD"><parameter>mangling method</parameter></link></para></listitem>
868                 <listitem><para><link linkend="MAPARCHIVE"><parameter>map archive</parameter></link></para></listitem>
869                 <listitem><para><link linkend="MAPHIDDEN"><parameter>map hidden</parameter></link></para></listitem>
870                 <listitem><para><link linkend="MAPSYSTEM"><parameter>map system</parameter></link></para></listitem>
871                 <listitem><para><link linkend="MAXCONNECTIONS"><parameter>max connections</parameter></link></para></listitem>
872                 <listitem><para><link linkend="MAXPRINTJOBS"><parameter>max print jobs</parameter></link></para></listitem>
873                 <listitem><para><link linkend="MINPRINTSPACE"><parameter>min print space</parameter></link></para></listitem>
874                 <listitem><para><link linkend="MSDFSPROXY"><parameter>msdfs proxy</parameter></link></para></listitem>
875                 <listitem><para><link linkend="MSDFSROOT"><parameter>msdfs root</parameter></link></para></listitem>
876                 <listitem><para><link linkend="NTACLSUPPORT"><parameter>nt acl support</parameter></link></para></listitem>
877                 <listitem><para><link linkend="ONLYGUEST"><parameter>only guest</parameter></link></para></listitem>
878                 <listitem><para><link linkend="ONLYUSER"><parameter>only user</parameter></link></para></listitem>
879                 <listitem><para><link linkend="OPLOCKCONTENTIONLIMIT"><parameter>oplock contention limit</parameter></link></para></listitem>
880                 <listitem><para><link linkend="OPLOCKS"><parameter>oplocks</parameter></link></para></listitem>
881                 <listitem><para><link linkend="PATH"><parameter>path</parameter></link></para></listitem>
882                 <listitem><para><link linkend="POSIXLOCKING"><parameter>posix locking</parameter></link></para></listitem>
883                 <listitem><para><link linkend="POSTEXEC"><parameter>postexec</parameter></link></para></listitem>
884                 <listitem><para><link linkend="POSTSCRIPT"><parameter>postscript</parameter></link></para></listitem>
885                 <listitem><para><link linkend="PREEXEC"><parameter>preexec</parameter></link></para></listitem>
886                 <listitem><para><link linkend="PREEXECCLOSE"><parameter>preexec close</parameter></link></para></listitem>
887                 <listitem><para><link linkend="PRESERVECASE"><parameter>preserve case</parameter></link></para></listitem>
888                 <listitem><para><link linkend="PRINTCOMMAND"><parameter>print command</parameter></link></para></listitem>
889                 <listitem><para><link linkend="PRINTOK"><parameter>print ok</parameter></link></para></listitem>
890                 <listitem><para><link linkend="PRINTABLE"><parameter>printable</parameter></link></para></listitem>
891                 <listitem><para><link linkend="PRINTER"><parameter>printer</parameter></link></para></listitem>
892                 <listitem><para><link linkend="PRINTERADMIN"><parameter>printer admin</parameter></link></para></listitem>
893                 <listitem><para><link linkend="PRINTERDRIVER"><parameter>printer driver</parameter></link></para></listitem>
894                 <listitem><para><link linkend="PRINTERDRIVERLOCATION"><parameter>printer driver location</parameter></link></para></listitem>
895                 <listitem><para><link linkend="PRINTERNAME"><parameter>printer name</parameter></link></para></listitem>
896                 <listitem><para><link linkend="PRINTING"><parameter>printing</parameter></link></para></listitem>
897                 <listitem><para><link linkend="PUBLIC"><parameter>public</parameter></link></para></listitem>
898                 <listitem><para><link linkend="QUEUEPAUSECOMMAND"><parameter>queuepause command</parameter></link></para></listitem>
899                 <listitem><para><link linkend="QUEUERESUMECOMMAND"><parameter>queueresume command</parameter></link></para></listitem>
900                 <listitem><para><link linkend="READLIST"><parameter>read list</parameter></link></para></listitem>
901                 <listitem><para><link linkend="READONLY"><parameter>read only</parameter></link></para></listitem>
902                 <listitem><para><link linkend="ROOTPOSTEXEC"><parameter>root postexec</parameter></link></para></listitem>
903                 <listitem><para><link linkend="ROOTPREEXEC"><parameter>root preexec</parameter></link></para></listitem>
904                 <listitem><para><link linkend="ROOTPREEXECCLOSE"><parameter>root preexec close</parameter></link></para></listitem>
905                 <listitem><para><link linkend="SECURITYMASK"><parameter>security mask</parameter></link></para></listitem>
906                 <listitem><para><link linkend="SETDIRECTORY"><parameter>set directory</parameter></link></para></listitem>
907                 <listitem><para><link linkend="SHAREMODES"><parameter>share modes</parameter></link></para></listitem>
908                 <listitem><para><link linkend="SHORTPRESERVECASE"><parameter>short preserve case</parameter></link></para></listitem>
909                 <listitem><para><link linkend="STRICTALLOCATE"><parameter>strict allocate</parameter></link></para></listitem>
910                 <listitem><para><link linkend="STRICTLOCKING"><parameter>strict locking</parameter></link></para></listitem>
911                 <listitem><para><link linkend="STRICTSYNC"><parameter>strict sync</parameter></link></para></listitem>
912                 <listitem><para><link linkend="SYNCALWAYS"><parameter>sync always</parameter></link></para></listitem>
913                 <listitem><para><link linkend="USECLIENTDRIVER"><parameter>use client driver</parameter></link></para></listitem>
914                 <listitem><para><link linkend="USER"><parameter>user</parameter></link></para></listitem>
915                 <listitem><para><link linkend="USERNAME"><parameter>username</parameter></link></para></listitem>
916                 <listitem><para><link linkend="USERS"><parameter>users</parameter></link></para></listitem>
917                 <listitem><para><link linkend="VALIDUSERS"><parameter>valid users</parameter></link></para></listitem>
918                 <listitem><para><link linkend="VETOFILES"><parameter>veto files</parameter></link></para></listitem>
919                 <listitem><para><link linkend="VETOOPLOCKFILES"><parameter>veto oplock files</parameter></link></para></listitem>
920                 <listitem><para><link linkend="VFSPATH"><parameter>vfs path</parameter></link></para></listitem>
921                 <listitem><para><link linkend="VFSOBJECT"><parameter>vfs object</parameter></link></para></listitem>
922                 <listitem><para><link linkend="VFSOPTIONS"><parameter>vfs options</parameter></link></para></listitem>
923                 <listitem><para><link linkend="VOLUME"><parameter>volume</parameter></link></para></listitem>
924                 <listitem><para><link linkend="WIDELINKS"><parameter>wide links</parameter></link></para></listitem>
925                 <listitem><para><link linkend="WRITABLE"><parameter>writable</parameter></link></para></listitem>
926                 <listitem><para><link linkend="WRITECACHESIZE"><parameter>write cache size</parameter></link></para></listitem>
927                 <listitem><para><link linkend="WRITELIST"><parameter>write list</parameter></link></para></listitem>
928                 <listitem><para><link linkend="WRITEOK"><parameter>write ok</parameter></link></para></listitem>
929                 <listitem><para><link linkend="WRITEABLE"><parameter>writeable</parameter></link></para></listitem>
930         </itemizedlist>
931
932 </refsect1>
933
934 <refsect1>
935         <title>EXPLANATION OF EACH PARAMETER</title>
936         
937         <variablelist>
938
939                 <varlistentry>
940                 <term><anchor id="ABORTSHUTDOWNSCRIPT">abort shutdown script (G)</term>
941                 <listitem><para><emphasis>This parameter only exists in the HEAD cvs branch</emphasis>
942                 This a full path name to a script called by
943                 <ulink url="smbd.8.html"><command>smbd(8)</command></ulink>  that
944                 should stop a shutdown procedure issued by the <link 
945                 linkend="SHUTDOWNSCRIPT"><parameter>shutdown script</parameter></link>.</para>
946                 
947                 <para>This command will be run as user.</para>
948
949                 <para>Default: <emphasis>None</emphasis>.</para>
950                 <para>Example: <command>abort shutdown script = /sbin/shutdown -c</command></para>
951                 </listitem>
952                 </varlistentry>
953
954                 <varlistentry>
955                 <term><anchor id="ADDPRINTERCOMMAND">addprinter command (G)</term>
956                 <listitem><para>With the introduction of MS-RPC based printing
957                 support for Windows NT/2000 clients in Samba 2.2, The MS Add
958                 Printer Wizard (APW) icon is now also available in the 
959                 "Printers..." folder displayed a share listing.  The APW
960                 allows for printers to be add remotely to a Samba or Windows 
961                 NT/2000 print server.</para>
962                 
963                 <para>For a Samba host this means that the printer must be 
964                 physically added to the underlying printing system.  The <parameter>add 
965                 printer command</parameter> defines a script to be run which 
966                 will perform the necessary operations for adding the printer
967                 to the print system and to add the appropriate service definition 
968                 to the  <filename>smb.conf</filename> file in order that it can be 
969                 shared by <ulink url="smbd.8.html"><command>smbd(8)</command>
970                 </ulink>.</para>
971                 
972                 <para>The <parameter>addprinter command</parameter> is
973                 automatically invoked with the following parameter (in 
974                 order:</para>
975                 
976                 <itemizedlist>
977                         <listitem><para><parameter>printer name</parameter></para></listitem>
978                         <listitem><para><parameter>share name</parameter></para></listitem>
979                         <listitem><para><parameter>port name</parameter></para></listitem>
980                         <listitem><para><parameter>driver name</parameter></para></listitem>
981                         <listitem><para><parameter>location</parameter></para></listitem>
982                         <listitem><para><parameter>Windows 9x driver location</parameter>
983                         </para></listitem>
984                 </itemizedlist>
985                 
986                 <para>All parameters are filled in from the PRINTER_INFO_2 structure sent 
987                 by the Windows NT/2000 client with one exception.  The "Windows 9x
988                 driver location" parameter is included for backwards compatibility
989                 only.  The remaining fields in the structure are generated from answers
990                 to the APW questions.</para>
991                 
992                 <para>Once the <parameter>addprinter command</parameter> has 
993                 been executed, <command>smbd</command> will reparse the <filename>
994                 smb.conf</filename> to determine if the share defined by the APW
995                 exists.  If the sharename is still invalid, then <command>smbd
996                 </command> will return an ACCESS_DENIED error to the client.</para>
997                 
998                 <para>See also <link linkend="DELETEPRINTERCOMMAND"><parameter>
999                 deleteprinter command</parameter></link>, <link 
1000                 linkend="printing"><parameter>printing</parameter></link>,
1001                 <link linkend="SHOWADDPRINTERWIZARD"><parameter>show add
1002                 printer wizard</parameter></link></para>
1003                 
1004                 <para>Default: <emphasis>none</emphasis></para>
1005                 <para>Example: <command>addprinter command = /usr/bin/addprinter
1006                 </command></para>
1007                 </listitem>
1008                 </varlistentry>
1009
1010
1011
1012                 <varlistentry>
1013                 <term><anchor id="ADDSHARECOMMAND">add share command (G)</term>
1014                 <listitem><para>Samba 2.2.0 introduced the ability to dynamically 
1015                 add and delete shares via the Windows NT 4.0 Server Manager.  The 
1016                 <parameter>add share command</parameter> is used to define an 
1017                 external program or script which will add a new service definition 
1018                 to <filename>smb.conf</filename>.  In order to successfully 
1019                 execute the <parameter>add share command</parameter>, <command>smbd</command>
1020                 requires that the administrator be connected using a root account (i.e. 
1021                 uid == 0).
1022                 </para>
1023                 
1024                 <para>
1025                 When executed, <command>smbd</command> will automatically invoke the 
1026                 <parameter>add share command</parameter> with four parameters.
1027                 </para>
1028                 
1029                 <itemizedlist>
1030                         <listitem><para><parameter>configFile</parameter> - the location 
1031                         of the global <filename>smb.conf</filename> file. 
1032                         </para></listitem>
1033                         
1034                         <listitem><para><parameter>shareName</parameter> - the name of the new 
1035                         share.
1036                         </para></listitem>
1037                         
1038                         <listitem><para><parameter>pathName</parameter> - path to an **existing**
1039                         directory on disk.
1040                         </para></listitem>
1041                         
1042                         <listitem><para><parameter>comment</parameter> - comment string to associate 
1043                         with the new share.
1044                         </para></listitem>
1045                 </itemizedlist>
1046                 
1047                 <para>
1048                 This parameter is only used for add file shares.  To add printer shares, 
1049                 see the <link linkend="ADDPRINTERCOMMAND"><parameter>addprinter 
1050                 command</parameter></link>.
1051                 </para>
1052                 
1053                 <para>
1054                 See also <link linkend="CHANGESHARECOMMAND"><parameter>change share 
1055                 command</parameter></link>, <link linkend="DELETESHARECOMMAND"><parameter>delete share
1056                 command</parameter></link>.
1057                 </para>
1058                 
1059                 <para>Default: <emphasis>none</emphasis></para>
1060                 <para>Example: <command>add share command = /usr/local/bin/addshare</command></para>
1061                 </listitem>
1062                 </varlistentry>
1063
1064
1065
1066                 <varlistentry>
1067                 <term><anchor id="ADDMACHINESCRIPT">add machine script (G)</term>
1068                 <listitem><para>This is the full pathname to a script that will 
1069                 be run by <ulink url="smbd.8.html">smbd(8)</ulink>  when a machine is added
1070                 to it's domain using the administrator username and password method. </para>
1071
1072                 <para>This option is only required when using sam back-ends tied to the
1073                 Unix uid method of RID calculation such as smbpasswd.  This option is only
1074                 available in Samba 3.0.</para>
1075
1076                 <para>Default: <command>add machine script = &lt;empty string&gt;
1077                 </command></para>       
1078
1079                 <para>Example: <command>add machine script = /usr/sbin/adduser -n -g machines -c Machine -d /dev/null -s /bin/false %u
1080                 </command></para>
1081                 </listitem>
1082                 </varlistentry>
1083
1084                 <varlistentry>
1085                 <term><anchor id="ADSSERVER">ads server (G)</term>
1086                 <listitem><para>If this option is specified, samba does 
1087                 not try to figure out what ads server to use itself, but 
1088                 uses the specified ads server. Either one DNS name or IP 
1089                 address can be used.</para>
1090
1091                 <para>Default: <command>ads server = </command></para>
1092
1093                 <para>Example: <command>ads server = 192.168.1.2</command></para>
1094                 </listitem>
1095                 </varlistentry>
1096
1097                 <varlistentry>
1098                 <term><anchor id="ADDUSERSCRIPT">add user script (G)</term>
1099                 <listitem><para>This is the full pathname to a script that will 
1100                 be run <emphasis>AS ROOT</emphasis> by <ulink url="smbd.8.html">smbd(8)
1101                 </ulink> under special circumstances described below.</para>
1102
1103                 <para>Normally, a Samba server requires that UNIX users are 
1104                 created for all users accessing files on this server. For sites 
1105                 that use Windows NT account databases as their primary user database 
1106                 creating these users and keeping the user list in sync with the 
1107                 Windows NT PDC is an onerous task. This option allows <ulink 
1108                 url="smbd.8.html">smbd</ulink> to create the required UNIX users 
1109                 <emphasis>ON DEMAND</emphasis> when a user accesses the Samba server.</para>
1110
1111                 <para>In order to use this option, <ulink url="smbd.8.html">smbd</ulink> 
1112                 must <emphasis>NOT</emphasis> be set to <parameter>security = share</parameter>
1113                 and <parameter>add user script</parameter>
1114                 must be set to a full pathname for a script that will create a UNIX 
1115                 user given one argument of <parameter>%u</parameter>, which expands into 
1116                 the UNIX user name to create.</para>
1117
1118                 <para>When the Windows user attempts to access the Samba server, 
1119                 at login (session setup in the SMB protocol) time, <ulink url="smbd.8.html">
1120                 smbd</ulink> contacts the <parameter>password server</parameter> and 
1121                 attempts to authenticate the given user with the given password. If the 
1122                 authentication succeeds then <command>smbd</command> 
1123                 attempts to find a UNIX user in the UNIX password database to map the 
1124                 Windows user into. If this lookup fails, and <parameter>add user script
1125                 </parameter> is set then <command>smbd</command> will
1126                 call the specified script <emphasis>AS ROOT</emphasis>, expanding 
1127                 any <parameter>%u</parameter> argument to be the user name to create.</para>
1128
1129                 <para>If this script successfully creates the user then <command>smbd
1130                 </command> will continue on as though the UNIX user
1131                 already existed. In this way, UNIX users are dynamically created to
1132                 match existing Windows NT accounts.</para>
1133
1134                 <para>See also <link linkend="SECURITY"><parameter>
1135                 security</parameter></link>, <link linkend="PASSWORDSERVER">
1136                 <parameter>password server</parameter></link>, 
1137                 <link linkend="DELETEUSERSCRIPT"><parameter>delete user 
1138                 script</parameter></link>.</para>
1139
1140                 <para>Default: <command>add user script = &lt;empty string&gt;
1141                 </command></para>       
1142
1143                 <para>Example: <command>add user script = /usr/local/samba/bin/add_user 
1144                 %u</command></para>
1145                 </listitem>
1146                 </varlistentry>
1147                 
1148                 <varlistentry><term><anchor id="ADDGROUPSCRIPT">add group script (G)</term>
1149                 <listitem><para>This is the full pathname to a script that will 
1150                 be run <emphasis>AS ROOT</emphasis> by <ulink
1151                 url="smbd.8.html">smbd(8)</ulink> when a new group is
1152                 requested. It will expand any
1153                 <parameter>%g</parameter> to the group name passed.
1154                 This script is only useful for installations using the
1155                 Windows NT domain administration tools. The script is
1156                 free to create a group with an arbitrary name to
1157                 circumvent unix group name restrictions. In that case
1158                 the script must print the numeric gid of the created
1159                 group on stdout.
1160                 </para></listitem>
1161                 </varlistentry>
1162
1163                 <varlistentry>
1164                 <term><anchor id="ADMINUSERS">admin users (S)</term>
1165                 <listitem><para>This is a list of users who will be granted 
1166                 administrative privileges on the share. This means that they 
1167                 will do all file operations as the super-user (root).</para>
1168
1169                 <para>You should use this option very carefully, as any user in 
1170                 this list will be able to do anything they like on the share, 
1171                 irrespective of file permissions.</para>
1172
1173                 <para>Default: <emphasis>no admin users</emphasis></para>
1174
1175                 <para>Example: <command>admin users = jason</command></para>
1176                 </listitem>
1177                 </varlistentry>
1178
1179                 <varlistentry>
1180                 <term><anchor id="ADDUSERTOGROUPSCRIPT">add user to group script (G)</term>
1181                 <listitem><para>Full path to the script that will be called when 
1182                 a user is added to a group using the Windows NT domain administration 
1183                 tools. It will be run by <ulink url="smbd.8.html">smbd(8)</ulink> 
1184                 <emphasis>AS ROOT</emphasis>. Any <parameter>%g</parameter> will be 
1185                 replaced with the group name and any <parameter>%u</parameter> will 
1186                 be replaced with the user name.
1187                 </para>
1188
1189                 <para>Default: <command>add user to group script = </command></para>
1190
1191                 <para>Example: <command>add user to group script = /usr/sbin/adduser %u %g</command></para>
1192                 
1193                 </listitem>
1194                 </varlistentry>
1195
1196                 <varlistentry>
1197                 <term><anchor id="ALLOWHOSTS">allow hosts (S)</term>
1198                 <listitem><para>Synonym for <link linkend="HOSTSALLOW">
1199                 <parameter>hosts allow</parameter></link>.</para></listitem>
1200                 </varlistentry>
1201                 
1202                 <varlistentry>
1203                 <term><anchor id="ALGORITHMICRIDBASE">algorithmic rid base (G)</term>
1204                 <listitem><para>This determines how Samba will use its
1205                 algorithmic mapping from uids/gid to the RIDs needed to construct
1206                 NT Security Identifiers.</para>
1207
1208                 <para>Setting this option to a larger value could be useful to sites
1209                 transitioning from WinNT and Win2k, as existing user and 
1210                 group rids would otherwise clash with sytem users etc. 
1211                 </para>
1212
1213                 <para>All UIDs and GIDs must be able to be resolved into SIDs for  
1214                 the correct operation of ACLs on the server.  As such the algorithmic
1215                 mapping can't be 'turned off', but pushing it 'out of the way' should
1216                 resolve the issues.  Users and groups can then be assigned 'low' RIDs
1217                 in arbitary-rid supporting backends. </para>
1218
1219                 <para>Default: <command>algorithmic rid base = 1000</command></para>
1220
1221                 <para>Example: <command>algorithmic rid base = 100000</command></para>
1222                 </listitem>
1223                 </varlistentry>
1224                 
1225                 <varlistentry>
1226                 <term><anchor id="ALLOWTRUSTEDDOMAINS">allow trusted domains (G)</term>
1227                 <listitem><para>This option only takes effect when the <link 
1228                 linkend="SECURITY"><parameter>security</parameter></link> option is set to 
1229                 <constant>server</constant> or <constant>domain</constant>.  
1230                 If it is set to no, then attempts to connect to a resource from 
1231                 a domain or workgroup other than the one which <ulink url="smbd.8.html">smbd</ulink> is running 
1232                 in will fail, even if that domain is trusted by the remote server 
1233                 doing the authentication.</para>
1234                 
1235                 <para>This is useful if you only want your Samba server to 
1236                 serve resources to users in the domain it is a member of. As 
1237                 an example, suppose that there are two domains DOMA and DOMB.  DOMB 
1238                 is trusted by DOMA, which contains the Samba server.  Under normal 
1239                 circumstances, a user with an account in DOMB can then access the 
1240                 resources of a UNIX account with the same account name on the 
1241                 Samba server even if they do not have an account in DOMA.  This 
1242                 can make implementing a security boundary difficult.</para>
1243
1244                 <para>Default: <command>allow trusted domains = yes</command></para>
1245
1246                 </listitem>
1247                 </varlistentry>
1248                 
1249                 <varlistentry>
1250                 <term><anchor id="ANNOUNCEAS">announce as (G)</term>
1251                 <listitem><para>This specifies what type of server 
1252                 <ulink url="nmbd.8.html"><command>nmbd</command></ulink> 
1253                 will announce itself as, to a network neighborhood browse 
1254                 list. By default this is set to Windows NT. The valid options 
1255                 are : "NT Server" (which can also be written as "NT"), 
1256                 "NT Workstation", "Win95" or "WfW" meaning Windows NT Server, 
1257                 Windows NT Workstation, Windows 95 and Windows for Workgroups 
1258                 respectively. Do not change this parameter unless you have a 
1259                 specific need to stop Samba appearing as an NT server as this 
1260                 may prevent Samba servers from participating as browser servers 
1261                 correctly.</para>
1262
1263                 <para>Default: <command>announce as = NT Server</command></para>
1264                 
1265                 <para>Example: <command>announce as = Win95</command></para>
1266                 </listitem>
1267                 </varlistentry>
1268                 
1269
1270
1271                 <varlistentry>
1272                 <term><anchor id="ANNOUNCEVERSION">announce version (G)</term>
1273                 <listitem><para>This specifies the major and minor version numbers 
1274                 that nmbd will use when announcing itself as a server. The default 
1275                 is 4.9.  Do not change this parameter unless you have a specific 
1276                 need to set a Samba server to be a downlevel server.</para>
1277
1278                 <para>Default: <command>announce version = 4.9</command></para>
1279
1280                 <para>Example: <command>announce version = 2.0</command></para>
1281                 </listitem>
1282                 </varlistentry>
1283
1284
1285
1286                 <varlistentry>
1287                 <term><anchor id="AUTOSERVICES">auto services (G)</term>
1288                 <listitem><para>This is a synonym for the <link linkend="PRELOAD">
1289                 <parameter>preload</parameter></link>.</para>
1290                 </listitem>
1291                 </varlistentry>
1292                 
1293
1294
1295                 <varlistentry>
1296                 <term><anchor id="AUTHMETHODS">auth methods (G)</term>
1297                 <listitem><para>This option allows the administrator to chose what
1298                 authentication methods <command>smbd</command> will use when authenticating
1299                 a user.  This option defaults to sensible values based on <link linkend="SECURITY"><parameter>
1300                 security</parameter></link>.
1301
1302                 Each entry in the list attempts to authenticate the user in turn, until
1303                 the user authenticates.  In practice only one method will ever actually 
1304                 be able to complete the authentication.
1305                 </para>
1306
1307                 <para>Default: <command>auth methods = &lt;empty string&gt;</command></para>
1308                 <para>Example: <command>auth methods = guest sam ntdomain</command></para>
1309                 </listitem>
1310                 </varlistentry>
1311
1312
1313                 <varlistentry>
1314                 <term><anchor id="AVAILABLE">available (S)</term>
1315                 <listitem><para>This parameter lets you "turn off" a service. If 
1316                 <parameter>available = no</parameter>, then <emphasis>ALL</emphasis> 
1317                 attempts to connect to the service will fail. Such failures are 
1318                 logged.</para>
1319
1320                 <para>Default: <command>available = yes</command></para>
1321                 
1322                 </listitem>
1323                 </varlistentry>
1324                 
1325
1326
1327                 <varlistentry>
1328                 <term><anchor id="BINDINTERFACESONLY">bind interfaces only (G)</term>
1329                 <listitem><para>This global parameter allows the Samba admin 
1330                 to limit what interfaces on a machine will serve SMB requests. It 
1331                 affects file service <ulink url="smbd.8.html">smbd(8)</ulink> and 
1332                 name service <ulink url="nmbd.8.html">nmbd(8)</ulink> in slightly 
1333                 different ways.</para>
1334
1335                 <para>For name service it causes <command>nmbd</command> to bind 
1336                 to ports 137 and 138 on the interfaces listed in the <link 
1337                 linkend="INTERFACES">interfaces</link> parameter. <command>nmbd
1338                 </command> also binds to the "all addresses" interface (0.0.0.0) 
1339                 on ports 137 and 138 for the purposes of reading broadcast messages. 
1340                 If this option is not set then <command>nmbd</command> will service 
1341                 name requests on all of these sockets. If <parameter>bind interfaces
1342                 only</parameter> is set then <command>nmbd</command> will check the 
1343                 source address of any packets coming in on the broadcast sockets 
1344                 and discard any that don't match the broadcast addresses of the 
1345                 interfaces in the <parameter>interfaces</parameter> parameter list. 
1346                 As unicast packets are received on the other sockets it allows 
1347                 <command>nmbd</command> to refuse to serve names to machines that 
1348                 send packets that arrive through any interfaces not listed in the
1349                 <parameter>interfaces</parameter> list.  IP Source address spoofing
1350                 does defeat this simple check, however, so it must not be used
1351                 seriously as a security feature for <command>nmbd</command>.</para>
1352
1353                 <para>For file service it causes <ulink url="smbd.8.html">smbd(8)</ulink>
1354                 to bind only to the interface list given in the <link linkend="INTERFACES">
1355                 interfaces</link> parameter. This restricts the networks that 
1356                 <command>smbd</command> will serve to packets coming in those 
1357                 interfaces.  Note that you should not use this parameter for machines 
1358                 that are serving PPP or other intermittent or non-broadcast network 
1359                 interfaces as it will not cope with non-permanent interfaces.</para>
1360
1361                 <para>If <parameter>bind interfaces only</parameter> is set then 
1362                 unless the network address <emphasis>127.0.0.1</emphasis> is added 
1363                 to the <parameter>interfaces</parameter> parameter list <ulink
1364                 url="smbpasswd.8.html"><command>smbpasswd(8)</command></ulink> 
1365                 and <ulink url="swat.8.html"><command>swat(8)</command></ulink> may 
1366                 not work as expected due to the reasons covered below.</para>
1367
1368                 <para>To change a users SMB password, the <command>smbpasswd</command>
1369                 by default connects to the <emphasis>localhost - 127.0.0.1</emphasis> 
1370                 address as an SMB client to issue the password change request. If 
1371                 <parameter>bind interfaces only</parameter> is set then unless the 
1372                 network address <emphasis>127.0.0.1</emphasis> is added to the
1373                 <parameter>interfaces</parameter> parameter list then <command>
1374                 smbpasswd</command> will fail to connect in it's default mode. 
1375                 <command>smbpasswd</command> can be forced to use the primary IP interface 
1376                 of the local host by using its <ulink url="smbpasswd.8.html#minusr">
1377                 <parameter>-r <replaceable>remote machine</replaceable></parameter>
1378                 </ulink> parameter, with <replaceable>remote machine</replaceable> set 
1379                 to the IP name of the primary interface of the local host.</para>
1380
1381                 <para>The <command>swat</command> status page tries to connect with
1382                 <command>smbd</command> and <command>nmbd</command> at the address 
1383                 <emphasis>127.0.0.1</emphasis> to determine if they are running.  
1384                 Not adding <emphasis>127.0.0.1</emphasis>  will cause <command>
1385                 smbd</command> and <command>nmbd</command> to always show
1386                 "not running" even if they really are.  This can prevent <command>
1387                 swat</command> from starting/stopping/restarting <command>smbd</command>
1388                 and <command>nmbd</command>.</para>
1389
1390                 <para>Default: <command>bind interfaces only = no</command></para>
1391                 
1392                 </listitem>
1393                 </varlistentry>
1394
1395
1396
1397                 <varlistentry>
1398                 <term><anchor id="BLOCKINGLOCKS">blocking locks (S)</term>
1399                 <listitem><para>This parameter controls the behavior of <ulink 
1400                 url="smbd.8.html">smbd(8)</ulink> when given a request by a client 
1401                 to obtain a byte range lock on a region of an open file, and the 
1402                 request has a time limit associated with it.</para>
1403                 
1404                 <para>If this parameter is set and the lock range requested 
1405                 cannot be immediately satisfied, samba will internally 
1406                 queue the lock request, and periodically attempt to obtain 
1407                 the lock until the timeout period expires.</para>
1408
1409                 <para>If this parameter is set to <constant>no</constant>, then 
1410                 samba will behave as previous versions of Samba would and 
1411                 will fail the lock request immediately if the lock range 
1412                 cannot be obtained.</para>
1413
1414                 <para>Default: <command>blocking locks = yes</command></para>
1415
1416                 </listitem>
1417                 </varlistentry>
1418         
1419                 <varlistentry>
1420                 <term><anchor id="BLOCKSIZE">block size (S)</term>
1421                 <listitem><para>This parameter controls the behavior of 
1422                 <ulink url="smbd.8.html">smbd(8)</ulink> when reporting disk free 
1423                 sizes. By default, this reports a disk block size of 1024 bytes.
1424                 </para>        
1425                 
1426                 <para>Changing this parameter may have some effect on the
1427                 efficiency of client writes, this is not yet confirmed. This
1428                 parameter was added to allow advanced administrators to change
1429                 it (usually to a higher value) and test the effect it has on
1430                 client write performance without re-compiling the code. As this
1431                 is an experimental option it may be removed in a future release.
1432                 </para>
1433
1434                 <para>Changing this option does not change the disk free reporting
1435                 size, just the block size unit reported to the client.</para>
1436
1437                                                                                                                                                         <para>Default: <command>block size = 1024</command></para>
1438                                                                                                                                                                         <para>Example: <command>block size = 65536</command></para>
1439
1440                                                                                                                                                                                         </listitem>
1441                                                                                                                                                                                                         </varlistentry>
1442                                                                                                                                                                                                                 
1443
1444
1445                 <varlistentry>
1446                 <term><anchor id="BROWSABLE">browsable (S)</term>
1447                 <listitem><para>See the <link linkend="BROWSEABLE"><parameter>
1448                 browseable</parameter></link>.</para></listitem>
1449                 </varlistentry>
1450                 
1451
1452
1453                 <varlistentry>
1454                 <term><anchor id="BROWSELIST">browse list (G)</term>
1455                 <listitem><para>This controls whether <ulink url="smbd.8.html">
1456                 <command>smbd(8)</command></ulink> will serve a browse list to 
1457                 a client doing a <command>NetServerEnum</command> call. Normally 
1458                 set to <constant>yes</constant>. You should never need to change 
1459                 this.</para>
1460                 
1461                 <para>Default: <command>browse list = yes</command></para></listitem>
1462                 </varlistentry>
1463                 
1464
1465
1466                 <varlistentry>
1467                 <term><anchor id="BROWSEABLE">browseable (S)</term>
1468                 <listitem><para>This controls whether this share is seen in 
1469                 the list of available shares in a net view and in the browse list.</para>
1470
1471                 <para>Default: <command>browseable = yes</command></para>
1472                 </listitem>
1473                 </varlistentry>
1474                 
1475
1476
1477                 <varlistentry>
1478                 <term><anchor id="CASESENSITIVE">case sensitive (S)</term>
1479                 <listitem><para>See the discussion in the section <link 
1480                 linkend="NAMEMANGLINGSECT">NAME MANGLING</link>.</para>
1481                 
1482                 <para>Default: <command>case sensitive = no</command></para>
1483                 </listitem>
1484                 </varlistentry>
1485
1486
1487
1488                 <varlistentry>
1489                 <term><anchor id="CASESIGNAMES">casesignames (S)</term>
1490                 <listitem><para>Synonym for <link linkend="CASESENSITIVE">case 
1491                 sensitive</link>.</para></listitem>
1492                 </varlistentry>
1493                 
1494                 
1495                 
1496                 <varlistentry>
1497                 <term><anchor id="CHANGENOTIFYTIMEOUT">change notify timeout (G)</term>
1498                 <listitem><para>This SMB allows a client to tell a server to 
1499                 "watch" a particular directory for any changes and only reply to
1500                 the SMB request when a change has occurred. Such constant scanning of
1501                 a directory is expensive under UNIX, hence an <ulink url="smbd.8.html">
1502                 <command>smbd(8)</command></ulink> daemon only performs such a scan 
1503                 on each requested directory once every <parameter>change notify 
1504                 timeout</parameter> seconds.</para>
1505
1506                 <para>Default: <command>change notify timeout = 60</command></para>
1507                 <para>Example: <command>change notify timeout = 300</command></para>
1508
1509                 <para>Would change the scan time to every 5 minutes.</para></listitem>
1510                 </varlistentry>
1511                 
1512
1513
1514                 <varlistentry>
1515                 <term><anchor id="CHANGESHARECOMMAND">change share command (G)</term>
1516                 <listitem><para>Samba 2.2.0 introduced the ability to dynamically 
1517                 add and delete shares via the Windows NT 4.0 Server Manager.  The 
1518                 <parameter>change share command</parameter> is used to define an 
1519                 external program or script which will modify an existing service definition 
1520                 in <filename>smb.conf</filename>.  In order to successfully 
1521                 execute the <parameter>change share command</parameter>, <command>smbd</command>
1522                 requires that the administrator be connected using a root account (i.e. 
1523                 uid == 0).
1524                 </para>
1525                 
1526                 <para>
1527                 When executed, <command>smbd</command> will automatically invoke the 
1528                 <parameter>change share command</parameter> with four parameters.
1529                 </para>
1530                 
1531                 <itemizedlist>
1532                         <listitem><para><parameter>configFile</parameter> - the location 
1533                         of the global <filename>smb.conf</filename> file. 
1534                         </para></listitem>
1535                         
1536                         <listitem><para><parameter>shareName</parameter> - the name of the new 
1537                         share.
1538                         </para></listitem>
1539                         
1540                         <listitem><para><parameter>pathName</parameter> - path to an **existing**
1541                         directory on disk.
1542                         </para></listitem>
1543                         
1544                         <listitem><para><parameter>comment</parameter> - comment string to associate 
1545                         with the new share.
1546                         </para></listitem>
1547                 </itemizedlist>
1548                 
1549                 <para>
1550                 This parameter is only used modify existing file shares definitions.  To modify 
1551                 printer shares, use the "Printers..." folder as seen when browsing the Samba host.
1552                 </para>
1553                 
1554                 <para>
1555                 See also <link linkend="ADDSHARECOMMAND"><parameter>add share
1556                 command</parameter></link>, <link linkend="DELETESHARECOMMAND"><parameter>delete 
1557                 share command</parameter></link>.
1558                 </para>
1559                 
1560                 <para>Default: <emphasis>none</emphasis></para>
1561                 <para>Example: <command>change share command = /usr/local/bin/addshare</command></para>
1562                 </listitem>
1563                 </varlistentry>
1564
1565
1566                 
1567
1568                 
1569                 <varlistentry>
1570                 <term><anchor id="COMMENT">comment (S)</term>
1571                 <listitem><para>This is a text field that is seen next to a share 
1572                 when a client does a queries the server, either via the network 
1573                 neighborhood or via <command>net view</command> to list what shares 
1574                 are available.</para>
1575
1576                 <para>If you want to set the string that is displayed next to the 
1577                 machine name then see the <link linkend="SERVERSTRING"><parameter>
1578                 server string</parameter></link> parameter.</para>
1579
1580                 <para>Default: <emphasis>No comment string</emphasis></para>
1581                 <para>Example: <command>comment = Fred's Files</command></para></listitem>
1582                 </varlistentry>
1583                 
1584                 
1585                 
1586                 <varlistentry>
1587                 <term><anchor id="CONFIGFILE">config file (G)</term>
1588                 <listitem><para>This allows you to override the config file 
1589                 to use, instead of the default (usually <filename>smb.conf</filename>). 
1590                 There is a chicken and egg problem here as this option is set 
1591                 in the config file!</para>
1592
1593                 <para>For this reason, if the name of the config file has changed 
1594                 when the parameters are loaded then it will reload them from 
1595                 the new config file.</para>
1596
1597                 <para>This option takes the usual substitutions, which can 
1598                 be very useful.</para>
1599
1600                 <para>If the config file doesn't exist then it won't be loaded 
1601                 (allowing you to special case the config files of just a few 
1602                 clients).</para>
1603
1604                 <para>Example: <command>config file = /usr/local/samba/lib/smb.conf.%m
1605                 </command></para></listitem>
1606                 </varlistentry>
1607                 
1608                 
1609                 
1610                 <varlistentry>
1611                 <term><anchor id="COPY">copy (S)</term>
1612                 <listitem><para>This parameter allows you to "clone" service 
1613                 entries. The specified service is simply duplicated under the 
1614                 current service's name. Any parameters specified in the current 
1615                 section will override those in the section being copied.</para>
1616
1617                 <para>This feature lets you set up a 'template' service and 
1618                 create similar services easily. Note that the service being 
1619                 copied must occur earlier in the configuration file than the 
1620                 service doing the copying.</para>
1621
1622                 <para>Default: <emphasis>no value</emphasis></para>
1623                 <para>Example: <command>copy = otherservice</command></para></listitem>
1624                 </varlistentry>
1625                 
1626                 
1627                 
1628                 <varlistentry>
1629                 <term><anchor id="CREATEMASK">create mask (S)</term>
1630                 <listitem><para>A synonym for this parameter is 
1631                 <link linkend="CREATEMODE"><parameter>create mode</parameter>
1632                 </link>.</para>
1633
1634                 <para>When a file is created, the necessary permissions are 
1635                 calculated according to the mapping from DOS modes to UNIX 
1636                 permissions, and the resulting UNIX mode is then bit-wise 'AND'ed 
1637                 with this parameter. This parameter may be thought of as a bit-wise 
1638                 MASK for the UNIX modes of a file. Any bit <emphasis>not</emphasis> 
1639                 set here will be removed from the modes set on a file when it is 
1640                 created.</para>
1641
1642                 <para>The default value of this parameter removes the 
1643                 'group' and 'other' write and execute bits from the UNIX modes.</para>
1644
1645                 <para>Following this Samba will bit-wise 'OR' the UNIX mode created 
1646                 from this parameter with the value of the <link
1647                 linkend="FORCECREATEMODE"><parameter>force create mode</parameter></link>
1648                 parameter which is set to 000 by default.</para>
1649
1650                 <para>This parameter does not affect directory modes. See the 
1651                 parameter <link linkend="DIRECTORYMODE"><parameter>directory mode
1652                 </parameter></link> for details.</para>
1653
1654                 <para>See also the <link linkend="FORCECREATEMODE"><parameter>force 
1655                 create mode</parameter></link> parameter for forcing particular mode 
1656                 bits to be set on created files. See also the <link linkend="DIRECTORYMODE">
1657                 <parameter>directory mode</parameter></link> parameter for masking 
1658                 mode bits on created directories.  See also the <link linkend="INHERITPERMISSIONS">
1659                 <parameter>inherit permissions</parameter></link> parameter.</para>
1660
1661                 <para>Note that this parameter does not apply to permissions
1662                 set by Windows NT/2000 ACL editors. If the administrator wishes to enforce
1663                 a mask on access control lists also, they need to set the <link 
1664                 linkend="SECURITYMASK"><parameter>security mask</parameter></link>.</para>
1665
1666                 <para>Default: <command>create mask = 0744</command></para>
1667                 <para>Example: <command>create mask = 0775</command></para></listitem>
1668                 </varlistentry>
1669                 
1670                 
1671                 
1672                 <varlistentry>
1673                 <term><anchor id="CREATEMODE">create mode (S)</term>
1674                 <listitem><para>This is a synonym for <link linkend="CREATEMASK"><parameter>
1675                 create mask</parameter></link>.</para></listitem>
1676                 </varlistentry>
1677                 
1678                 
1679                 <varlistentry>
1680                 <term><anchor id="CSCPOLICY">csc policy (S)</term>
1681                 <listitem><para>This stands for <emphasis>client-side caching 
1682                 policy</emphasis>, and specifies how clients capable of offline
1683                 caching will cache the files in the share. The valid values
1684                 are: manual, documents, programs, disable.</para>
1685
1686                 <para>These values correspond to those used on Windows
1687                 servers.</para>
1688
1689                 <para>For example, shares containing roaming profiles can have
1690                 offline caching disabled using <command>csc policy = disable
1691                 </command>.</para>
1692
1693                 <para>Default: <command>csc policy = manual</command></para>
1694                 <para>Example: <command>csc policy = programs</command></para>
1695                 </listitem>
1696                 </varlistentry>
1697                 
1698                 <varlistentry>
1699                 <term><anchor id="DEADTIME">deadtime (G)</term>
1700                 <listitem><para>The value of the parameter (a decimal integer) 
1701                 represents the number of minutes of inactivity before a connection 
1702                 is considered dead, and it is disconnected. The deadtime only takes 
1703                 effect if the number of open files is zero.</para>
1704                 
1705                 <para>This is useful to stop a server's resources being 
1706                 exhausted by a large number of inactive connections.</para>
1707
1708                 <para>Most clients have an auto-reconnect feature when a 
1709                 connection is broken so in most cases this parameter should be 
1710                 transparent to users.</para>
1711
1712                 <para>Using this parameter with a timeout of a few minutes 
1713                 is recommended for most systems.</para>
1714
1715                 <para>A deadtime of zero indicates that no auto-disconnection 
1716                 should be performed.</para>
1717
1718                 <para>Default: <command>deadtime = 0</command></para>
1719                 <para>Example: <command>deadtime = 15</command></para></listitem>
1720                 </varlistentry>
1721
1722
1723
1724                 <varlistentry>
1725                 <term><anchor id="DEBUGHIRESTIMESTAMP">debug hires timestamp (G)</term>
1726                 <listitem><para>Sometimes the timestamps in the log messages 
1727                 are needed with a resolution of higher that seconds, this 
1728                 boolean parameter adds microsecond resolution to the timestamp 
1729                 message header when turned on.</para>
1730
1731                 <para>Note that the parameter <link linkend="DEBUGTIMESTAMP"><parameter>
1732                 debug timestamp</parameter></link> must be on for this to have an 
1733                 effect.</para>
1734
1735                 <para>Default: <command>debug hires timestamp = no</command></para>
1736                 </listitem>
1737                 </varlistentry>
1738                 
1739
1740
1741                 <varlistentry>
1742                 <term><anchor id="DEBUGPID">debug pid (G)</term>
1743                 <listitem><para>When using only one log file for more then one 
1744                 forked <ulink url="smbd.8.html">smbd</ulink>-process there may be hard to follow which process 
1745                 outputs which message. This boolean parameter is adds the process-id 
1746                 to the timestamp message headers in the logfile when turned on.</para>
1747
1748                 <para>Note that the parameter <link linkend="DEBUGTIMESTAMP"><parameter>
1749                 debug timestamp</parameter></link> must be on for this to have an 
1750                 effect.</para>
1751
1752                 <para>Default: <command>debug pid = no</command></para></listitem>
1753                 </varlistentry>
1754
1755
1756                 <varlistentry>
1757                 <term><anchor id="DEBUGTIMESTAMP">debug timestamp (G)</term>
1758                 <listitem><para>Samba debug log messages are timestamped 
1759                 by default. If you are running at a high <link linkend="DEBUGLEVEL">
1760                 <parameter>debug level</parameter></link> these timestamps
1761                 can be distracting. This boolean parameter allows timestamping 
1762                 to be turned off.</para>
1763
1764                 <para>Default: <command>debug timestamp = yes</command></para></listitem>
1765                 </varlistentry>
1766
1767
1768
1769                 <varlistentry>
1770                 <term><anchor id="DEBUGUID">debug uid (G)</term>
1771                 <listitem><para>Samba is sometimes run as root and sometime 
1772                 run as the connected user, this boolean parameter inserts the 
1773                 current euid, egid, uid and gid to the timestamp message headers 
1774                 in the log file if turned on.</para>
1775                 
1776                 <para>Note that the parameter <link linkend="DEBUGTIMESTAMP"><parameter>
1777                 debug timestamp</parameter></link> must be on for this to have an 
1778                 effect.</para>
1779
1780                 <para>Default: <command>debug uid = no</command></para></listitem>
1781                 </varlistentry>
1782
1783
1784
1785                 <varlistentry>
1786                 <term><anchor id="DEBUGLEVEL">debuglevel (G)</term>
1787                 <listitem><para>Synonym for <link linkend="LOGLEVEL"><parameter>
1788                 log level</parameter></link>.</para>
1789                 </listitem>
1790                 </varlistentry>
1791
1792
1793
1794                 <varlistentry>
1795                 <term><anchor id="DEFAULT">default (G)</term>
1796                 <listitem><para>A synonym for <link linkend="DEFAULTSERVICE"><parameter>
1797                 default service</parameter></link>.</para></listitem>
1798                 </varlistentry>
1799                 
1800                 
1801                 
1802                 <varlistentry>
1803                 <term><anchor id="DEFAULTCASE">default case (S)</term>
1804                 <listitem><para>See the section on <link linkend="NAMEMANGLINGSECT">
1805                 NAME MANGLING</link>. Also note the <link linkend="SHORTPRESERVECASE">
1806                 <parameter>short preserve case</parameter></link> parameter.</para>
1807
1808                 <para>Default: <command>default case = lower</command></para>
1809                 </listitem>
1810                 </varlistentry>
1811
1812
1813
1814                 <varlistentry>
1815                 <term><anchor id="DEFAULTDEVMODE">default devmode (S)</term>
1816                 <listitem><para>This parameter is only applicable to <link
1817                 linkend="PRINTOK">printable</link> services.  When smbd is serving
1818                 Printer Drivers to Windows NT/2k/XP clients, each printer on the Samba
1819                 server has a Device Mode which defines things such as paper size and
1820                 orientation and duplex settings.  The device mode can only correctly be
1821                 generated by the printer driver itself (which can only be executed on a
1822                 Win32 platform).  Because smbd is unable to execute the driver code
1823                 to generate the device mode, the default behavior is to set this field
1824                 to NULL.
1825                 </para>
1826
1827                 <para>Most problems with serving printer drivers to Windows NT/2k/XP clients
1828                 can be traced to a problem with the generated device mode.  Certain drivers
1829                 will do things such as crashing the client's Explorer.exe with a NULL devmode.
1830                 However, other printer drivers can cause the client's spooler service
1831                 (spoolsv.exe) to die if the devmode was not created by the driver itself
1832                 (i.e. smbd generates a default devmode).
1833                 </para>
1834
1835                 <para>This parameter should be used with care and tested with the printer
1836                 driver in question.  It is better to leave the device mode to NULL
1837                 and let the Windows client set the correct values.  Because drivers do not
1838                 do this all the time, setting <command>default devmode = yes</command>
1839                 will instruct smbd to generate a default one.
1840                 </para>
1841
1842                 <para>For more information on Windows NT/2k printing and Device Modes,
1843                 see the <ulink url="http://msdn.microsoft.com/">MSDN documentation</ulink>.
1844                 </para>
1845
1846                 <para>Default: <command>default devmode = no</command></para>
1847                 </listitem>
1848                 </varlistentry>
1849
1850
1851
1852                 <varlistentry>
1853                 <term><anchor id="DEFAULTSERVICE">default service (G)</term>
1854                 <listitem><para>This parameter specifies the name of a service
1855                 which will be connected to if the service actually requested cannot
1856                 be found. Note that the square brackets are <emphasis>NOT</emphasis>
1857                 given in the parameter value (see example below).</para>
1858
1859                 <para>There is no default value for this parameter. If this 
1860                 parameter is not given, attempting to connect to a nonexistent 
1861                 service results in an error.</para>
1862
1863                 <para>Typically the default service would be a <link linkend="GUESTOK">
1864                 <parameter>guest ok</parameter></link>, <link linkend="READONLY">
1865                 <parameter>read-only</parameter></link> service.</para>
1866
1867                 <para>Also note that the apparent service name will be changed 
1868                 to equal that of the requested service, this is very useful as it 
1869                 allows you to use macros like <parameter>%S</parameter> to make 
1870                 a wildcard service.</para>
1871
1872                 <para>Note also that any "_" characters in the name of the service 
1873                 used in the default service will get mapped to a "/". This allows for
1874                 interesting things.</para>
1875
1876
1877                 <para>Example:</para>
1878                 
1879                 <para><programlisting>
1880 [global]
1881         default service = pub
1882         
1883 [pub]
1884         path = /%S
1885                 </programlisting></para>
1886                 </listitem>
1887                 </varlistentry>
1888                 
1889                 <varlistentry><term><anchor id="DELETEGROUPSCRIPT">delete group script (G)</term>
1890                 <listitem><para>This is the full pathname to a script that will 
1891                 be run <emphasis>AS ROOT</emphasis> by <ulink url="smbd.8.html">smbd(8)</ulink> when a group is requested to be deleted. It will expand any <parameter>%g</parameter> to the group name passed.  This script is only useful for installations using the Windows NT domain administration tools.
1892                 </para></listitem>
1893                 </varlistentry>
1894
1895                 <varlistentry>
1896                 <term><anchor id="DELETEPRINTERCOMMAND">deleteprinter command (G)</term>
1897                 <listitem><para>With the introduction of MS-RPC based printer
1898                 support for Windows NT/2000 clients in Samba 2.2, it is now 
1899                 possible to delete printer at run time by issuing the 
1900                 DeletePrinter() RPC call.</para>
1901                 
1902                 <para>For a Samba host this means that the printer must be 
1903                 physically deleted from underlying printing system.  The <parameter>
1904                 deleteprinter command</parameter> defines a script to be run which 
1905                 will perform the necessary operations for removing the printer
1906                 from the print system and from <filename>smb.conf</filename>.
1907                 </para>
1908                 
1909                 <para>The <parameter>deleteprinter command</parameter> is 
1910                 automatically called with only one parameter: <parameter>
1911                 "printer name"</parameter>.</para>
1912                 
1913                                 
1914                 <para>Once the <parameter>deleteprinter command</parameter> has 
1915                 been executed, <command>smbd</command> will reparse the <filename>
1916                 smb.conf</filename> to associated printer no longer exists.  
1917                 If the sharename is still valid, then <command>smbd
1918                 </command> will return an ACCESS_DENIED error to the client.</para>
1919                 
1920                 <para>See also <link linkend="ADDPRINTERCOMMAND"><parameter>
1921                 addprinter command</parameter></link>, <link 
1922                 linkend="printing"><parameter>printing</parameter></link>,
1923                 <link linkend="SHOWADDPRINTERWIZARD"><parameter>show add
1924                 printer wizard</parameter></link></para>
1925                 
1926                 <para>Default: <emphasis>none</emphasis></para>
1927                 <para>Example: <command>deleteprinter command = /usr/bin/removeprinter
1928                 </command></para>
1929                 </listitem>
1930                 </varlistentry>
1931
1932
1933
1934
1935
1936
1937                 <varlistentry>
1938                 <term><anchor id="DELETEREADONLY">delete readonly (S)</term>
1939                 <listitem><para>This parameter allows readonly files to be deleted.  
1940                 This is not normal DOS semantics, but is allowed by UNIX.</para>
1941                 
1942                 <para>This option may be useful for running applications such 
1943                 as rcs, where UNIX file ownership prevents changing file 
1944                 permissions, and DOS semantics prevent deletion of a read only file.</para>
1945
1946                 <para>Default: <command>delete readonly = no</command></para></listitem>
1947                 </varlistentry>
1948
1949
1950
1951                 <varlistentry>
1952                 <term><anchor id="DELETESHARECOMMAND">delete share command (G)</term>
1953                 <listitem><para>Samba 2.2.0 introduced the ability to dynamically 
1954                 add and delete shares via the Windows NT 4.0 Server Manager.  The 
1955                 <parameter>delete share command</parameter> is used to define an 
1956                 external program or script which will remove an existing service 
1957                 definition from <filename>smb.conf</filename>.  In order to successfully 
1958                 execute the <parameter>delete share command</parameter>, <command>smbd</command>
1959                 requires that the administrator be connected using a root account (i.e. 
1960                 uid == 0).
1961                 </para>
1962                 
1963                 <para>
1964                 When executed, <command>smbd</command> will automatically invoke the 
1965                 <parameter>delete share command</parameter> with two parameters.
1966                 </para>
1967                 
1968                 <itemizedlist>
1969                         <listitem><para><parameter>configFile</parameter> - the location 
1970                         of the global <filename>smb.conf</filename> file. 
1971                         </para></listitem>
1972                         
1973                         <listitem><para><parameter>shareName</parameter> - the name of 
1974                         the existing service.
1975                         </para></listitem>
1976                 </itemizedlist>
1977                 
1978                 <para>
1979                 This parameter is only used to remove file shares.  To delete printer shares, 
1980                 see the <link linkend="DELETEPRINTERCOMMAND"><parameter>deleteprinter 
1981                 command</parameter></link>.
1982                 </para>
1983                 
1984                 <para>
1985                 See also <link linkend="ADDSHARECOMMAND"><parameter>add share
1986                 command</parameter></link>, <link linkend="CHANGESHARECOMMAND"><parameter>change 
1987                 share command</parameter></link>.
1988                 </para>
1989                 
1990                 <para>Default: <emphasis>none</emphasis></para>
1991                 <para>Example: <command>delete share command = /usr/local/bin/delshare</command></para>
1992                 
1993                 </listitem>
1994                 </varlistentry>
1995
1996
1997                 
1998                 
1999                 <varlistentry>
2000                 <term><anchor id="DELETEUSERSCRIPT">delete user script (G)</term>
2001                 <listitem><para>This is the full pathname to a script that will 
2002                 be run by <ulink url="smbd.8.html"><command>smbd(8)</command></ulink>
2003                 when managing user's with remote RPC (NT) tools.
2004                 </para>
2005
2006                 <para>This script is called when a remote client removes a user
2007                 from the server, normally using 'User Manager for Domains' or
2008                 <command>rpcclient</command>.
2009                 </para>
2010
2011                 <para>This script should delete the given UNIX username. 
2012                 </para>
2013
2014                 <para>Default: <command>delete user script = &lt;empty string&gt;
2015                 </command></para>
2016                 <para>Example: <command>delete user script = /usr/local/samba/bin/del_user 
2017                 %u</command></para></listitem>
2018                 </varlistentry>
2019
2020                 <varlistentry>
2021                 <term><anchor id="DELETEUSERFROMGROUPSCRIPT">delete user from group script (G)</term>
2022                 <listitem><para>Full path to the script that will be called when 
2023                 a user is removed from a group using the Windows NT domain administration 
2024                 tools. It will be run by <ulink url="smbd.8.html">smbd(8)</ulink> 
2025                 <emphasis>AS ROOT</emphasis>. Any <parameter>%g</parameter> will be 
2026                 replaced with the group name and any <parameter>%u</parameter> will 
2027                 be replaced with the user name.
2028                 </para>
2029
2030                 <para>Default: <command>delete user from group script = </command></para>
2031
2032                 <para>Example: <command>delete user from group script = /usr/sbin/deluser %u %g</command></para>
2033                 
2034                 </listitem>
2035                 </varlistentry>
2036
2037                 <varlistentry>
2038                 <term><anchor id="DELETEVETOFILES">delete veto files (S)</term>
2039                 <listitem><para>This option is used when Samba is attempting to 
2040                 delete a directory that contains one or more vetoed directories 
2041                 (see the <link linkend="VETOFILES"><parameter>veto files</parameter></link>
2042                 option).  If this option is set to <constant>no</constant> (the default) then if a vetoed 
2043                 directory contains any non-vetoed files or directories then the 
2044                 directory delete will fail. This is usually what you want.</para>
2045
2046                 <para>If this option is set to <constant>yes</constant>, then Samba 
2047                 will attempt to recursively delete any files and directories within 
2048                 the vetoed directory. This can be useful for integration with file 
2049                 serving systems such as NetAtalk which create meta-files within 
2050                 directories you might normally veto DOS/Windows users from seeing 
2051                 (e.g. <filename>.AppleDouble</filename>)</para>
2052
2053                 <para>Setting <command>delete veto files = yes</command> allows these 
2054                 directories to be  transparently deleted when the parent directory 
2055                 is deleted (so long as the user has permissions to do so).</para>
2056
2057                 <para>See also the <link linkend="VETOFILES"><parameter>veto 
2058                 files</parameter></link> parameter.</para>
2059
2060                 <para>Default: <command>delete veto files = no</command></para></listitem>
2061                 </varlistentry>
2062
2063
2064
2065
2066                 <varlistentry>
2067                 <term><anchor id="DENYHOSTS">deny hosts (S)</term>
2068                 <listitem><para>Synonym for <link linkend="HOSTSDENY"><parameter>hosts 
2069                 deny</parameter></link>.</para></listitem>
2070                 </varlistentry>
2071
2072                 
2073                 
2074                 
2075                 <varlistentry>
2076                 <term><anchor id="DFREECOMMAND">dfree command (G)</term>
2077                 <listitem><para>The <parameter>dfree command</parameter> setting should 
2078                 only be used on systems where a problem occurs with the internal 
2079                 disk space calculations. This has been known to happen with Ultrix, 
2080                 but may occur with other operating systems. The symptom that was 
2081                 seen was an error of "Abort Retry Ignore" at the end of each 
2082                 directory listing.</para>
2083                 
2084                 <para>This setting allows the replacement of the internal routines to
2085                 calculate the total disk space and amount available with an external
2086                 routine. The example below gives a possible script that might fulfill
2087                 this function.</para>
2088
2089                 <para>The external program will be passed a single parameter indicating 
2090                 a directory in the filesystem being queried. This will typically consist
2091                 of the string <filename>./</filename>. The script should return two 
2092                 integers in ASCII. The first should be the total disk space in blocks, 
2093                 and the second should be the number of available blocks. An optional 
2094                 third return value can give the block size in bytes. The default 
2095                 blocksize is 1024 bytes.</para>
2096
2097                 <para>Note: Your script should <emphasis>NOT</emphasis> be setuid or 
2098                 setgid and should be owned by (and writeable only by) root!</para>
2099
2100                 <para>Default: <emphasis>By default internal routines for 
2101                 determining the disk capacity and remaining space will be used.
2102                 </emphasis></para>
2103
2104                 <para>Example: <command>dfree command = /usr/local/samba/bin/dfree
2105                 </command></para>
2106
2107                 <para>Where the script dfree (which must be made executable) could be:</para>
2108
2109                 <para><programlisting> 
2110                 #!/bin/sh
2111                 df $1 | tail -1 | awk '{print $2" "$4}'
2112                 </programlisting></para>
2113
2114                 <para>or perhaps (on Sys V based systems):</para>
2115
2116                 <para><programlisting> 
2117                 #!/bin/sh
2118                 /usr/bin/df -k $1 | tail -1 | awk '{print $3" "$5}'
2119                 </programlisting></para>
2120                 
2121                 <para>Note that you may have to replace the command names 
2122                 with full path names on some systems.</para>
2123                 </listitem>
2124                 </varlistentry>
2125                 
2126                 
2127                 
2128                 
2129                 <varlistentry>
2130                 <term><anchor id="DIRECTORY">directory (S)</term>
2131                 <listitem><para>Synonym for <link linkend="PATH"><parameter>path
2132                 </parameter></link>.</para></listitem>
2133                 </varlistentry>
2134                 
2135                 
2136                 
2137                 <varlistentry>
2138                 <term><anchor id="DIRECTORYMASK">directory mask (S)</term>
2139                 <listitem><para>This parameter is the octal modes which are 
2140                 used when converting DOS modes to UNIX modes when creating UNIX 
2141                 directories.</para>
2142
2143                 <para>When a directory is created, the necessary permissions are 
2144                 calculated according to the mapping from DOS modes to UNIX permissions, 
2145                 and the resulting UNIX mode is then bit-wise 'AND'ed with this 
2146                 parameter. This parameter may be thought of as a bit-wise MASK for 
2147                 the UNIX modes of a directory. Any bit <emphasis>not</emphasis> set 
2148                 here will be removed from the modes set on a directory when it is 
2149                 created.</para>
2150
2151                 <para>The default value of this parameter removes the 'group' 
2152                 and 'other' write bits from the UNIX mode, allowing only the 
2153                 user who owns the directory to modify it.</para>
2154                 
2155                 <para>Following this Samba will bit-wise 'OR' the UNIX mode 
2156                 created from this parameter with the value of the <link
2157                 linkend="FORCEDIRECTORYMODE"><parameter>force directory mode
2158                 </parameter></link> parameter. This parameter is set to 000 by 
2159                 default (i.e. no extra mode bits are added).</para>
2160
2161                 <para>Note that this parameter does not apply to permissions
2162                 set by Windows NT/2000 ACL editors. If the administrator wishes to enforce
2163                 a mask on access control lists also, they need to set the <link 
2164                 linkend="DIRECTORYSECURITYMASK"><parameter>directory security mask</parameter></link>.</para>
2165
2166                 <para>See the <link linkend="FORCEDIRECTORYMODE"><parameter>force 
2167                 directory mode</parameter></link> parameter to cause particular mode 
2168                 bits to always be set on created directories.</para>
2169
2170                 <para>See also the <link linkend="CREATEMODE"><parameter>create mode
2171                 </parameter></link> parameter for masking mode bits on created files, 
2172                 and the <link linkend="DIRECTORYSECURITYMASK"><parameter>directory 
2173                 security mask</parameter></link> parameter.</para>
2174
2175                 <para>Also refer to the <link linkend="INHERITPERMISSIONS"><parameter>
2176                 inherit permissions</parameter></link> parameter.</para>
2177
2178                 <para>Default: <command>directory mask = 0755</command></para>
2179                 <para>Example: <command>directory mask = 0775</command></para>
2180                 </listitem>
2181                 </varlistentry>
2182
2183
2184
2185                 <varlistentry>
2186                 <term><anchor id="DIRECTORYMODE">directory mode (S)</term>
2187                 <listitem><para>Synonym for <link linkend="DIRECTORYMASK"><parameter>
2188                 directory mask</parameter></link></para></listitem>
2189                 </varlistentry>
2190                 
2191                 
2192                 
2193                 <varlistentry>
2194                 <term><anchor id="DIRECTORYSECURITYMASK">directory security mask (S)</term>
2195                 <listitem><para>This parameter controls what UNIX permission bits 
2196                 can be modified when a Windows NT client is manipulating the UNIX 
2197                 permission on a directory using the native NT security dialog 
2198                 box.</para>
2199
2200                 <para>This parameter is applied as a mask (AND'ed with) to 
2201                 the changed permission bits, thus preventing any bits not in 
2202                 this mask from being modified. Essentially, zero bits in this 
2203                 mask may be treated as a set of bits the user is not allowed 
2204                 to change.</para>
2205
2206                 <para>If not set explicitly this parameter is set to 0777
2207                 meaning a user is allowed to modify all the user/group/world
2208                 permissions on a directory.</para>
2209
2210                 <para><emphasis>Note</emphasis> that users who can access the 
2211                 Samba server through other means can easily bypass this restriction, 
2212                 so it is primarily useful for standalone "appliance" systems.  
2213                 Administrators of most normal systems will probably want to leave
2214                 it as the default of <constant>0777</constant>.</para>
2215
2216                 <para>See also the <link linkend="FORCEDIRECTORYSECURITYMODE"><parameter>
2217                 force directory security mode</parameter></link>, <link
2218                 linkend="SECURITYMASK"><parameter>security mask</parameter></link>, 
2219                 <link linkend="FORCESECURITYMODE"><parameter>force security mode
2220                 </parameter></link> parameters.</para>
2221
2222                 <para>Default: <command>directory security mask = 0777</command></para>
2223                 <para>Example: <command>directory security mask = 0700</command></para>
2224                 </listitem>
2225                 </varlistentry>
2226
2227
2228                 <varlistentry>
2229                 <term><anchor id="DISABLENETBIOS">disable netbios (G)</term>
2230                 <listitem><para>Enabling this parameter will disable netbios support
2231                 in Samba. Netbios is the only available form of browsing in 
2232                 all windows versions except for 2000 and XP. </para>
2233
2234                 <para>Note that clients that only support netbios won't be able to 
2235                 see your samba server when netbios support is disabled.
2236                 </para>
2237
2238                 <para>Default: <command>disable netbios = no</command></para>
2239                 <para>Example: <command>disable netbios = yes</command></para>
2240                 </listitem>
2241                 </varlistentry>
2242
2243                 <varlistentry>
2244                 <term><anchor id="DISABLESPOOLSS">disable spoolss (G)</term>
2245                 <listitem><para>Enabling this parameter will disable Samba's support
2246                 for the SPOOLSS set of MS-RPC's and will yield identical behavior
2247                 as Samba 2.0.x.  Windows NT/2000 clients will downgrade to using
2248                 Lanman style printing commands. Windows 9x/ME will be uneffected by
2249                 the parameter. However, this will also disable the ability to upload
2250                 printer drivers to a Samba server via the Windows NT Add Printer
2251                 Wizard or by using the NT printer properties dialog window.  It will
2252                 also disable the capability of Windows NT/2000 clients to download
2253                 print drivers from the Samba host upon demand.
2254                 <emphasis>Be very careful about enabling this parameter.</emphasis>
2255                 </para>
2256
2257                 <para>See also <link linkend="USECLIENTDRIVER">use client driver</link>
2258                 </para>
2259  
2260                 <para>Default : <command>disable spoolss = no</command></para>
2261                 </listitem>
2262                 </varlistentry>
2263                 
2264                 <varlistentry>
2265                 <term><anchor id="DISPLAYCHARSET">display charset (G)</term>
2266                 <listitem><para>Specifies the charset that samba will use 
2267                 to print messages to stdout and stderr and SWAT will use. 
2268                 Should generally be the same as the <command>unix charset</command>.
2269                 </para>
2270
2271                 <para>Default: <command>display charset = ASCII</command></para>
2272
2273                 <para>Example: <command>display charset = UTF8</command></para>
2274
2275                 </listitem>
2276                 </varlistentry>
2277                 
2278                 
2279                 <varlistentry>
2280                 <term><anchor id="DNSPROXY">dns proxy (G)</term>
2281                 <listitem><para>Specifies that <ulink url="nmbd.8.html">nmbd(8)</ulink> 
2282                 when acting as a WINS server and finding that a NetBIOS name has not 
2283                 been registered, should treat the NetBIOS name word-for-word as a DNS 
2284                 name and do a lookup with the DNS server for that name on behalf of 
2285                 the name-querying client.</para>
2286
2287                 <para>Note that the maximum length for a NetBIOS name is 15 
2288                 characters, so the DNS name (or DNS alias) can likewise only be 
2289                 15 characters, maximum.</para>
2290
2291                 <para><command>nmbd</command> spawns a second copy of itself to do the
2292                 DNS name lookup requests, as doing a name lookup is a blocking 
2293                 action.</para>
2294
2295                 <para>See also the parameter <link linkend="WINSSUPPORT"><parameter>
2296                 wins support</parameter></link>.</para>
2297
2298                 <para>Default: <command>dns proxy = yes</command></para></listitem>
2299                 </varlistentry>
2300
2301
2302                 <varlistentry>
2303                 <term><anchor id="DOMAINLOGONS">domain logons (G)</term>
2304                 <listitem><para>If set to <constant>yes</constant>, the Samba server will serve 
2305                 Windows 95/98 Domain logons for the <link linkend="WORKGROUP">
2306                 <parameter>workgroup</parameter></link> it is in. Samba 2.2
2307                 has limited capability to act as a domain controller for Windows 
2308                 NT 4 Domains.  For more details on setting up this feature see 
2309                 the Samba-PDC-HOWTO included in the <filename>htmldocs/</filename>
2310                 directory shipped with the source code.</para>
2311                 
2312                 <para>Default: <command>domain logons = no</command></para></listitem>
2313                 </varlistentry>
2314                 
2315                 
2316                 
2317                 <varlistentry>
2318                 <term><anchor id="DOMAINMASTER">domain master (G)</term>
2319                 <listitem><para>Tell <ulink url="nmbd.8.html"><command>
2320                 nmbd(8)</command></ulink> to enable WAN-wide browse list
2321                 collation. Setting this option causes <command>nmbd</command> to
2322                 claim a special domain specific NetBIOS name that identifies 
2323                 it as a domain master browser for its given <link linkend="WORKGROUP">
2324                 <parameter>workgroup</parameter></link>. Local master browsers 
2325                 in the same <parameter>workgroup</parameter> on broadcast-isolated 
2326                 subnets will give this <command>nmbd</command> their local browse lists, 
2327                 and then ask <ulink url="smbd.8.html"><command>smbd(8)</command></ulink> 
2328                 for a complete copy of the browse list for the whole wide area 
2329                 network.  Browser clients will then contact their local master browser, 
2330                 and will receive the domain-wide browse list, instead of just the list 
2331                 for their broadcast-isolated subnet.</para>
2332
2333                 <para>Note that Windows NT Primary Domain Controllers expect to be 
2334                 able to claim this <parameter>workgroup</parameter> specific special 
2335                 NetBIOS name that identifies them as domain master browsers for 
2336                 that <parameter>workgroup</parameter> by default (i.e. there is no 
2337                 way to prevent a Windows NT PDC from attempting to do this). This 
2338                 means that if this parameter is set and <command>nmbd</command> claims 
2339                 the special name for a <parameter>workgroup</parameter> before a Windows 
2340                 NT PDC is able to do so then cross subnet browsing will behave 
2341                 strangely and may fail.</para>
2342                 
2343                 <para>If <link linkend="DOMAINLOGONS"><command>domain logons = yes</command>
2344                 </link>, then the default behavior is to enable the <parameter>domain 
2345                 master</parameter> parameter.  If <parameter>domain logons</parameter> is 
2346                 not enabled (the default setting), then neither will <parameter>domain 
2347                 master</parameter> be enabled by default.</para>
2348
2349                 <para>Default: <command>domain master = auto</command></para></listitem>
2350                 </varlistentry>
2351                 
2352                 
2353                 
2354                 
2355                 <varlistentry>
2356                 <term><anchor id="DONTDESCEND">dont descend (S)</term>
2357                 <listitem><para>There are certain directories on some systems 
2358                 (e.g., the <filename>/proc</filename> tree under Linux) that are either not 
2359                 of interest to clients or are infinitely deep (recursive). This 
2360                 parameter allows you to specify a comma-delimited list of directories 
2361                 that the server should always show as empty.</para>
2362
2363                 <para>Note that Samba can be very fussy about the exact format 
2364                 of the "dont descend" entries. For example you may need <filename>
2365                 ./proc</filename> instead of just <filename>/proc</filename>. 
2366                 Experimentation is the best policy :-)  </para>
2367                 
2368                 <para>Default: <emphasis>none (i.e., all directories are OK 
2369                 to descend)</emphasis></para>
2370                 <para>Example: <command>dont descend = /proc,/dev</command></para>
2371                 </listitem>
2372                 </varlistentry>
2373                 
2374                 <varlistentry>
2375                 <term><anchor id="DOSCHARSET">dos charset (G)</term>
2376                 <listitem><para>DOS SMB clients assume the server has 
2377                 the same charset as they do. This option specifies which 
2378                 charset Samba should talk to DOS clients.
2379                 </para>
2380
2381                 <para>The default depends on which charsets you have instaled. 
2382                 Samba tries to use charset 850 but falls back to ASCII in 
2383                 case it is not available. Run <ulink url="testparm.1.html">testparm(1)
2384                 </ulink> to check the default on your system.
2385                 </para>
2386                 </listitem>
2387                 </varlistentry>
2388
2389                 <varlistentry>
2390                 <term><anchor id="DOSFILEMODE">dos filemode (S)</term>
2391                 <listitem><para> The default behavior in Samba is to provide 
2392                 UNIX-like behavior where only the owner of a file/directory is 
2393                 able to change the permissions on it.  However, this behavior
2394                 is often confusing to  DOS/Windows users.  Enabling this parameter 
2395                 allows a user who has write access to the file (by whatever 
2396                 means) to modify the permissions on it.  Note that a user
2397                 belonging to the group owning the file will not be allowed to
2398                 change permissions if the group is only granted read access.
2399                 Ownership of the file/directory is not changed, only the permissions 
2400                 are modified.</para>
2401                 
2402                 <para>Default: <command>dos filemode = no</command></para>
2403                 </listitem>
2404                 </varlistentry>
2405
2406                 
2407                 
2408                 <varlistentry>
2409                 <term><anchor id="DOSFILETIMERESOLUTION">dos filetime resolution (S)</term>
2410                 <listitem><para>Under the DOS and Windows FAT filesystem, the finest 
2411                 granularity on time resolution is two seconds. Setting this parameter 
2412                 for a share causes Samba to round the reported time down to the 
2413                 nearest two second boundary when a query call that requires one second 
2414                 resolution is made to <ulink url="smbd.8.html"><command>smbd(8)</command>
2415                 </ulink>.</para>
2416
2417                 <para>This option is mainly used as a compatibility option for Visual 
2418                 C++ when used against Samba shares. If oplocks are enabled on a 
2419                 share, Visual C++ uses two different time reading calls to check if a 
2420                 file has changed since it was last read. One of these calls uses a
2421                 one-second granularity, the other uses a two second granularity. As
2422                 the two second call rounds any odd second down, then if the file has a
2423                 timestamp of an odd number of seconds then the two timestamps will not
2424                 match and Visual C++ will keep reporting the file has changed. Setting
2425                 this option causes the two timestamps to match, and Visual C++ is
2426                 happy.</para>
2427
2428                 <para>Default: <command>dos filetime resolution = no</command></para>
2429                 </listitem>
2430                 </varlistentry>
2431
2432
2433
2434                 <varlistentry>
2435                 <term><anchor id="DOSFILETIMES">dos filetimes (S)</term>
2436                 <listitem><para>Under DOS and Windows, if a user can write to a 
2437                 file they can change the timestamp on it. Under POSIX semantics, 
2438                 only the owner of the file or root may change the timestamp. By 
2439                 default, Samba runs with POSIX semantics and refuses to change the 
2440                 timestamp on a file if the user <command>smbd</command> is acting 
2441                 on behalf of is not the file owner. Setting this option to <constant>
2442                 yes</constant> allows DOS semantics and <ulink url="smbd.8.html">smbd</ulink> will change the file 
2443                 timestamp as DOS requires.</para>
2444
2445                 <para>Default: <command>dos filetimes = no</command></para></listitem>
2446                 </varlistentry>
2447
2448                 
2449
2450                 <varlistentry>
2451                 <term><anchor id="ENCRYPTPASSWORDS">encrypt passwords (G)</term>
2452                 <listitem><para>This boolean controls whether encrypted passwords 
2453                 will be negotiated with the client. Note that Windows NT 4.0 SP3 and 
2454                 above and also Windows 98 will by default expect encrypted passwords 
2455                 unless a registry entry is changed. To use encrypted passwords in 
2456                 Samba see the file ENCRYPTION.txt in the Samba documentation 
2457                 directory <filename>docs/</filename> shipped with the source code.</para>
2458
2459                 <para>In order for encrypted passwords to work correctly
2460                 <ulink url="smbd.8.html"><command>smbd(8)</command></ulink> must either 
2461                 have access to a local <ulink url="smbpasswd.5.html"><filename>smbpasswd(5)
2462                 </filename></ulink> file (see the <ulink url="smbpasswd.8.html"><command>
2463                 smbpasswd(8)</command></ulink> program for information on how to set up 
2464                 and maintain this file), or set the <link
2465                 linkend="SECURITY">security = [server|domain|ads]</link> parameter which 
2466                 causes <command>smbd</command> to authenticate against another 
2467                 server.</para>
2468                 
2469                 <para>Default: <command>encrypt passwords = yes</command></para></listitem>
2470                 </varlistentry>
2471
2472
2473                 <varlistentry>
2474                 <term><anchor id="ENHANCEDBROWSING">enhanced browsing (G)</term>
2475                 <listitem><para>This option enables a couple of enhancements to 
2476                 cross-subnet browse propagation that have been added in Samba 
2477                 but which are not standard in Microsoft implementations.  
2478                 </para>
2479
2480                 <para>The first enhancement to browse propagation consists of a regular
2481                 wildcard query to a Samba WINS server for all Domain Master Browsers,
2482                 followed by a browse synchronization with each of the returned
2483                 DMBs. The second enhancement consists of a regular randomised browse
2484                 synchronization with all currently known DMBs.</para>
2485
2486                 <para>You may wish to disable this option if you have a problem with empty
2487                 workgroups not disappearing from browse lists. Due to the restrictions
2488                 of the browse protocols these enhancements can cause a empty workgroup
2489                 to stay around forever which can be annoying.</para>
2490
2491                 <para>In general you should leave this option enabled as it makes
2492                 cross-subnet browse propagation much more reliable.</para>
2493
2494                 <para>Default: <command>enhanced browsing = yes</command></para>
2495                 </listitem>
2496                 </varlistentry>
2497
2498
2499                 <varlistentry>
2500                 <term><anchor id="ENUMPORTSCOMMAND">enumports command (G)</term>
2501                 <listitem><para>The concept of a "port" is fairly foreign
2502                 to UNIX hosts.  Under Windows NT/2000 print servers, a port
2503                 is associated with a port monitor and generally takes the form of
2504                 a local port (i.e. LPT1:, COM1:, FILE:) or a remote port
2505                 (i.e. LPD Port Monitor, etc...).  By default, Samba has only one
2506                 port defined--<constant>"Samba Printer Port"</constant>.  Under 
2507                 Windows NT/2000, all printers must have a valid port name.  
2508                 If you wish to have a list of ports displayed (<command>smbd
2509                 </command> does not use a port name for anything) other than 
2510                 the default <constant>"Samba Printer Port"</constant>, you 
2511                 can define <parameter>enumports command</parameter> to point to
2512                 a program which should generate a list of ports, one per line,
2513                 to standard output.  This listing will then be used in response
2514                 to the level 1 and 2 EnumPorts() RPC.</para>
2515                 
2516                 <para>Default: <emphasis>no enumports command</emphasis></para>
2517                 <para>Example: <command>enumports command = /usr/bin/listports
2518                 </command></para>
2519                 </listitem>
2520                 </varlistentry>
2521                 
2522                 <varlistentry>
2523                 <term><anchor id="EXEC">exec (S)</term>
2524                 <listitem><para>This is a synonym for <link linkend="PREEXEC">
2525                 <parameter>preexec</parameter></link>.</para></listitem>
2526                 </varlistentry>
2527
2528
2529
2530                 <varlistentry>
2531                 <term><anchor id="FAKEDIRECTORYCREATETIMES">fake directory create times (S)</term>
2532                 <listitem><para>NTFS and Windows VFAT file systems keep a create 
2533                 time for all files and directories. This is not the same as the 
2534                 ctime - status change time - that Unix keeps, so Samba by default 
2535                 reports the earliest of the various times Unix does keep. Setting 
2536                 this parameter for a share causes Samba to always report midnight 
2537                 1-1-1980 as the create time for directories.</para>
2538
2539                 <para>This option is mainly used as a compatibility option for 
2540                 Visual C++ when used against Samba shares. Visual C++ generated 
2541                 makefiles have the object directory as a dependency for each object 
2542                 file, and a make rule to create the directory. Also, when NMAKE 
2543                 compares timestamps it uses the creation time when examining a 
2544                 directory. Thus the object directory will be created if it does not 
2545                 exist, but once it does exist it will always have an earlier 
2546                 timestamp than the object files it contains.</para>
2547
2548                 <para>However, Unix time semantics mean that the create time 
2549                 reported by Samba will be updated whenever a file is created or 
2550                 or deleted in the directory.  NMAKE finds all object files in 
2551                 the object directory.  The timestamp of the last one built is then 
2552                 compared to the timestamp of the object directory.  If the 
2553                 directory's timestamp if newer, then all object files
2554                 will be rebuilt.  Enabling this option 
2555                 ensures directories always predate their contents and an NMAKE build 
2556                 will proceed as expected.</para>
2557
2558                 <para>Default: <command>fake directory create times = no</command></para>
2559                 </listitem>
2560                 </varlistentry>
2561
2562
2563
2564                 <varlistentry>
2565                 <term><anchor id="FAKEOPLOCKS">fake oplocks (S)</term>
2566                 <listitem><para>Oplocks are the way that SMB clients get permission 
2567                 from a server to locally cache file operations. If a server grants 
2568                 an oplock (opportunistic lock) then the client is free to assume 
2569                 that it is the only one accessing the file and it will aggressively 
2570                 cache file data. With some oplock types the client may even cache 
2571                 file open/close operations. This can give enormous performance benefits.
2572                 </para>
2573
2574                 <para>When you set <command>fake oplocks = yes</command>, <ulink 
2575                 url="smbd.8.html"><command>smbd(8)</command></ulink> will
2576                 always grant oplock requests no matter how many clients are using 
2577                 the file.</para>
2578
2579                 <para>It is generally much better to use the real <link 
2580                 linkend="OPLOCKS"><parameter>oplocks</parameter></link> support rather 
2581                 than this parameter.</para>
2582                 
2583                 <para>If you enable this option on all read-only shares or 
2584                 shares that you know will only be accessed from one client at a 
2585                 time such as physically read-only media like CDROMs, you will see 
2586                 a big performance improvement on many operations. If you enable 
2587                 this option on shares where multiple clients may be accessing the 
2588                 files read-write at the same time you can get data corruption. Use 
2589                 this option carefully!</para>
2590                 
2591                 <para>Default: <command>fake oplocks = no</command></para></listitem>
2592                 </varlistentry>
2593
2594
2595
2596                 <varlistentry>
2597                 <term><anchor id="FOLLOWSYMLINKS">follow symlinks (S)</term>
2598                 <listitem><para>This parameter allows the Samba administrator 
2599                 to stop <ulink url="smbd.8.html"><command>smbd(8)</command></ulink> 
2600                 from following symbolic links in a particular share. Setting this 
2601                 parameter to <constant>no</constant> prevents any file or directory 
2602                 that is a symbolic link from being followed (the user will get an 
2603                 error).  This option is very useful to stop users from adding a 
2604                 symbolic link to <filename>/etc/passwd</filename> in their home 
2605                 directory for instance.  However it will slow filename lookups 
2606                 down slightly.</para>
2607
2608                 <para>This option is enabled (i.e. <command>smbd</command> will 
2609                 follow symbolic links) by default.</para>
2610                 
2611                 <para>Default: <command>follow symlinks = yes</command></para></listitem>
2612                 </varlistentry>
2613                 
2614                 
2615                 
2616                 <varlistentry>
2617                 <term><anchor id="FORCECREATEMODE">force create mode (S)</term>
2618                 <listitem><para>This parameter specifies a set of UNIX mode bit 
2619                 permissions that will <emphasis>always</emphasis> be set on a 
2620                 file created by Samba. This is done by bitwise 'OR'ing these bits onto 
2621                 the mode bits of a file that is being created or having its 
2622                 permissions changed. The default for this parameter is (in octal) 
2623                 000. The modes in this parameter are bitwise 'OR'ed onto the file 
2624                 mode after the mask set in the <parameter>create mask</parameter> 
2625                 parameter is applied.</para>
2626                 
2627                 <para>See also the parameter <link linkend="CREATEMASK"><parameter>create 
2628                 mask</parameter></link> for details on masking mode bits on files.</para>
2629
2630                 <para>See also the <link linkend="INHERITPERMISSIONS"><parameter>inherit 
2631                 permissions</parameter></link> parameter.</para>
2632
2633                 <para>Default: <command>force create mode = 000</command></para>
2634                 <para>Example: <command>force create mode = 0755</command></para>
2635
2636                 <para>would force all created files to have read and execute 
2637                 permissions set for 'group' and 'other' as well as the 
2638                 read/write/execute bits set for the 'user'.</para>
2639                 </listitem>
2640                 </varlistentry>
2641
2642
2643
2644                 <varlistentry>
2645                 <term><anchor id="FORCEDIRECTORYMODE">force directory mode (S)</term>
2646                 <listitem><para>This parameter specifies a set of UNIX mode bit 
2647                 permissions that will <emphasis>always</emphasis> be set on a directory 
2648                 created by Samba. This is done by bitwise 'OR'ing these bits onto the 
2649                 mode bits of a directory that is being created. The default for this 
2650                 parameter is (in octal) 0000 which will not add any extra permission 
2651                 bits to a created directory. This operation is done after the mode 
2652                 mask in the parameter <parameter>directory mask</parameter> is 
2653                 applied.</para>
2654
2655                 <para>See also the parameter <link linkend="DIRECTORYMASK"><parameter>
2656                 directory mask</parameter></link> for details on masking mode bits 
2657                 on created directories.</para>
2658                 
2659                 <para>See also the <link linkend="INHERITPERMISSIONS"><parameter>
2660                 inherit permissions</parameter></link> parameter.</para>
2661
2662                 <para>Default: <command>force directory mode = 000</command></para>
2663                 <para>Example: <command>force directory mode = 0755</command></para>
2664
2665                 <para>would force all created directories to have read and execute
2666                 permissions set for 'group' and 'other' as well as the
2667                 read/write/execute bits set for the 'user'.</para>
2668                 </listitem>
2669                 </varlistentry>
2670                 
2671                 
2672                 
2673                 <varlistentry>
2674                 <term><anchor id="FORCEDIRECTORYSECURITYMODE">force directory security mode (S)</term>
2675                 <listitem><para>This parameter controls what UNIX permission bits 
2676                 can be modified when a Windows NT client is manipulating the UNIX 
2677                 permission on a directory using the native NT security dialog box.</para>
2678
2679                 <para>This parameter is applied as a mask (OR'ed with) to the 
2680                 changed permission bits, thus forcing any bits in this mask that 
2681                 the user may have modified to be on. Essentially, one bits in this 
2682                 mask may be treated as a set of bits that, when modifying security 
2683                 on a directory, the user has always set to be 'on'.</para>
2684
2685                 <para>If not set explicitly this parameter is 000, which 
2686                 allows a user to modify all the user/group/world permissions on a 
2687                 directory without restrictions.</para>
2688
2689                 <para><emphasis>Note</emphasis> that users who can access the 
2690                 Samba server through other means can easily bypass this restriction, 
2691                 so it is primarily useful for standalone "appliance" systems.  
2692                 Administrators of most normal systems will probably want to leave
2693                 it set as 0000.</para>
2694
2695                 <para>See also the <link linkend="DIRECTORYSECURITYMASK"><parameter>
2696                 directory security mask</parameter></link>, <link linkend="SECURITYMASK">
2697                 <parameter>security mask</parameter></link>, 
2698                 <link linkend="FORCESECURITYMODE"><parameter>force security mode
2699                 </parameter></link> parameters.</para>
2700
2701                 <para>Default: <command>force directory security mode = 0</command></para>
2702                 <para>Example: <command>force directory security mode = 700</command></para>
2703                 </listitem>
2704                 </varlistentry>
2705
2706
2707
2708
2709                 <varlistentry>
2710                 <term><anchor id="FORCEGROUP">force group (S)</term>
2711                 <listitem><para>This specifies a UNIX group name that will be 
2712                 assigned as the default primary group for all users connecting 
2713                 to this service. This is useful for sharing files by ensuring 
2714                 that all access to files on service will use the named group for 
2715                 their permissions checking. Thus, by assigning permissions for this 
2716                 group to the files and directories within this service the Samba 
2717                 administrator can restrict or allow sharing of these files.</para>
2718
2719                 <para>In Samba 2.0.5 and above this parameter has extended 
2720                 functionality in the following way. If the group name listed here 
2721                 has a '+' character prepended to it then the current user accessing 
2722                 the share only has the primary group default assigned to this group 
2723                 if they are already assigned as a member of that group. This allows 
2724                 an administrator to decide that only users who are already in a 
2725                 particular group will create files with group ownership set to that 
2726                 group. This gives a finer granularity of ownership assignment. For 
2727                 example, the setting <filename>force group = +sys</filename> means 
2728                 that only users who are already in group sys will have their default
2729                 primary group assigned to sys when accessing this Samba share. All
2730                 other users will retain their ordinary primary group.</para>
2731
2732                 <para>If the <link linkend="FORCEUSER"><parameter>force user
2733                 </parameter></link> parameter is also set the group specified in 
2734                 <parameter>force group</parameter> will override the primary group
2735                 set in <parameter>force user</parameter>.</para>
2736
2737                 <para>See also <link linkend="FORCEUSER"><parameter>force 
2738                 user</parameter></link>.</para>
2739
2740                 <para>Default: <emphasis>no forced group</emphasis></para>
2741                 <para>Example: <command>force group = agroup</command></para>
2742                 </listitem>
2743                 </varlistentry>
2744
2745                 <varlistentry>
2746                 <term><anchor id="FORCESECURITYMODE">force security mode (S)</term>
2747                 <listitem><para>This parameter controls what UNIX permission 
2748                 bits can be modified when a Windows NT client is manipulating 
2749                 the UNIX permission on a file using the native NT security dialog 
2750                 box.</para>
2751                 
2752                 <para>This parameter is applied as a mask (OR'ed with) to the 
2753                 changed permission bits, thus forcing any bits in this mask that 
2754                 the user may have modified to be on. Essentially, one bits in this 
2755                 mask may be treated as a set of bits that, when modifying security 
2756                 on a file, the user has always set to be 'on'.</para>
2757
2758                 <para>If not set explicitly this parameter is set to 0,
2759                 and allows a user to modify all the user/group/world permissions on a file,
2760                 with no restrictions.</para>
2761                 
2762                 <para><emphasis>Note</emphasis> that users who can access 
2763                 the Samba server through other means can easily bypass this restriction, 
2764                 so it is primarily useful for standalone "appliance" systems.  
2765                 Administrators of most normal systems will probably want to leave
2766                 this set to 0000.</para>
2767
2768                 <para>See also the <link linkend="FORCEDIRECTORYSECURITYMODE"><parameter>
2769                 force directory security mode</parameter></link>,
2770                 <link linkend="DIRECTORYSECURITYMASK"><parameter>directory security
2771                 mask</parameter></link>, <link linkend="SECURITYMASK"><parameter>
2772                 security mask</parameter></link> parameters.</para>
2773
2774                 <para>Default: <command>force security mode = 0</command></para>
2775                 <para>Example: <command>force security mode = 700</command></para>
2776                 </listitem>
2777                 </varlistentry>
2778
2779
2780                 
2781                 
2782                 
2783                 <varlistentry>
2784                 <term><anchor id="FORCEUSER">force user (S)</term>
2785                 <listitem><para>This specifies a UNIX user name that will be 
2786                 assigned as the default user for all users connecting to this service. 
2787                 This is useful for sharing files. You should also use it carefully 
2788                 as using it incorrectly can cause security problems.</para>
2789
2790                 <para>This user name only gets used once a connection is established. 
2791                 Thus clients still need to connect as a valid user and supply a 
2792                 valid password. Once connected, all file operations will be performed 
2793                 as the "forced user", no matter what username the client connected 
2794                 as.  This can be very useful.</para>
2795
2796                 <para>In Samba 2.0.5 and above this parameter also causes the 
2797                 primary group of the forced user to be used as the primary group 
2798                 for all file activity. Prior to 2.0.5 the primary group was left 
2799                 as the primary group of the connecting user (this was a bug).</para>
2800
2801                 <para>See also <link linkend="FORCEGROUP"><parameter>force group
2802                 </parameter></link></para>
2803
2804                 <para>Default: <emphasis>no forced user</emphasis></para>
2805                 <para>Example: <command>force user = auser</command></para>
2806                 </listitem>
2807                 </varlistentry>
2808
2809
2810
2811                 <varlistentry>
2812                 <term><anchor id="FSTYPE">fstype (S)</term>
2813                 <listitem><para>This parameter allows the administrator to 
2814                 configure the string that specifies the type of filesystem a share 
2815                 is using that is reported by <ulink url="smbd.8.html"><command>smbd(8)
2816                 </command></ulink> when a client queries the filesystem type
2817                 for a share. The default type is <constant>NTFS</constant> for 
2818                 compatibility with Windows NT but this can be changed to other 
2819                 strings such as <constant>Samba</constant> or <constant>FAT
2820                 </constant> if required.</para>
2821                 
2822                 <para>Default: <command>fstype = NTFS</command></para>
2823                 <para>Example: <command>fstype = Samba</command></para></listitem>
2824                 </varlistentry>
2825                 
2826                 
2827                 
2828                 <varlistentry>
2829                 <term><anchor id="GETWDCACHE">getwd cache (G)</term>
2830                 <listitem><para>This is a tuning option. When this is enabled a 
2831                 caching algorithm will be used to reduce the time taken for getwd() 
2832                 calls. This can have a significant impact on performance, especially 
2833                 when the <link linkend="WIDELINKS"><parameter>wide links</parameter>
2834                 </link>parameter is set to <constant>no</constant>.</para>
2835
2836                 <para>Default: <command>getwd cache = yes</command></para>
2837                 </listitem>
2838                 </varlistentry>
2839
2840
2841
2842                 <varlistentry>
2843                 <term><anchor id="GROUP">group (S)</term>
2844                 <listitem><para>Synonym for <link linkend="FORCEGROUP"><parameter>force 
2845                 group</parameter></link>.</para></listitem>
2846                 </varlistentry>
2847                 
2848                 
2849                 
2850                 <varlistentry>
2851                 <term><anchor id="GUESTACCOUNT">guest account (S)</term>
2852                 <listitem><para>This is a username which will be used for access 
2853                 to services which are specified as <link linkend="GUESTOK"><parameter>
2854                 guest ok</parameter></link> (see below). Whatever privileges this 
2855                 user has will be available to any client connecting to the guest service. 
2856                 Typically this user will exist in the password file, but will not
2857                 have a valid login. The user account "ftp" is often a good choice 
2858                 for this parameter. If a username is specified in a given service, 
2859                 the specified username overrides this one.</para>
2860
2861                 <para>One some systems the default guest account "nobody" may not 
2862                 be able to print. Use another account in this case. You should test 
2863                 this by trying to log in as your guest user (perhaps by using the 
2864                 <command>su -</command> command) and trying to print using the 
2865                 system print command such as <command>lpr(1)</command> or <command>
2866                 lp(1)</command>.</para>
2867
2868                 <para>This parameter does not accept % macros, because
2869                 many parts of the system require this value to be
2870                 constant for correct operation.</para>
2871                 
2872                 <para>Default: <emphasis>specified at compile time, usually 
2873                 "nobody"</emphasis></para>
2874
2875                 <para>Example: <command>guest account = ftp</command></para></listitem>
2876                 </varlistentry>
2877
2878                 
2879                 
2880                 <varlistentry>
2881                 <term><anchor id="GUESTOK">guest ok (S)</term>
2882                 <listitem><para>If this parameter is <constant>yes</constant> for 
2883                 a service, then no password is required to connect to the service. 
2884                 Privileges will be those of the <link linkend="GUESTACCOUNT"><parameter>
2885                 guest account</parameter></link>.</para>
2886
2887                 <para>See the section below on <link linkend="SECURITY"><parameter>
2888                 security</parameter></link> for more information about this option.
2889                 </para>
2890
2891                 <para>Default: <command>guest ok = no</command></para></listitem>
2892                 </varlistentry>
2893                 
2894                 
2895                 
2896                 <varlistentry>
2897                 <term><anchor id="GUESTONLY">guest only (S)</term>
2898                 <listitem><para>If this parameter is <constant>yes</constant> for 
2899                 a service, then only guest connections to the service are permitted. 
2900                 This parameter will have no effect if <link linkend="GUESTOK">
2901                 <parameter>guest ok</parameter></link> is not set for the service.</para>
2902
2903                 <para>See the section below on <link linkend="SECURITY"><parameter>
2904                 security</parameter></link> for more information about this option.
2905                 </para>
2906
2907                 <para>Default: <command>guest only = no</command></para></listitem>
2908                 </varlistentry>
2909
2910
2911                 
2912                 <varlistentry>
2913                 <term><anchor id="HIDEDOTFILES">hide dot files (S)</term>
2914                 <listitem><para>This is a boolean parameter that controls whether 
2915                 files starting with a dot appear as hidden files.</para>
2916
2917                 <para>Default: <command>hide dot files = yes</command></para></listitem>
2918                 </varlistentry>
2919
2920
2921         
2922                 <varlistentry>
2923                 <term><anchor id="HIDEFILES">hide files(S)</term>
2924                 <listitem><para>This is a list of files or directories that are not 
2925                 visible but are accessible.  The DOS 'hidden' attribute is applied 
2926                 to any files or directories that match.</para>
2927
2928                 <para>Each entry in the list must be separated by a '/', 
2929                 which allows spaces to be included in the entry.  '*'
2930                 and '?' can be used to specify multiple files or directories 
2931                 as in DOS wildcards.</para>
2932
2933                 <para>Each entry must be a Unix path, not a DOS path and must 
2934                 not include the Unix directory separator '/'.</para>
2935
2936                 <para>Note that the case sensitivity option is applicable 
2937                 in hiding files.</para>
2938                 
2939                 <para>Setting this parameter will affect the performance of Samba, 
2940                 as it will be forced to check all files and directories for a match 
2941                 as they are scanned.</para>
2942
2943                 <para>See also <link linkend="HIDEDOTFILES"><parameter>hide 
2944                 dot files</parameter></link>, <link linkend="VETOFILES"><parameter>
2945                 veto files</parameter></link> and <link linkend="CASESENSITIVE">
2946                 <parameter>case sensitive</parameter></link>.</para>
2947
2948                 <para>Default: <emphasis>no file are hidden</emphasis></para>
2949                 <para>Example: <command>hide files =
2950                 /.*/DesktopFolderDB/TrashFor%m/resource.frk/</command></para>
2951
2952                 <para>The above example is based on files that the Macintosh 
2953                 SMB client (DAVE) available from <ulink url="http://www.thursby.com"> 
2954                 Thursby</ulink> creates for internal use, and also still hides 
2955                 all files beginning with a dot.</para></listitem>
2956                 </varlistentry>
2957                 
2958                 
2959                 
2960                 <varlistentry>
2961                 <term><anchor id="HIDELOCALUSERS">hide local users(G)</term>
2962                 <listitem><para>This parameter toggles the hiding of local UNIX 
2963                 users (root, wheel, floppy, etc) from remote clients.</para>
2964
2965                 <para>Default: <command>hide local users = no</command></para></listitem>
2966                 </varlistentry>
2967
2968
2969
2970                 <varlistentry>
2971                 <term><anchor id="HIDEUNREADABLE">hide unreadable (G)</term>
2972                 <listitem><para>This parameter prevents clients from seeing the
2973                 existance of files that cannot be read. Defaults to off.</para>
2974
2975                 <para>Default: <command>hide unreadable = no</command></para>
2976                 </listitem>
2977                 </varlistentry>
2978
2979                 <varlistentry>
2980                 <term><anchor id="HIDEUNWRITEABLEFILES">hide unwriteable files (G)</term>
2981                 <listitem><para>This parameter prevents clients from seeing
2982                 the existance of files that cannot be written to. Defaults to off.
2983                 Note that unwriteable directories are shown as usual.
2984                 </para>
2985
2986                 <para>Default: <command>hide unwriteable = no</command></para>
2987                 </listitem>
2988                 </varlistentry>
2989
2990                 <varlistentry>
2991                 <term><anchor id="HIDESPECIALFILES">hide special files (G)</term>
2992                 <listitem><para>This parameter prevents clients from seeing
2993                 special files such as sockets, devices and fifo's in directory 
2994                 listings.
2995                 </para>
2996
2997                 <para>Default: <command>hide special files = no</command></para>
2998                 </listitem>
2999                 </varlistentry>
3000
3001                 <varlistentry>
3002                 <term><anchor id="HOMEDIRMAP">homedir map (G)</term>
3003                 <listitem><para>If<link linkend="NISHOMEDIR"><parameter>nis homedir
3004                 </parameter></link> is <constant>yes</constant>, and <ulink 
3005                 url="smbd.8.html"><command>smbd(8)</command></ulink> is also acting 
3006                 as a Win95/98 <parameter>logon server</parameter> then this parameter 
3007                 specifies the NIS (or YP) map from which the server for the user's 
3008                 home directory should be extracted.  At present, only the Sun 
3009                 auto.home map format is understood. The form of the map is:</para>
3010
3011                 <para><command>username server:/some/file/system</command></para>
3012
3013                 <para>and the program will extract the servername from before 
3014                 the first ':'.  There should probably be a better parsing system 
3015                 that copes with different map formats and also Amd (another 
3016                 automounter) maps.</para>
3017                 
3018                 <para><emphasis>NOTE :</emphasis>A working NIS client is required on 
3019                 the system for this option to work.</para>
3020
3021                 <para>See also <link linkend="NISHOMEDIR"><parameter>nis homedir</parameter>
3022                 </link>, <link linkend="DOMAINLOGONS"><parameter>domain logons</parameter>
3023                 </link>.</para>
3024
3025                 <para>Default: <command>homedir map = &lt;empty string&gt;</command></para>
3026                 <para>Example: <command>homedir map = amd.homedir</command></para>
3027                 </listitem>
3028                 </varlistentry>
3029
3030
3031
3032
3033         
3034                 <varlistentry>
3035                 <term><anchor id="HOSTMSDFS">host msdfs (G)</term>
3036                 <listitem><para>This boolean parameter is only available 
3037                 if Samba has been configured and compiled with the <command>
3038                 --with-msdfs</command> option. If set to <constant>yes</constant>, 
3039                 Samba will act as a Dfs server, and  allow Dfs-aware clients 
3040                 to browse Dfs trees hosted on the server.</para>
3041
3042                 <para>See also the <link linkend="MSDFSROOT"><parameter>
3043                 msdfs root</parameter></link> share  level  parameter.  For
3044                 more  information  on  setting  up a Dfs tree on Samba,
3045                 refer to <ulink url="msdfs_setup.html">msdfs_setup.html</ulink>.
3046                 </para>
3047                 
3048                 <para>Default: <command>host msdfs = no</command></para>
3049                 </listitem>
3050                 </varlistentry>
3051                 
3052                 <varlistentry>
3053                 <term><anchor id="HOSTNAMELOOKUPS">hostname lookups (G)</term>
3054                 <listitem><para>Specifies whether samba should use (expensive)
3055                 hostname lookups or use the ip addresses instead. An example place
3056                 where hostname lookups are currently used is when checking 
3057                 the <command>hosts deny</command> and <command>hosts allow</command>.
3058                 </para>
3059
3060                 <para>Default: <command>hostname lookups = yes</command></para>
3061
3062                 <para>Example: <command>hostname lookups = no</command></para>
3063
3064                 </listitem>
3065                 </varlistentry>
3066
3067         
3068                 <varlistentry>
3069                 <term><anchor id="HOSTSALLOW">hosts allow (S)</term>
3070                 <listitem><para>A synonym for this parameter is <parameter>allow 
3071                 hosts</parameter>.</para>
3072                 
3073                 <para>This parameter is a comma, space, or tab delimited 
3074                 set of hosts which are permitted to access a service.</para>
3075
3076                 <para>If specified in the [global] section then it will
3077                 apply to all services, regardless of whether the individual 
3078                 service has a different setting.</para>
3079
3080                 <para>You can specify the hosts by name or IP number. For 
3081                 example, you could restrict access to only the hosts on a 
3082                 Class C subnet with something like <command>allow hosts = 150.203.5.
3083                 </command>. The full syntax of the list is described in the man 
3084                 page <filename>hosts_access(5)</filename>. Note that this man
3085                 page may not be present on your system, so a brief description will
3086                 be given here also.</para>
3087
3088                 <para>Note that the localhost address 127.0.0.1 will always 
3089                 be allowed access unless specifically denied by a <link 
3090                 linkend="HOSTSDENY"><parameter>hosts deny</parameter></link> option.</para>
3091
3092                 <para>You can also specify hosts by network/netmask pairs and 
3093                 by netgroup names if your system supports netgroups. The 
3094                 <emphasis>EXCEPT</emphasis> keyword can also be used to limit a 
3095                 wildcard list. The following examples may provide some help:</para>
3096
3097                 <para>Example 1: allow all IPs in 150.203.*.*; except one</para>
3098
3099                 <para><command>hosts allow = 150.203. EXCEPT 150.203.6.66</command></para>
3100
3101                 <para>Example 2: allow hosts that match the given network/netmask</para>
3102
3103                 <para><command>hosts allow = 150.203.15.0/255.255.255.0</command></para>
3104
3105                 <para>Example 3: allow a couple of hosts</para>
3106
3107                 <para><command>hosts allow = lapland, arvidsjaur</command></para>
3108
3109                 <para>Example 4: allow only hosts in NIS netgroup "foonet", but 
3110                 deny access from one particular host</para>
3111
3112                 <para><command>hosts allow = @foonet</command></para>
3113
3114                 <para><command>hosts deny = pirate</command></para>
3115
3116                 <para>Note that access still requires suitable user-level passwords.</para>
3117
3118                 <para>See <ulink url="testparm.1.html"><command>testparm(1)</command>
3119                 </ulink> for a way of testing your host access to see if it does 
3120                 what you expect.</para>
3121
3122                 <para>Default: <emphasis>none (i.e., all hosts permitted access)
3123                 </emphasis></para>
3124                 
3125                 <para>Example: <command>allow hosts = 150.203.5. myhost.mynet.edu.au
3126                 </command></para>
3127                 </listitem>
3128                 </varlistentry>
3129
3130
3131
3132                 <varlistentry>
3133                 <term><anchor id="HOSTSDENY">hosts deny (S)</term>
3134                 <listitem><para>The opposite of <parameter>hosts allow</parameter> 
3135                 - hosts listed here are <emphasis>NOT</emphasis> permitted access to 
3136                 services unless the specific services have their own lists to override 
3137                 this one. Where the lists conflict, the <parameter>allow</parameter> 
3138                 list takes precedence.</para>
3139                 
3140                 <para>Default: <emphasis>none (i.e., no hosts specifically excluded)
3141                 </emphasis></para>
3142
3143                 <para>Example: <command>hosts deny = 150.203.4. badhost.mynet.edu.au
3144                 </command></para></listitem>
3145                 </varlistentry>
3146
3147
3148
3149                 <varlistentry>
3150                 <term><anchor id="HOSTSEQUIV">hosts equiv (G)</term>
3151                 <listitem><para>If this global parameter is a non-null string, 
3152                 it specifies the name of a file to read for the names of hosts 
3153                 and users who will be allowed access without specifying a password.
3154                 </para>
3155                 
3156                 <para>This is not be confused with <link linkend="HOSTSALLOW">
3157                 <parameter>hosts allow</parameter></link> which is about hosts 
3158                 access to services and is more useful for guest services. <parameter>
3159                 hosts equiv</parameter> may be useful for NT clients which will 
3160                 not supply passwords to Samba.</para>
3161
3162                 <para><emphasis>NOTE :</emphasis> The use of <parameter>hosts equiv
3163                 </parameter> can be a major security hole. This is because you are 
3164                 trusting the PC to supply the correct username. It is very easy to 
3165                 get a PC to supply a false username. I recommend that the 
3166                 <parameter>hosts equiv</parameter> option be only used if you really 
3167                 know what you are doing, or perhaps on a home network where you trust 
3168                 your spouse and kids. And only if you <emphasis>really</emphasis> trust 
3169                 them :-).</para>
3170                 
3171                 <para>Default: <emphasis>no host equivalences</emphasis></para>
3172                 <para>Example: <command>hosts equiv = /etc/hosts.equiv</command></para>
3173                 </listitem>
3174                 </varlistentry>
3175
3176
3177
3178                 <varlistentry>
3179                 <term><anchor id="INCLUDE">include (G)</term>
3180                 <listitem><para>This allows you to include one config file 
3181                 inside another.  The file is included literally, as though typed 
3182                 in place.</para>
3183
3184                 <para>It takes the standard substitutions, except <parameter>%u
3185                 </parameter>, <parameter>%P</parameter> and <parameter>%S</parameter>.
3186                 </para>
3187                 
3188                 <para>Default: <emphasis>no file included</emphasis></para>
3189                 <para>Example: <command>include = /usr/local/samba/lib/admin_smb.conf
3190                 </command></para></listitem>
3191                 </varlistentry>
3192
3193
3194
3195                 <varlistentry>
3196                 <term><anchor id="INHERITACLS">inherit acls (S)</term>
3197                 <listitem><para>This parameter can be used to ensure
3198                 that if default acls exist on parent directories,
3199                 they are always honored when creating a subdirectory.
3200                 The default behavior is to use the mode specified
3201                 when creating the directory.  Enabling this option
3202                 sets the mode to 0777, thus guaranteeing that 
3203                 default directory acls are propagated.
3204                 </para>
3205
3206                 <para>Default: <command>inherit acls = no</command>
3207                 </para></listitem>
3208                 </varlistentry>
3209                 
3210
3211
3212
3213                 <varlistentry>
3214                 <term><anchor id="INHERITPERMISSIONS">inherit permissions (S)</term>
3215                 <listitem><para>The permissions on new files and directories 
3216                 are normally governed by <link linkend="CREATEMASK"><parameter>
3217                 create mask</parameter></link>, <link linkend="DIRECTORYMASK">
3218                 <parameter>directory mask</parameter></link>, <link 
3219                 linkend="FORCECREATEMODE"><parameter>force create mode</parameter>
3220                 </link> and <link linkend="FORCEDIRECTORYMODE"><parameter>force 
3221                 directory mode</parameter></link> but the boolean inherit 
3222                 permissions parameter overrides this.</para>
3223                 
3224                 <para>New directories inherit the mode of the parent directory,
3225                 including bits such as setgid.</para>
3226
3227                 <para>New files inherit their read/write bits from the parent 
3228                 directory.  Their execute bits continue to be determined by
3229                 <link linkend="MAPARCHIVE"><parameter>map archive</parameter>
3230                 </link>, <link linkend="MAPHIDDEN"><parameter>map hidden</parameter>
3231                 </link> and <link linkend="MAPSYSTEM"><parameter>map system</parameter>
3232                 </link> as usual.</para>
3233
3234                 <para>Note that the setuid bit is <emphasis>never</emphasis> set via 
3235                 inheritance (the code explicitly prohibits this).</para>
3236
3237                 <para>This can be particularly useful on large systems with 
3238                 many users, perhaps several thousand, to allow a single [homes] 
3239                 share to be used flexibly by each user.</para>
3240                 
3241                 <para>See also <link linkend="CREATEMASK"><parameter>create mask
3242                 </parameter></link>, <link linkend="DIRECTORYMASK"><parameter>
3243                 directory mask</parameter></link>, <link linkend="FORCECREATEMODE">
3244                 <parameter>force create mode</parameter></link> and <link
3245                 linkend="FORCEDIRECTORYMODE"><parameter>force directory mode</parameter>
3246                 </link>.</para>
3247
3248                 <para>Default: <command>inherit permissions = no</command></para>
3249                 </listitem>
3250                 </varlistentry>
3251                 
3252                 
3253                 
3254                 <varlistentry>
3255                 <term><anchor id="INTERFACES">interfaces (G)</term>
3256                 <listitem><para>This option allows you to override the default 
3257                 network interfaces list that Samba will use for browsing, name 
3258                 registration and other NBT traffic. By default Samba will query 
3259                 the kernel for the list of all active interfaces and use any 
3260                 interfaces except 127.0.0.1 that are broadcast capable.</para>
3261
3262                 <para>The option takes a list of interface strings. Each string 
3263                 can be in any of the following forms:</para>
3264
3265                 <itemizedlist>
3266                         <listitem><para>a network interface name (such as eth0). 
3267                         This may include shell-like wildcards so eth* will match 
3268                         any interface starting with the substring "eth"</para></listitem>
3269                         
3270                         <listitem><para>an IP address. In this case the netmask is 
3271                         determined from the list of interfaces obtained from the 
3272                         kernel</para></listitem>
3273                         
3274                         <listitem><para>an IP/mask pair. </para></listitem>
3275                         
3276                         <listitem><para>a broadcast/mask pair.</para></listitem>
3277                 </itemizedlist>
3278
3279                 <para>The "mask" parameters can either be a bit length (such 
3280                 as 24 for a C class network) or a full netmask in dotted 
3281                 decimal form.</para>
3282
3283                 <para>The "IP" parameters above can either be a full dotted 
3284                 decimal IP address or a hostname which will be looked up via 
3285                 the OS's normal hostname resolution mechanisms.</para>
3286
3287                 <para>For example, the following line:</para>
3288                 
3289                 <para><command>interfaces = eth0 192.168.2.10/24 192.168.3.10/255.255.255.0
3290                 </command></para>
3291
3292                 <para>would configure three network interfaces corresponding 
3293                 to the eth0 device and IP addresses 192.168.2.10 and 192.168.3.10. 
3294                 The netmasks of the latter two interfaces would be set to 255.255.255.0.</para>
3295
3296                 <para>See also <link linkend="BINDINTERFACESONLY"><parameter>bind 
3297                 interfaces only</parameter></link>.</para>
3298                 
3299                 <para>Default: <emphasis>all active interfaces except 127.0.0.1 
3300                 that are broadcast capable</emphasis></para>
3301                 </listitem>
3302                 </varlistentry>
3303                 
3304                 
3305                 
3306                 <varlistentry>
3307                 <term><anchor id="INVALIDUSERS">invalid users (S)</term>
3308                 <listitem><para>This is a list of users that should not be allowed 
3309                 to login to this service. This is really a <emphasis>paranoid</emphasis> 
3310                 check to absolutely ensure an improper setting does not breach 
3311                 your security.</para>
3312                 
3313                 <para>A name starting with a '@' is interpreted as an NIS 
3314                 netgroup first (if your system supports NIS), and then as a UNIX 
3315                 group if the name was not found in the NIS netgroup database.</para>
3316
3317                 <para>A name starting with '+' is interpreted only 
3318                 by looking in the UNIX group database. A name starting with 
3319                 '&' is interpreted only by looking in the NIS netgroup database 
3320                 (this requires NIS to be working on your system). The characters 
3321                 '+' and '&' may be used at the start of the name in either order 
3322                 so the value <parameter>+&amp;group</parameter> means check the 
3323                 UNIX group database, followed by the NIS netgroup database, and 
3324                 the value <parameter>&+group</parameter> means check the NIS
3325                 netgroup database, followed by the UNIX group database (the 
3326                 same as the '@' prefix).</para>
3327
3328                 <para>The current servicename is substituted for <parameter>%S</parameter>. 
3329                 This is useful in the [homes] section.</para>
3330
3331                 <para>See also <link linkend="VALIDUSERS"><parameter>valid users
3332                 </parameter></link>.</para>
3333
3334                 <para>Default: <emphasis>no invalid users</emphasis></para>
3335                 <para>Example: <command>invalid users = root fred admin @wheel
3336                 </command></para>
3337                 </listitem>
3338                 </varlistentry>
3339                 
3340                 
3341                 
3342                 <varlistentry>
3343                 <term><anchor id="KEEPALIVE">keepalive (G)</term>
3344                 <listitem><para>The value of the parameter (an integer) represents 
3345                 the number of seconds between <parameter>keepalive</parameter> 
3346                 packets. If this parameter is zero, no keepalive packets will be 
3347                 sent. Keepalive packets, if sent, allow the server to tell whether 
3348                 a client is still present and responding.</para>
3349
3350                 <para>Keepalives should, in general, not be needed if the socket 
3351                 being used has the SO_KEEPALIVE attribute set on it (see <link 
3352                 linkend="SOCKETOPTIONS"><parameter>socket options</parameter></link>). 
3353                 Basically you should only use this option if you strike difficulties.</para>
3354
3355                 <para>Default: <command>keepalive = 300</command></para>
3356                 <para>Example: <command>keepalive = 600</command></para>
3357                 </listitem>
3358                 </varlistentry>
3359
3360         
3361         
3362                 <varlistentry>
3363                 <term><anchor id="KERNELOPLOCKS">kernel oplocks (G)</term>
3364                 <listitem><para>For UNIXes that support kernel based <link
3365                 linkend="OPLOCKS"><parameter>oplocks</parameter></link>
3366                 (currently only IRIX and the Linux 2.4 kernel), this parameter 
3367                 allows the use of them to be turned on or off.</para>
3368
3369                 <para>Kernel oplocks support allows Samba <parameter>oplocks
3370                 </parameter> to be broken whenever a local UNIX process or NFS operation 
3371                 accesses a file that <ulink url="smbd.8.html"><command>smbd(8)</command>
3372                 </ulink> has oplocked. This allows complete data consistency between 
3373                 SMB/CIFS, NFS and local file access (and is a <emphasis>very</emphasis> 
3374                 cool feature :-).</para>
3375
3376                 <para>This parameter defaults to <constant>on</constant>, but is translated
3377                 to a no-op on systems that no not have the necessary kernel support.
3378                 You should never need to touch this parameter.</para>
3379
3380                 <para>See also the <link linkend="OPLOCKS"><parameter>oplocks</parameter>
3381                 </link> and <link linkend="LEVEL2OPLOCKS"><parameter>level2 oplocks
3382                 </parameter></link> parameters.</para>
3383                 
3384                 <para>Default: <command>kernel oplocks = yes</command></para>
3385                 </listitem>
3386                 </varlistentry>
3387
3388
3389
3390
3391                 <varlistentry>
3392                 <term><anchor id="LANMANAUTH">lanman auth (G)</term>
3393                 <listitem><para>This parameter determines whether or not <ulink url="smbd.8.html">smbd</ulink> will
3394                 attempt to authenticate users using the LANMAN password hash.
3395                 If disabled, only clients which support NT password hashes (e.g. Windows 
3396                 NT/2000 clients, smbclient, etc... but not Windows 95/98 or the MS DOS 
3397                 network client) will be able to connect to the Samba host.</para>
3398                 
3399                 <para>Default : <command>lanman auth = yes</command></para>
3400                 </listitem>
3401                 </varlistentry>
3402
3403
3404
3405
3406
3407                 <varlistentry>
3408                 <term><anchor id="LARGEREADWRITE">large readwrite (G)</term>
3409                 <listitem><para>This parameter determines whether or not <ulink url="smbd.8.html">smbd</ulink>
3410                 supports the new 64k streaming read and write varient SMB requests introduced
3411                 with Windows 2000. Note that due to Windows 2000 client redirector bugs
3412                 this requires Samba to be running on a 64-bit capable operating system such
3413                 as IRIX, Solaris or a Linux 2.4 kernel. Can improve performance by 10% with
3414                 Windows 2000 clients. Defaults to on. Not as tested as some other Samba
3415                 code paths.
3416                 </para>
3417                 
3418                 <para>Default : <command>large readwrite = yes</command></para>
3419                 </listitem>
3420                 </varlistentry>
3421
3422
3423
3424                 <varlistentry>
3425                 <term><anchor id="LDAPADMINDN">ldap admin dn (G)</term>
3426                 <listitem><para> The <parameter>ldap admin dn</parameter> defines the Distinguished 
3427                 Name (DN) name used by Samba to contact the ldap server when retreiving 
3428                 user account information. The <parameter>ldap
3429                 admin dn</parameter> is used in conjunction with the admin dn password
3430                 stored in the <filename>private/secrets.tdb</filename> file.  See the
3431                 <ulink url="smbpasswd.8.html"><command>smbpasswd(8)</command></ulink> man
3432                 page for more information on how to accmplish this.
3433                 </para>
3434         
3435                 
3436                 <para>Default : <emphasis>none</emphasis></para>
3437                 </listitem>
3438                 </varlistentry>
3439
3440
3441
3442
3443                 <varlistentry>
3444                 <term><anchor id="LDAPFILTER">ldap filter (G)</term>
3445                 <listitem><para>This parameter specifies the RFC 2254 compliant LDAP search filter.
3446                 The default is to match the login name with the <constant>uid</constant> 
3447                 attribute for all entries matching the <constant>sambaAccount</constant>                
3448                 objectclass.  Note that this filter should only return one entry.
3449                 </para>
3450         
3451                 
3452                 <para>Default : <command>ldap filter = (&amp;(uid=%u)(objectclass=sambaAccount))</command></para>
3453                 </listitem>
3454                 </varlistentry>
3455
3456
3457                 <varlistentry>
3458                 <term><anchor id="LDAPPORT">ldap port (G)</term>
3459                 <listitem><para>This parameter is only available if Samba has been
3460                 configure to include the <command>--with-ldapsam</command> option
3461                 at compile time.
3462                 </para>
3463
3464                 <para>
3465                 This option is used to control the tcp port number used to contact
3466                 the <link linkend="LDAPSERVER"><parameter>ldap server</parameter></link>.
3467                 The default is to use the stand LDAPS port 636.
3468                 </para>
3469
3470                 <para>See Also: <link linkend="LDAPSSL">ldap ssl</link>
3471                 </para>
3472
3473                 <para>Default : <command>ldap port = 636 ; if ldap ssl = on</command></para>
3474                 <para>Default : <command>ldap port = 389 ; if ldap ssl = off</command></para>
3475                 </listitem>
3476                 </varlistentry>
3477
3478
3479                 <varlistentry>
3480                 <term><anchor id="LDAPSERVER">ldap server (G)</term>
3481                 <listitem><para>This parameter is only available if Samba has been
3482                 configure to include the <command>--with-ldapsam</command> option
3483                 at compile time.
3484                 </para>
3485
3486                 <para>
3487                 This parameter should contain the FQDN of the ldap directory
3488                 server which should be queried to locate user account information.
3489                 </para>
3490
3491                 <para>Default : <command>ldap server = localhost</command></para>
3492                 </listitem>
3493                 </varlistentry>
3494
3495
3496                 <varlistentry>
3497                 <term><anchor id="LDAPSSL">ldap ssl (G)</term>
3498                 <listitem><para>This option is used to define whether or not Samba should
3499                 use SSL when connecting to the ldap server
3500                 This is <emphasis>NOT</emphasis> related to
3501                 Samba's previous SSL support which was enabled by specifying the 
3502                 <command>--with-ssl</command> option to the <filename>configure</filename> 
3503                 script.
3504                 </para>
3505                 
3506                 <para>
3507                 The <parameter>ldap ssl</parameter> can be set to one of three values:
3508                 </para> 
3509                 <itemizedlist>
3510                         <listitem><para><parameter>Off</parameter> = Never use SSL when querying the directory.</para></listitem>
3511
3512                         <listitem><para><parameter>Start_tls</parameter> = Use the LDAPv3 StartTLS extended operation 
3513                         (RFC2830) for communicating with the directory server.</para></listitem>
3514             
3515                         <listitem><para><parameter>On</parameter>  =
3516                         Use SSL on the ldaps port when contacting the 
3517                         <parameter>ldap server</parameter>.  Only
3518                         available when the backwards-compatiblity <command>
3519                         --with-ldapsam</command> option is specified
3520                         to configure.  See <link linkend="PASSDBBACKEND"><parameter>passdb backend</parameter></link></para></listitem>
3521                 </itemizedlist>         
3522                 
3523                 <para>Default : <command>ldap ssl = start_tls</command></para>
3524                 </listitem>
3525                 </varlistentry>
3526
3527
3528
3529
3530                 <varlistentry>
3531                 <term><anchor id="LDAPSUFFIX">ldap suffix (G)</term>
3532                 <listitem>
3533                 <para>Specifies where user and machine accounts are added to the tree. Can be overriden by <command>ldap user suffix</command> and <command>ldap machine suffix</command>. It also used as the base dn for all ldap searches. </para>
3534                 
3535                 <para>Default : <emphasis>none</emphasis></para>
3536                 </listitem>
3537                 </varlistentry>
3538
3539
3540
3541                 <varlistentry>
3542                 <term><anchor id="LDAPUSERSUFFIX">ldap user suffix (G)</term>
3543                 <listitem><para>It specifies where users are added to the tree.
3544                 </para>
3545                 
3546         
3547                 
3548                 <para>Default : <emphasis>none</emphasis></para>
3549                 </listitem>
3550                 </varlistentry>
3551
3552
3553
3554                 <varlistentry>
3555                 <term><anchor id="LDAPMACHINESUFFIX">ldap machine suffix (G)</term>
3556                 <listitem><para>It specifies where machines should be 
3557                 added to the ldap tree.
3558                 </para>
3559                 
3560         
3561                 
3562                 <para>Default : <emphasis>none</emphasis></para>
3563                 </listitem>
3564                 </varlistentry>
3565
3566                 <varlistentry>
3567                 <term><anchor id="LDAPPASSWDSYNC">ldap passwd sync (G)</term>
3568                 <listitem><para>This option is used to define whether
3569                 or not Samba should sync the LDAP password with the NT
3570                 and LM hashes for normal accounts (NOT for
3571                 workstation, server or domain trusts) on a password
3572                 change via SAMBA.  
3573                 </para>
3574
3575                 <para>
3576                 The <parameter>ldap passwd sync</parameter> can be set to one of three values:
3577                 </para>
3578                 <itemizedlist>
3579                         <listitem><para><parameter>Yes</parameter>  =  Try to update the LDAP, NT and LM passwords and update the pwdLastSet time.</para></listitem>
3580                         
3581                         <listitem><para><parameter>No</parameter> = Update NT and LM passwords and update the pwdLastSet time.</para></listitem>
3582
3583                         <listitem><para><parameter>Only</parameter> = Only update the LDAP password and let the LDAP server do the rest.</para></listitem>
3584                 </itemizedlist>         
3585                 
3586                 <para>Default : <command>ldap passwd sync = no</command></para>
3587                 </listitem>
3588                 </varlistentry>
3589
3590                 <varlistentry>
3591                 <term><anchor id="LDAPTRUSTIDS">ldap trust ids (G)</term>
3592                 <listitem><para>Normally, Samba validates each entry
3593                 in the LDAP server against getpwnam().  This allows
3594                 LDAP to be used for Samba with the unix system using
3595                 NIS (for example) and also ensures that Samba does not
3596                 present accounts that do not otherwise exist.  </para>
3597                 <para>This option is used to disable this functionality, and
3598                 instead to rely on the presence of the appropriate
3599                 attributes in LDAP directly, which can result in a
3600                 significant performance boost in some situations.  
3601                 Setting this option to yes effectivly assumes
3602                 that the local machine is running <command>nss_ldap</command> against the
3603                 same LDAP server.</para>
3604
3605                 <para>Default: <command>ldap trust ids = No</command></para>
3606                 </listitem>
3607                 </varlistentry>
3608
3609                 <varlistentry>
3610                 <term><anchor id="LEVEL2OPLOCKS">level2 oplocks (S)</term>
3611                 <listitem><para>This parameter controls whether Samba supports
3612                 level2 (read-only) oplocks on a share.</para>
3613                 
3614                 <para>Level2, or read-only oplocks allow Windows NT clients 
3615                 that have an oplock on a file to downgrade from a read-write oplock 
3616                 to a read-only oplock once a second client opens the file (instead 
3617                 of releasing all oplocks on a second open, as in traditional, 
3618                 exclusive oplocks). This allows all openers of the file that 
3619                 support level2 oplocks to cache the file for read-ahead only (ie. 
3620                 they may not cache writes or lock requests) and increases performance 
3621                 for many accesses of files that are not commonly written (such as 
3622                 application .EXE files).</para>
3623
3624                 <para>Once one of the clients which have a read-only oplock 
3625                 writes to the file all clients are notified (no reply is needed 
3626                 or waited for) and told to break their oplocks to "none" and 
3627                 delete any read-ahead caches.</para>
3628
3629                 <para>It is recommended that this parameter be turned on 
3630                 to speed access to shared executables.</para>
3631
3632                 <para>For more discussions on level2 oplocks see the CIFS spec.</para>
3633
3634                 <para>Currently, if <link linkend="KERNELOPLOCKS"><parameter>kernel 
3635                 oplocks</parameter></link> are supported then level2 oplocks are 
3636                 not granted (even if this parameter is set to <constant>yes</constant>). 
3637                 Note also, the <link linkend="OPLOCKS"><parameter>oplocks</parameter>
3638                 </link> parameter must be set to <constant>yes</constant> on this share in order for 
3639                 this parameter to have any effect.</para>
3640
3641                 <para>See also the <link linkend="OPLOCKS"><parameter>oplocks</parameter>
3642                 </link> and <link linkend="OPLOCKS"><parameter>kernel oplocks</parameter>
3643                 </link> parameters.</para>
3644                 
3645                 <para>Default: <command>level2 oplocks = yes</command></para>
3646                 </listitem>
3647                 </varlistentry>
3648
3649
3650
3651
3652
3653                 <varlistentry>
3654                 <term><anchor id="LMANNOUNCE">lm announce (G)</term>
3655                 <listitem><para>This parameter determines if <ulink url="nmbd.8.html">
3656                 <command>nmbd(8)</command></ulink> will produce Lanman announce 
3657                 broadcasts that are needed by OS/2 clients in order for them to see 
3658                 the Samba server in their browse list. This parameter can have three 
3659                 values, <constant>yes</constant>, <constant>no</constant>, or
3660                 <constant>auto</constant>. The default is <constant>auto</constant>.  
3661                 If set to <constant>no</constant> Samba will never produce these 
3662                 broadcasts. If set to <constant>yes</constant> Samba will produce 
3663                 Lanman announce broadcasts at a frequency set by the parameter 
3664                 <parameter>lm interval</parameter>. If set to <constant>auto</constant> 
3665                 Samba will not send Lanman announce broadcasts by default but will 
3666                 listen for them. If it hears such a broadcast on the wire it will 
3667                 then start sending them at a frequency set by the parameter 
3668                 <parameter>lm interval</parameter>.</para>
3669
3670                 <para>See also <link linkend="LMINTERVAL"><parameter>lm interval
3671                 </parameter></link>.</para>
3672
3673                 <para>Default: <command>lm announce = auto</command></para>
3674                 <para>Example: <command>lm announce = yes</command></para>
3675                 </listitem>
3676                 </varlistentry>
3677
3678
3679
3680                 <varlistentry>
3681                 <term><anchor id="LMINTERVAL">lm interval (G)</term>
3682                 <listitem><para>If Samba is set to produce Lanman announce 
3683                 broadcasts needed by OS/2 clients (see the <link linkend="LMANNOUNCE">
3684                 <parameter>lm announce</parameter></link> parameter) then this 
3685                 parameter defines the frequency in seconds with which they will be 
3686                 made.  If this is set to zero then no Lanman announcements will be 
3687                 made despite the setting of the <parameter>lm announce</parameter> 
3688                 parameter.</para>
3689
3690                 <para>See also <link linkend="LMANNOUNCE"><parameter>lm 
3691                 announce</parameter></link>.</para>
3692
3693                 <para>Default: <command>lm interval = 60</command></para>
3694                 <para>Example: <command>lm interval = 120</command></para>
3695                 </listitem>
3696                 </varlistentry>
3697
3698
3699
3700                 <varlistentry>
3701                 <term><anchor id="LOADPRINTERS">load printers (G)</term>
3702                 <listitem><para>A boolean variable that controls whether all 
3703                 printers in the printcap will be loaded for browsing by default. 
3704                 See the <link linkend="PRINTERSSECT">printers</link> section for 
3705                 more details.</para>
3706
3707                 <para>Default: <command>load printers = yes</command></para></listitem>
3708                 </varlistentry>
3709
3710
3711
3712
3713                 <varlistentry>
3714                 <term><anchor id="LOCALMASTER">local master (G)</term>
3715                 <listitem><para>This option allows <ulink url="nmbd.8.html"><command>
3716                 nmbd(8)</command></ulink> to try and become a local master browser 
3717                 on a subnet. If set to <constant>no</constant> then <command>
3718                 nmbd</command> will not attempt to become a local master browser 
3719                 on a subnet and will also lose in all browsing elections. By
3720                 default this value is set to <constant>yes</constant>. Setting this value to <constant>yes</constant> doesn't
3721                 mean that Samba will <emphasis>become</emphasis> the local master 
3722                 browser on a subnet, just that <command>nmbd</command> will <emphasis>
3723                 participate</emphasis> in elections for local master browser.</para>
3724
3725                 <para>Setting this value to <constant>no</constant> will cause <command>nmbd</command>
3726                 <emphasis>never</emphasis> to become a local master browser.</para>
3727
3728                 <para>Default: <command>local master = yes</command></para>
3729                 </listitem>
3730                 </varlistentry>
3731
3732
3733
3734                 <varlistentry>
3735                 <term><anchor id="LOCKDIR">lock dir (G)</term>
3736                 <listitem><para>Synonym for <link linkend="LOCKDIRECTORY"><parameter>
3737                 lock directory</parameter></link>.</para></listitem>
3738                 </varlistentry>
3739                 
3740                 
3741                 
3742                 <varlistentry>
3743                 <term><anchor id="LOCKDIRECTORY">lock directory (G)</term>
3744                 <listitem><para>This option specifies the directory where lock 
3745                 files will be placed.  The lock files are used to implement the 
3746                 <link linkend="MAXCONNECTIONS"><parameter>max connections</parameter>
3747                 </link> option.</para>
3748
3749                 <para>Default: <command>lock directory = ${prefix}/var/locks</command></para>
3750                 <para>Example: <command>lock directory = /var/run/samba/locks</command>
3751                 </para></listitem>
3752                 </varlistentry>
3753
3754
3755
3756                 <varlistentry>
3757                 <term><anchor id="LOCKSPINCOUNT">lock spin count (G)</term>
3758                 <listitem><para>This parameter controls the number of times
3759                 that smbd should attempt to gain a byte range lock on the 
3760                 behalf of a client request.  Experiments have shown that
3761                 Windows 2k servers do not reply with a failure if the lock
3762                 could not be immediately granted, but try a few more times
3763                 in case the lock could later be aquired.  This behavior
3764                 is used to support PC database formats such as MS Access
3765                 and FoxPro.
3766                 </para>
3767
3768                 <para>Default: <command>lock spin count = 2</command>
3769                 </para></listitem>
3770                 </varlistentry>
3771
3772
3773
3774
3775                 <varlistentry>
3776                 <term><anchor id="LOCKSPINTIME">lock spin time (G)</term>
3777                 <listitem><para>The time in microseconds that smbd should 
3778                 pause before attempting to gain a failed lock.  See
3779                 <link linkend="LOCKSPINCOUNT"><parameter>lock spin 
3780                 count</parameter></link> for more details.
3781                 </para>
3782
3783                 <para>Default: <command>lock spin time = 10</command>
3784                 </para></listitem>
3785                 </varlistentry>
3786
3787
3788
3789                 <varlistentry>
3790                 <term><anchor id="LOCKING">locking (S)</term>
3791                 <listitem><para>This controls whether or not locking will be 
3792                 performed by the server in response to lock requests from the 
3793                 client.</para>
3794
3795                 <para>If <command>locking = no</command>, all lock and unlock 
3796                 requests will appear to succeed and all lock queries will report 
3797                 that the file in question is available for locking.</para>
3798
3799                 <para>If <command>locking = yes</command>, real locking will be performed 
3800                 by the server.</para>
3801
3802                 <para>This option <emphasis>may</emphasis> be useful for read-only 
3803                 filesystems which <emphasis>may</emphasis> not need locking (such as 
3804                 CDROM drives), although setting this parameter of <constant>no</constant> 
3805                 is not really recommended even in this case.</para>
3806
3807                 <para>Be careful about disabling locking either globally or in a 
3808                 specific service, as lack of locking may result in data corruption. 
3809                 You should never need to set this parameter.</para>
3810
3811                 <para>Default: <command>locking = yes</command></para>
3812                 </listitem>
3813                 </varlistentry>
3814
3815
3816
3817                 <varlistentry>
3818                 <term><anchor id="LOGFILE">log file (G)</term>
3819                 <listitem><para>This option allows you to override the name 
3820                 of the Samba log file (also known as the debug file).</para>
3821
3822                 <para>This option takes the standard substitutions, allowing 
3823                 you to have separate log files for each user or machine.</para>
3824
3825                 <para>Example: <command>log file = /usr/local/samba/var/log.%m
3826                 </command></para></listitem>
3827                 </varlistentry>
3828
3829
3830
3831                 <varlistentry>
3832                 <term><anchor id="LOGLEVEL">log level (G)</term>
3833                 <listitem><para>The value of the parameter (a astring) allows 
3834                 the debug level (logging level) to be specified in the 
3835                 <filename>smb.conf</filename> file. This parameter has been
3836                 extended since the 2.2.x series, now it allow to specify the debug
3837                 level for multiple debug classes. This is to give greater 
3838                 flexibility in the configuration of the system.</para>
3839
3840                 <para>The default will be the log level specified on 
3841                 the command line or level zero if none was specified.</para>
3842
3843                 <para>Example: <command>log level = 3 passdb:5 auth:10 winbind:2
3844                 </command></para></listitem>
3845                 </varlistentry>
3846
3847
3848
3849                 <varlistentry>
3850                 <term><anchor id="LOGONDRIVE">logon drive (G)</term>
3851                 <listitem><para>This parameter specifies the local path to 
3852                 which the home directory will be connected (see <link 
3853                 linkend="LOGONHOME"><parameter>logon home</parameter></link>) 
3854                 and is only used by NT Workstations. </para>
3855
3856                 <para>Note that this option is only useful if Samba is set up as a
3857                 logon server.</para>
3858
3859                 <para>Default: <command>logon drive = z:</command></para>
3860                 <para>Example: <command>logon drive = h:</command></para>
3861                 </listitem>
3862                 </varlistentry>
3863
3864         
3865         
3866                 <varlistentry>
3867                 <term><anchor id="LOGONHOME">logon home (G)</term>
3868                 <listitem><para>This parameter specifies the home directory 
3869                 location when a Win95/98 or NT Workstation logs into a Samba PDC.  
3870                 It allows you to do </para>
3871                 
3872                 <para><prompt>C:\> </prompt><userinput>NET USE H: /HOME</userinput>
3873                 </para>
3874
3875                 <para>from a command prompt, for example.</para>
3876
3877                 <para>This option takes the standard substitutions, allowing 
3878                 you to have separate logon scripts for each user or machine.</para>
3879
3880                 <para>This parameter can be used with Win9X workstations to ensure 
3881                 that roaming profiles are stored in a subdirectory of the user's 
3882                 home directory.  This is done in the following way:</para>
3883
3884                 <para><command>logon home = \\%N\%U\profile</command></para>
3885
3886                 <para>This tells Samba to return the above string, with 
3887                 substitutions made when a client requests the info, generally 
3888                 in a NetUserGetInfo request.  Win9X clients truncate the info to
3889                 \\server\share when a user does <command>net use /home</command>
3890                 but use the whole string when dealing with profiles.</para>
3891
3892                 <para>Note that in prior versions of Samba, the <link linkend="LOGONPATH">
3893                 <parameter>logon path</parameter></link> was returned rather than 
3894                 <parameter>logon home</parameter>.  This broke <command>net use 
3895                 /home</command> but allowed profiles outside the home directory.  
3896                 The current implementation is correct, and can be used for 
3897                 profiles if you use the above trick.</para>
3898                 
3899                 <para>This option is only useful if Samba is set up as a logon 
3900                 server.</para>
3901
3902                 <para>Default: <command>logon home = "\\%N\%U"</command></para>
3903                 <para>Example: <command>logon home = "\\remote_smb_server\%U"</command>
3904                 </para></listitem>
3905                 </varlistentry>
3906
3907
3908                 <varlistentry>
3909                 <term><anchor id="LOGONPATH">logon path (G)</term>
3910                 <listitem><para>This parameter specifies the home directory 
3911                 where roaming profiles (NTuser.dat etc files for Windows NT) are 
3912                 stored.  Contrary to previous versions of these manual pages, it has 
3913                 nothing to do with Win 9X roaming profiles.  To find out how to 
3914                 handle roaming profiles for Win 9X system, see the <link linkend="LOGONHOME">
3915                 <parameter>logon home</parameter></link> parameter.</para>
3916
3917                 <para>This option takes the standard substitutions, allowing you 
3918                 to have separate logon scripts for each user or machine.  It also 
3919                 specifies the directory from which the "Application Data", 
3920                 (<filename>desktop</filename>, <filename>start menu</filename>,
3921                 <filename>network neighborhood</filename>, <filename>programs</filename> 
3922                 and other folders, and their contents, are loaded and displayed on 
3923                 your Windows NT client.</para>
3924                 
3925                 <para>The share and the path must be readable by the user for 
3926                 the preferences and directories to be loaded onto the Windows NT
3927                 client.  The share must be writeable when the user logs in for the first
3928                 time, in order that the Windows NT client can create the NTuser.dat
3929                 and other directories.</para>
3930
3931                 <para>Thereafter, the directories and any of the contents can, 
3932                 if required, be made read-only.  It is not advisable that the 
3933                 NTuser.dat file be made read-only - rename it to NTuser.man to 
3934                 achieve the desired effect (a <emphasis>MAN</emphasis>datory 
3935                 profile). </para>
3936
3937                 <para>Windows clients can sometimes maintain a connection to 
3938                 the [homes] share, even though there is no user logged in.  
3939                 Therefore, it is vital that the logon path does not include a 
3940                 reference to the homes share (i.e. setting this parameter to
3941                 \%N\%U\profile_path will cause problems).</para>
3942
3943                 <para>This option takes the standard substitutions, allowing 
3944                 you to have separate logon scripts for each user or machine.</para>
3945
3946                 <para>Note that this option is only useful if Samba is set up 
3947                 as a logon server.</para>
3948
3949                 <para>Default: <command>logon path = \\%N\%U\profile</command></para>
3950                 <para>Example: <command>logon path = \\PROFILESERVER\PROFILE\%U</command></para>
3951                 </listitem>
3952                 </varlistentry>
3953                 
3954                 
3955                 
3956                 <varlistentry>
3957                 <term><anchor id="LOGONSCRIPT">logon script (G)</term>
3958                 <listitem><para>This parameter specifies the batch file (.bat) or 
3959                 NT command file (.cmd) to be downloaded and run on a machine when 
3960                 a user successfully logs in.  The file must contain the DOS 
3961                 style CR/LF line endings. Using a DOS-style editor to create the 
3962                 file is recommended.</para>
3963                 
3964                 <para>The script must be a relative path to the [netlogon] 
3965                 service.  If the [netlogon] service specifies a <link linkend="PATH">
3966                 <parameter>path</parameter></link> of <filename>/usr/local/samba/netlogon
3967                 </filename>, and <command>logon script = STARTUP.BAT</command>, then 
3968                 the file that will be downloaded is:</para>
3969
3970                 <para><filename>/usr/local/samba/netlogon/STARTUP.BAT</filename></para>
3971
3972                 <para>The contents of the batch file are entirely your choice.  A 
3973                 suggested command would be to add <command>NET TIME \\SERVER /SET 
3974                 /YES</command>, to force every machine to synchronize clocks with 
3975                 the same time server.  Another use would be to add <command>NET USE 
3976                 U: \\SERVER\UTILS</command> for commonly used utilities, or <command>
3977                 NET USE Q: \\SERVER\ISO9001_QA</command> for example.</para>
3978
3979                 <para>Note that it is particularly important not to allow write 
3980                 access to the [netlogon] share, or to grant users write permission 
3981                 on the batch files in a secure environment, as this would allow 
3982                 the batch files to be arbitrarily modified and security to be 
3983                 breached.</para>
3984
3985                 <para>This option takes the standard substitutions, allowing you 
3986                 to have separate logon scripts for each user or machine.</para>
3987
3988                 <para>This option is only useful if Samba is set up as a logon 
3989                 server.</para>
3990
3991                 <para>Default: <emphasis>no logon script defined</emphasis></para>
3992                 <para>Example: <command>logon script = scripts\%U.bat</command></para>
3993                 </listitem>
3994                 </varlistentry>
3995
3996
3997
3998                 <varlistentry>
3999                 <term><anchor id="LPPAUSECOMMAND">lppause command (S)</term>
4000                 <listitem><para>This parameter specifies the command to be 
4001                 executed on the server host in order to stop printing or spooling 
4002                 a specific print job.</para>
4003
4004                 <para>This command should be a program or script which takes 
4005                 a printer name and job number to pause the print job. One way 
4006                 of implementing this is by using job priorities, where jobs 
4007                 having a too low priority won't be sent to the printer.</para>
4008
4009                 <para>If a <parameter>%p</parameter> is given then the printer name 
4010                 is put in its place. A <parameter>%j</parameter> is replaced with 
4011                 the job number (an integer).  On HPUX (see <parameter>printing=hpux
4012                 </parameter>), if the <parameter>-p%p</parameter> option is added 
4013                 to the lpq command, the job will show up with the correct status, i.e. 
4014                 if the job priority is lower than the set fence priority it will 
4015                 have the PAUSED status, whereas if  the priority is equal or higher it 
4016                 will have the SPOOLED or PRINTING status.</para>
4017
4018                 <para>Note that it is good practice to include the absolute path 
4019                 in the lppause command as the PATH may not be available to the server.</para>
4020
4021                 <para>See also the <link linkend="PRINTING"><parameter>printing
4022                 </parameter></link> parameter.</para>
4023
4024                 <para>Default: Currently no default value is given to 
4025                 this string, unless the value of the <parameter>printing</parameter> 
4026                 parameter is <constant>SYSV</constant>, in which case the default is :</para>
4027
4028                 <para><command>lp -i %p-%j -H hold</command></para>
4029
4030                 <para>or if the value of the <parameter>printing</parameter> parameter 
4031                 is <constant>SOFTQ</constant>, then the default is:</para>
4032
4033                 <para><command>qstat -s -j%j -h</command></para>
4034  
4035                 <para>Example for HPUX: <command>lppause command = /usr/bin/lpalt       
4036                 %p-%j -p0</command></para>
4037                 </listitem>
4038                 </varlistentry>
4039
4040
4041
4042                 <varlistentry>
4043                 <term><anchor id="LPQCACHETIME">lpq cache time (G)</term>
4044                 <listitem><para>This controls how long lpq info will be cached 
4045                 for to prevent the <command>lpq</command> command being called too 
4046                 often. A separate cache is kept for each variation of the <command>
4047                 lpq</command> command used by the system, so if you use different 
4048                 <command>lpq</command> commands for different users then they won't
4049                 share cache information.</para>
4050
4051                 <para>The cache files are stored in <filename>/tmp/lpq.xxxx</filename> 
4052                 where xxxx is a hash of the <command>lpq</command> command in use.</para>
4053
4054                 <para>The default is 10 seconds, meaning that the cached results 
4055                 of a previous identical <command>lpq</command> command will be used 
4056                 if the cached data is less than 10 seconds old. A large value may 
4057                 be advisable if your <command>lpq</command> command is very slow.</para>
4058
4059                 <para>A value of 0 will disable caching completely.</para>
4060
4061                 <para>See also the <link linkend="PRINTING"><parameter>printing
4062                 </parameter></link> parameter.</para>
4063
4064                 <para>Default: <command>lpq cache time = 10</command></para>
4065                 <para>Example: <command>lpq cache time = 30</command></para>
4066                 </listitem>
4067                 </varlistentry>
4068
4069
4070
4071                 <varlistentry>
4072                 <term><anchor id="LPQCOMMAND">lpq command (S)</term>
4073                 <listitem><para>This parameter specifies the command to be 
4074                 executed on the server host in order to obtain <command>lpq
4075                 </command>-style printer status information.</para>
4076
4077                 <para>This command should be a program or script which 
4078                 takes a printer name as its only parameter and outputs printer 
4079                 status information.</para>
4080
4081                 <para>Currently nine styles of printer status information 
4082                 are supported; BSD, AIX, LPRNG, PLP, SYSV, HPUX, QNX, CUPS, and SOFTQ. 
4083                 This covers most UNIX systems. You control which type is expected 
4084                 using the <parameter>printing =</parameter> option.</para>
4085
4086                 <para>Some clients (notably Windows for Workgroups) may not 
4087                 correctly send the connection number for the printer they are 
4088                 requesting status information about. To get around this, the 
4089                 server reports on the first printer service connected to by the 
4090                 client. This only happens if the connection number sent is invalid.</para>
4091
4092                 <para>If a <parameter>%p</parameter> is given then the printer name 
4093                 is put in its place. Otherwise it is placed at the end of the 
4094                 command.</para>
4095
4096                 <para>Note that it is good practice to include the absolute path 
4097                 in the <parameter>lpq command</parameter> as the <envar>$PATH
4098                 </envar> may not be available to the server.  When compiled with
4099                 the CUPS libraries, no <parameter>lpq command</parameter> is
4100                 needed because smbd will make a library call to obtain the 
4101                 print queue listing.</para>
4102
4103                 <para>See also the <link linkend="PRINTING"><parameter>printing
4104                 </parameter></link> parameter.</para>
4105
4106                 <para>Default: <emphasis>depends on the setting of <parameter>
4107                 printing</parameter></emphasis></para>
4108
4109                 <para>Example: <command>lpq command = /usr/bin/lpq -P%p</command></para>
4110                 </listitem>
4111                 </varlistentry>
4112                 
4113                 
4114                 
4115                 <varlistentry>
4116                 <term><anchor id="LPRESUMECOMMAND">lpresume command (S)</term>
4117                 <listitem><para>This parameter specifies the command to be 
4118                 executed on the server host in order to restart or continue 
4119                 printing or spooling a specific print job.</para>
4120
4121                 <para>This command should be a program or script which takes 
4122                 a printer name and job number to resume the print job. See 
4123                 also the <link linkend="LPPAUSECOMMAND"><parameter>lppause command
4124                 </parameter></link> parameter.</para>
4125
4126                 <para>If a <parameter>%p</parameter> is given then the printer name 
4127                 is put in its place. A <parameter>%j</parameter> is replaced with 
4128                 the job number (an integer).</para>
4129                 
4130                 <para>Note that it is good practice to include the absolute path 
4131                 in the <parameter>lpresume command</parameter> as the PATH may not 
4132                 be available to the server.</para>
4133                 
4134                 <para>See also the <link linkend="PRINTING"><parameter>printing
4135                 </parameter></link> parameter.</para>
4136
4137                 <para>Default: Currently no default value is given 
4138                 to this string, unless the value of the <parameter>printing</parameter> 
4139                 parameter is <constant>SYSV</constant>, in which case the default is :</para>
4140
4141                 <para><command>lp -i %p-%j -H resume</command></para>
4142
4143                 <para>or if the value of the <parameter>printing</parameter> parameter 
4144                 is <constant>SOFTQ</constant>, then the default is:</para>
4145
4146                 <para><command>qstat -s -j%j -r</command></para>
4147  
4148                 <para>Example for HPUX: <command>lpresume command = /usr/bin/lpalt 
4149                 %p-%j -p2</command></para>
4150                 </listitem>
4151                 </varlistentry>
4152                 
4153                 
4154
4155                 <varlistentry>
4156                 <term><anchor id="LPRMCOMMAND">lprm command (S)</term>
4157                 <listitem><para>This parameter specifies the command to be 
4158                 executed on the server host in order to delete a print job.</para>
4159
4160                 <para>This command should be a program or script which takes 
4161                 a printer name and job number, and deletes the print job.</para>
4162
4163                 <para>If a <parameter>%p</parameter> is given then the printer name 
4164                 is put in its place. A <parameter>%j</parameter> is replaced with 
4165                 the job number (an integer).</para>
4166
4167                 <para>Note that it is good practice to include the absolute 
4168                 path in the <parameter>lprm command</parameter> as the PATH may not be 
4169                 available to the server.</para>
4170
4171                 <para>See also the <link linkend="PRINTING"><parameter>printing
4172                 </parameter></link> parameter.</para>
4173
4174                 <para>Default: <emphasis>depends on the setting of <parameter>printing
4175                 </parameter></emphasis></para>
4176
4177                 <para>Example 1: <command>lprm command = /usr/bin/lprm -P%p %j
4178                 </command></para>
4179                 <para>Example 2: <command>lprm command = /usr/bin/cancel %p-%j
4180                 </command></para></listitem>
4181                 </varlistentry>
4182
4183
4184
4185                 <varlistentry>
4186                 <term><anchor id="MACHINEPASSWORDTIMEOUT">machine password timeout (G)</term>
4187                 <listitem><para>If a Samba server is a member of a Windows 
4188                 NT Domain (see the <link linkend="SECURITYEQUALSDOMAIN">security = domain</link>) 
4189                 parameter) then periodically a running <ulink url="smbd.8.html">
4190                 smbd(8)</ulink> process will try and change the MACHINE ACCOUNT 
4191                 PASSWORD stored in the TDB called <filename>private/secrets.tdb
4192                 </filename>.  This parameter specifies how often this password 
4193                 will be changed, in seconds. The default is one week (expressed in 
4194                 seconds), the same as a Windows NT Domain member server.</para>
4195
4196                 <para>See also <ulink url="smbpasswd.8.html"><command>smbpasswd(8)
4197                 </command></ulink>, and the <link linkend="SECURITYEQUALSDOMAIN">
4198                 security = domain</link>) parameter.</para>
4199
4200                 <para>Default: <command>machine password timeout = 604800</command></para>
4201                 </listitem>
4202                 </varlistentry>
4203
4204
4205                 <varlistentry>
4206                 <term><anchor id="MAGICOUTPUT">magic output (S)</term>
4207                 <listitem><para>This parameter specifies the name of a file 
4208                 which will contain output created by a magic script (see the 
4209                 <link linkend="MAGICSCRIPT"><parameter>magic script</parameter></link>
4210                 parameter below).</para>
4211
4212                 <para>Warning: If two clients use the same <parameter>magic script
4213                 </parameter> in the same directory the output file content
4214                 is undefined.</para>
4215
4216                 <para>Default: <command>magic output = &lt;magic script name&gt;.out
4217                 </command></para>
4218
4219                 <para>Example: <command>magic output = myfile.txt</command></para>
4220                 </listitem>
4221                 </varlistentry>
4222
4223
4224
4225                 <varlistentry>
4226                 <term><anchor id="MAGICSCRIPT">magic script (S)</term>
4227                 <listitem><para>This parameter specifies the name of a file which, 
4228                 if opened, will be executed by the server when the file is closed. 
4229                 This allows a UNIX script to be sent to the Samba host and 
4230                 executed on behalf of the connected user.</para>
4231
4232                 <para>Scripts executed in this way will be deleted upon 
4233                 completion assuming that the user has the appropriate level 
4234                 of privilege and the file permissions allow the deletion.</para>
4235
4236                 <para>If the script generates output, output will be sent to 
4237                 the file specified by the <link linkend="MAGICOUTPUT"><parameter>
4238                 magic output</parameter></link> parameter (see above).</para>
4239
4240                 <para>Note that some shells are unable to interpret scripts 
4241                 containing CR/LF instead of CR as 
4242                 the end-of-line marker. Magic scripts must be executable 
4243                 <emphasis>as is</emphasis> on the host, which for some hosts and 
4244                 some shells will require filtering at the DOS end.</para>
4245
4246                 <para>Magic scripts are <emphasis>EXPERIMENTAL</emphasis> and 
4247                 should <emphasis>NOT</emphasis> be relied upon.</para>
4248
4249                 <para>Default: <emphasis>None. Magic scripts disabled.</emphasis></para>
4250                 <para>Example: <command>magic script = user.csh</command></para>
4251                 </listitem>
4252                 </varlistentry>
4253
4254                 
4255
4256                 <varlistentry>
4257                 <term><anchor id="MANGLECASE">mangle case (S)</term>
4258                 <listitem><para>See the section on <link linkend="NAMEMANGLINGSECT">
4259                 NAME MANGLING</link></para>
4260                 
4261                 <para>Default: <command>mangle case = no</command></para>
4262                 </listitem>
4263                 </varlistentry>
4264                 
4265
4266                 <varlistentry>
4267                 <term><anchor id="MANGLEDMAP">mangled map (S)</term>
4268                 <listitem><para>This is for those who want to directly map UNIX 
4269                 file names which cannot be represented on Windows/DOS.  The mangling 
4270                 of names is not always what is needed.  In particular you may have 
4271                 documents with file extensions that differ between DOS and UNIX. 
4272                 For example, under UNIX it is common to use <filename>.html</filename> 
4273                 for HTML files, whereas under Windows/DOS <filename>.htm</filename> 
4274                 is more commonly used.</para>
4275
4276                 <para>So to map <filename>html</filename> to <filename>htm</filename> 
4277                 you would use:</para>
4278                 
4279                 <para><command>mangled map = (*.html *.htm)</command></para>
4280
4281                 <para>One very useful case is to remove the annoying <filename>;1
4282                 </filename> off the ends of filenames on some CDROMs (only visible 
4283                 under some UNIXes). To do this use a map of (*;1 *;).</para>
4284
4285                 <para>Default: <emphasis>no mangled map</emphasis></para>
4286                 <para>Example: <command>mangled map = (*;1 *;)</command></para>
4287                 </listitem>
4288                 </varlistentry>
4289
4290
4291                 <varlistentry>
4292                 <term><anchor id="MANGLEDNAMES">mangled names (S)</term>
4293                 <listitem><para>This controls whether non-DOS names under UNIX 
4294                 should be mapped to DOS-compatible names ("mangled") and made visible, 
4295                 or whether non-DOS names should simply be ignored.</para>
4296
4297                 <para>See the section on <link linkend="NAMEMANGLINGSECT">
4298                 NAME MANGLING</link> for details on how to control the mangling process.</para>
4299
4300                 <para>If mangling is used then the mangling algorithm is as follows:</para>
4301
4302                 <itemizedlist>
4303                         <listitem><para>The first (up to) five alphanumeric characters 
4304                         before the rightmost dot of the filename are preserved, forced 
4305                         to upper case, and appear as the first (up to) five characters 
4306                         of the mangled name.</para></listitem>
4307                 
4308                         <listitem><para>A tilde "~" is appended to the first part of the mangled
4309                         name, followed by a two-character unique sequence, based on the
4310                         original root name (i.e., the original filename minus its final
4311                         extension). The final extension is included in the hash calculation
4312                         only if it contains any upper case characters or is longer than three
4313                         characters.</para>
4314
4315                         <para>Note that the character to use may be specified using 
4316                         the <link linkend="MANGLINGCHAR"><parameter>mangling char</parameter>
4317                         </link> option, if you don't like '~'.</para></listitem>
4318
4319                         <listitem><para>The first three alphanumeric characters of the final 
4320                         extension are preserved, forced to upper case and appear as the 
4321                         extension of the mangled name. The final extension is defined as that 
4322                         part of the original filename after the rightmost dot. If there are no 
4323                         dots in the filename, the mangled name will have no extension (except 
4324                         in the case of "hidden files" - see below).</para></listitem>
4325
4326                         <listitem><para>Files whose UNIX name begins with a dot will be 
4327                         presented as DOS hidden files. The mangled name will be created as 
4328                         for other filenames, but with the leading dot removed and "___" as 
4329                         its extension regardless of actual original extension (that's three 
4330                         underscores).</para></listitem>
4331                 </itemizedlist>
4332
4333                 <para>The two-digit hash value consists of upper case 
4334                 alphanumeric characters.</para>
4335
4336                 <para>This algorithm can cause name collisions only if files 
4337                 in a directory share the same first five alphanumeric characters. 
4338                 The probability of such a clash is 1/1300.</para>
4339
4340                 <para>The name mangling (if enabled) allows a file to be 
4341                 copied between UNIX directories from Windows/DOS while retaining 
4342                 the long UNIX filename. UNIX files can be renamed to a new extension 
4343                 from Windows/DOS and will retain the same basename. Mangled names 
4344                 do not change between sessions.</para>
4345
4346                 <para>Default: <command>mangled names = yes</command></para>
4347                 </listitem>
4348                 </varlistentry>
4349
4350                 <varlistentry>
4351                 <term><anchor id="MANGLINGMETHOD">mangling method (G)</term>
4352                 <listitem><para> controls the algorithm used for the generating
4353                 the mangled names. Can take two different values, "hash" and
4354                 "hash2". "hash" is  the default and is the algorithm that has been
4355                 used in Samba for many years. "hash2" is a newer and considered
4356                 a better algorithm (generates less collisions) in the names.
4357                 However, many Win32 applications store the mangled names and so
4358                 changing to the new algorithm must not be done
4359                 lightly as these applications may break unless reinstalled.</para>
4360                 <para>Default: <command>mangling method = hash2</command></para>
4361                 <para>Example: <command>mangling method = hash</command></para>
4362                 </listitem>
4363                 </varlistentry>
4364
4365                 <varlistentry>
4366                 <term><anchor id="MANGLEPREFIX">mangle prefix (G)</term>
4367                 <listitem><para> controls the number of prefix
4368                 characters from the original name used when generating
4369                 the mangled names. A larger value will give a weaker
4370                 hash and therefore more name collisions. The minimum
4371                 value is 1 and the maximum value is 6.</para>
4372                 <para>Default: <command>mangle prefix = 1</command></para>
4373                 <para>Example: <command>mangle prefix = 4</command></para>
4374                 </listitem>
4375                 </varlistentry>
4376
4377                 <varlistentry>
4378                 <term><anchor id="MANGLEDSTACK">mangled stack (G)</term>
4379                 <listitem><para>This parameter controls the number of mangled names 
4380                 that should be cached in the Samba server <ulink url="smbd.8.html">
4381                 smbd(8)</ulink>.</para>
4382
4383                 <para>This stack is a list of recently mangled base names 
4384                 (extensions are only maintained if they are longer than 3 characters 
4385                 or contains upper case characters).</para>
4386
4387                 <para>The larger this value, the more likely it is that mangled 
4388                 names can be successfully converted to correct long UNIX names. 
4389                 However, large stack sizes will slow most directory accesses. Smaller 
4390                 stacks save memory in the server (each stack element costs 256 bytes).
4391                 </para>
4392
4393                 <para>It is not possible to absolutely guarantee correct long 
4394                 filenames, so be prepared for some surprises!</para>
4395
4396                 <para>Default: <command>mangled stack = 50</command></para>
4397                 <para>Example: <command>mangled stack = 100</command></para>
4398                 </listitem>
4399                 </varlistentry>
4400
4401
4402
4403
4404                 <varlistentry>
4405                 <term><anchor id="MANGLINGCHAR">mangling char (S)</term>
4406                 <listitem><para>This controls what character is used as 
4407                 the <emphasis>magic</emphasis> character in <link 
4408                 linkend="NAMEMANGLINGSECT">name mangling</link>. The default is a '~'
4409                 but this may interfere with some software. Use this option to set 
4410                 it to whatever you prefer.</para>
4411
4412                 <para>Default: <command>mangling char = ~</command></para>
4413                 <para>Example: <command>mangling char = ^</command></para>
4414                 </listitem>
4415                 </varlistentry>
4416                 
4417                 
4418
4419
4420
4421                 <varlistentry>
4422                 <term><anchor id="MAPARCHIVE">map archive (S)</term>
4423                 <listitem><para>This controls whether the DOS archive attribute 
4424                 should be mapped to the UNIX owner execute bit.  The DOS archive bit 
4425                 is set when a file has been modified since its last backup.  One 
4426                 motivation for this option it to keep Samba/your PC from making 
4427                 any file it touches from becoming executable under UNIX.  This can 
4428                 be quite annoying for shared source code, documents, etc...</para>
4429
4430                 <para>Note that this requires the <parameter>create mask</parameter>
4431                 parameter to be set such that owner execute bit is not masked out 
4432                 (i.e. it must include 100). See the parameter <link linkend="CREATEMASK">
4433                 <parameter>create mask</parameter></link> for details.</para>
4434
4435                 <para>Default: <command>map archive = yes</command></para>
4436                 </listitem>
4437                 </varlistentry>
4438                 
4439                 
4440                 
4441                 <varlistentry>
4442                 <term><anchor id="MAPHIDDEN">map hidden (S)</term>
4443                 <listitem><para>This controls whether DOS style hidden files 
4444                 should be mapped to the UNIX world execute bit.</para>
4445
4446                 <para>Note that this requires the <parameter>create mask</parameter> 
4447                 to be set such that the world execute bit is not masked out (i.e. 
4448                 it must include 001). See the parameter <link linkend="CREATEMASK">
4449                 <parameter>create mask</parameter></link> for details.</para>
4450
4451                 <para>Default: <command>map hidden = no</command></para>
4452                 </listitem>
4453                 </varlistentry>
4454
4455
4456                 <varlistentry>
4457                 <term><anchor id="MAPSYSTEM">map system (S)</term>
4458                 <listitem><para>This controls whether DOS style system files 
4459                 should be mapped to the UNIX group execute bit.</para>
4460
4461                 <para>Note that this requires the <parameter>create mask</parameter> 
4462                 to be set such that the group execute bit is not masked out (i.e. 
4463                 it must include 010). See the parameter <link linkend="CREATEMASK">
4464                 <parameter>create mask</parameter></link> for details.</para>
4465
4466                 <para>Default: <command>map system = no</command></para>
4467                 </listitem>
4468                 </varlistentry>
4469
4470
4471                 <varlistentry>
4472                 <term><anchor id="MAPTOGUEST">map to guest (G)</term>
4473                 <listitem><para>This parameter is only useful in <link linkend="SECURITY">
4474                 security</link> modes other than <parameter>security = share</parameter> 
4475                 - i.e. <constant>user</constant>, <constant>server</constant>, 
4476                 and <constant>domain</constant>.</para>
4477
4478                 <para>This parameter can take three different values, which tell
4479                 <ulink url="smbd.8.html">smbd(8)</ulink> what to do with user 
4480                 login requests that don't match a valid UNIX user in some way.</para>
4481
4482                 <para>The three settings are :</para>
4483
4484                 <itemizedlist>
4485                         <listitem><para><constant>Never</constant> - Means user login 
4486                         requests with an invalid password are rejected. This is the 
4487                         default.</para></listitem>
4488                         
4489                         <listitem><para><constant>Bad User</constant> - Means user
4490                         logins with an invalid password are rejected, unless the username 
4491                         does not exist, in which case it is treated as a guest login and 
4492                         mapped into the <link linkend="GUESTACCOUNT"><parameter>
4493                         guest account</parameter></link>.</para></listitem>
4494
4495                         <listitem><para><constant>Bad Password</constant> - Means user logins 
4496                         with an invalid password are treated as a guest login and mapped 
4497                         into the <link linkend="GUESTACCOUNT">guest account</link>. Note that 
4498                         this can cause problems as it means that any user incorrectly typing 
4499                         their password will be silently logged on as "guest" - and 
4500                         will not know the reason they cannot access files they think
4501                         they should - there will have been no message given to them
4502                         that they got their password wrong. Helpdesk services will
4503                         <emphasis>hate</emphasis> you if you set the <parameter>map to 
4504                         guest</parameter> parameter this way :-).</para></listitem>
4505                 </itemizedlist>
4506
4507                 <para>Note that this parameter is needed to set up "Guest" 
4508                 share services when using <parameter>security</parameter> modes other than 
4509                 share. This is because in these modes the name of the resource being
4510                 requested is <emphasis>not</emphasis> sent to the server until after 
4511                 the server has successfully authenticated the client so the server 
4512                 cannot make authentication decisions at the correct time (connection 
4513                 to the share) for "Guest" shares.</para>
4514
4515                 <para>For people familiar with the older Samba releases, this 
4516                 parameter maps to the old compile-time setting of the <constant>
4517                 GUEST_SESSSETUP</constant> value in local.h.</para>
4518
4519                 <para>Default: <command>map to guest = Never</command></para>
4520                 <para>Example: <command>map to guest = Bad User</command></para>
4521                 </listitem>
4522                 </varlistentry>
4523
4524
4525
4526                 <varlistentry>
4527                 <term><anchor id="MAXCONNECTIONS">max connections (S)</term>
4528                 <listitem><para>This option allows the number of simultaneous 
4529                 connections to a service to be limited. If <parameter>max connections
4530                 </parameter> is greater than 0 then connections will be refused if 
4531                 this number of connections to the service are already open. A value 
4532                 of zero mean an unlimited number of connections may be made.</para>
4533
4534                 <para>Record lock files are used to implement this feature. The 
4535                 lock files will be stored in the directory specified by the <link
4536                 linkend="LOCKDIRECTORY"><parameter>lock directory</parameter></link> 
4537                 option.</para>
4538
4539                 <para>Default: <command>max connections = 0</command></para>
4540                 <para>Example: <command>max connections = 10</command></para>
4541                 </listitem>
4542                 </varlistentry>
4543
4544
4545
4546                 <varlistentry>
4547                 <term><anchor id="MAXDISKSIZE">max disk size (G)</term>
4548                 <listitem><para>This option allows you to put an upper limit 
4549                 on the apparent size of disks. If you set this option to 100 
4550                 then all shares will appear to be not larger than 100 MB in 
4551                 size.</para>
4552
4553                 <para>Note that this option does not limit the amount of 
4554                 data you can put on the disk. In the above case you could still 
4555                 store much more than 100 MB on the disk, but if a client ever asks 
4556                 for the amount of free disk space or the total disk size then the 
4557                 result will be bounded by the amount specified in <parameter>max 
4558                 disk size</parameter>.</para>
4559
4560                 <para>This option is primarily useful to work around bugs 
4561                 in some pieces of software that can't handle very large disks, 
4562                 particularly disks over 1GB in size.</para>
4563
4564                 <para>A <parameter>max disk size</parameter> of 0 means no limit.</para>
4565
4566                 <para>Default: <command>max disk size = 0</command></para>
4567                 <para>Example: <command>max disk size = 1000</command></para>
4568                 </listitem>
4569                 </varlistentry>
4570                 
4571                 
4572                 
4573                 <varlistentry>
4574                 <term><anchor id="MAXLOGSIZE">max log size (G)</term>
4575                 <listitem><para>This option (an integer in kilobytes) specifies 
4576                 the max size the log file should grow to. Samba periodically checks 
4577                 the size and if it is exceeded it will rename the file, adding 
4578                 a <filename>.old</filename> extension.</para>
4579
4580                 <para>A size of 0 means no limit.</para>
4581
4582                 <para>Default: <command>max log size = 5000</command></para>
4583                 <para>Example: <command>max log size = 1000</command></para>
4584                 </listitem>
4585                 </varlistentry>
4586
4587
4588
4589                 <varlistentry>
4590                 <term><anchor id="MAXMUX">max mux (G)</term>
4591                 <listitem><para>This option controls the maximum number of 
4592                 outstanding simultaneous SMB operations that Samba tells the client 
4593                 it will allow. You should never need to set this parameter.</para>
4594
4595                 <para>Default: <command>max mux = 50</command></para>
4596                 </listitem>
4597                 </varlistentry>
4598
4599
4600
4601                 <varlistentry>
4602                 <term><anchor id="MAXOPENFILES">max open files (G)</term>
4603                 <listitem><para>This parameter limits the maximum number of 
4604                 open files that one <ulink url="smbd.8.html">smbd(8)</ulink> file 
4605                 serving process may have open for a client at any one time. The 
4606                 default for this parameter is set very high (10,000) as Samba uses 
4607                 only one bit per unopened file.</para>
4608                 
4609                 <para>The limit of the number of open files is usually set 
4610                 by the UNIX per-process file descriptor limit rather than 
4611                 this parameter so you should never need to touch this parameter.</para>
4612
4613                 <para>Default: <command>max open files = 10000</command></para>
4614                 </listitem>
4615                 </varlistentry>
4616
4617
4618
4619                 <varlistentry>
4620                 <term><anchor id="MAXPRINTJOBS">max print jobs (S)</term>
4621                 <listitem><para>This parameter limits the maximum number of 
4622                 jobs allowable in a Samba printer queue at any given moment.
4623                 If this number is exceeded, <ulink url="smbd.8.html"><command>
4624                 smbd(8)</command></ulink> will remote "Out of Space" to the client.
4625                 See all <link linkend="TOTALPRINTJOBS"><parameter>total
4626                 print jobs</parameter></link>.
4627                 </para>
4628
4629                 <para>Default: <command>max print jobs = 1000</command></para>
4630                 <para>Example: <command>max print jobs = 5000</command></para>
4631                 </listitem>
4632                 </varlistentry>
4633
4634
4635                 <varlistentry>
4636                 <term><anchor id="MAXPROTOCOL">max protocol (G)</term>
4637                 <listitem><para>The value of the parameter (a string) is the highest 
4638                 protocol level that will be supported by the server.</para>
4639
4640                 <para>Possible values are :</para>
4641                 <itemizedlist>
4642                         <listitem><para><constant>CORE</constant>: Earliest version. No 
4643                         concept of user names.</para></listitem>
4644                         
4645                         <listitem><para><constant>COREPLUS</constant>: Slight improvements on 
4646                         CORE for efficiency.</para></listitem>
4647
4648                         <listitem><para><constant>LANMAN1</constant>: First <emphasis>
4649                         modern</emphasis> version of the protocol. Long filename
4650                         support.</para></listitem>
4651
4652                         <listitem><para><constant>LANMAN2</constant>: Updates to Lanman1 protocol.
4653                         </para></listitem>
4654
4655                         <listitem><para><constant>NT1</constant>: Current up to date version of 
4656                         the protocol. Used by Windows NT. Known as CIFS.</para></listitem>
4657                 </itemizedlist>
4658
4659                 <para>Normally this option should not be set as the automatic 
4660                 negotiation phase in the SMB protocol takes care of choosing 
4661                 the appropriate protocol.</para>
4662                 
4663                 <para>See also <link linkend="MINPROTOCOL"><parameter>min
4664                 protocol</parameter></link></para>
4665
4666                 <para>Default: <command>max protocol = NT1</command></para>
4667                 <para>Example: <command>max protocol = LANMAN1</command></para>
4668                 </listitem>
4669                 </varlistentry>
4670
4671
4672
4673                 <varlistentry>
4674                 <term><anchor id="MAXSMBDPROCESSES">max smbd processes (G)</term>
4675                 <listitem><para>This parameter limits the maximum number of 
4676                 <ulink url="smbd.8.html"><command>smbd(8)</command></ulink>
4677                 processes concurrently running on a system and is intended
4678                 as a stopgap to prevent degrading service to clients in the event
4679                 that the server has insufficient resources to handle more than this
4680                 number of connections.  Remember that under normal operating
4681                 conditions, each user will have an <ulink url="smbd.8.html">smbd</ulink> associated with him or her
4682                 to handle connections to all shares from a given host.
4683                 </para>
4684
4685                 <para>Default: <command>max smbd processes = 0</command>   ## no limit</para>
4686                 <para>Example: <command>max smbd processes = 1000</command></para>
4687                 </listitem>
4688                 </varlistentry>
4689
4690
4691
4692
4693                 <varlistentry>
4694                 <term><anchor id="MAXTTL">max ttl (G)</term>
4695                 <listitem><para>This option tells <ulink url="nmbd.8.html">nmbd(8)</ulink>
4696                 what the default 'time to live' of NetBIOS names should be (in seconds) 
4697                 when <command>nmbd</command> is requesting a name using either a
4698                 broadcast packet or from a WINS server. You should never need to
4699                 change this parameter. The default is 3 days.</para>
4700
4701                 <para>Default: <command>max ttl = 259200</command></para>
4702                 </listitem>
4703                 </varlistentry>
4704
4705
4706
4707                 <varlistentry>
4708                 <term><anchor id="MAXWINSTTL">max wins ttl (G)</term>
4709                 <listitem><para>This option tells <ulink url="nmbd.8.html">nmbd(8)
4710                 </ulink> when acting as a WINS server (<link linkend="WINSSUPPORT">
4711                 <parameter>wins support = yes</parameter></link>) what the maximum
4712                 'time to live' of NetBIOS names that <command>nmbd</command> 
4713                 will grant will be (in seconds). You should never need to change this
4714                 parameter.  The default is 6 days (518400 seconds).</para>
4715
4716                 <para>See also the <link linkend="MINWINSTTL"><parameter>min 
4717                 wins ttl</parameter></link> parameter.</para>
4718
4719                 <para>Default: <command>max wins ttl = 518400</command></para>
4720                 </listitem>
4721                 </varlistentry>
4722
4723
4724
4725                 <varlistentry>
4726                 <term><anchor id="MAXXMIT">max xmit (G)</term>
4727                 <listitem><para>This option controls the maximum packet size 
4728                 that will be negotiated by Samba. The default is 65535, which 
4729                 is the maximum. In some cases you may find you get better performance 
4730                 with a smaller value. A value below 2048 is likely to cause problems.
4731                 </para>
4732
4733                 <para>Default: <command>max xmit = 65535</command></para>
4734                 <para>Example: <command>max xmit = 8192</command></para>
4735                 </listitem>
4736                 </varlistentry>
4737
4738
4739
4740                 <varlistentry>
4741                 <term><anchor id="MESSAGECOMMAND">message command (G)</term>
4742                 <listitem><para>This specifies what command to run when the 
4743                 server receives a WinPopup style message.</para>
4744
4745                 <para>This would normally be a command that would 
4746                 deliver the message somehow. How this is to be done is 
4747                 up to your imagination.</para>
4748
4749                 <para>An example is:</para>
4750
4751                 <para><command>message command = csh -c 'xedit %s;rm %s' &</command>
4752                 </para>
4753
4754                 <para>This delivers the message using <command>xedit</command>, then 
4755                 removes it afterwards. <emphasis>NOTE THAT IT IS VERY IMPORTANT 
4756                 THAT THIS COMMAND RETURN IMMEDIATELY</emphasis>. That's why I 
4757                 have the '&' on the end. If it doesn't return immediately then 
4758                 your PCs may freeze when sending messages (they should recover 
4759                 after 30 seconds, hopefully).</para>
4760
4761                 <para>All messages are delivered as the global guest user. 
4762                 The command takes the standard substitutions, although <parameter>
4763                 %u</parameter> won't work (<parameter>%U</parameter> may be better 
4764                 in this case).</para>
4765
4766                 <para>Apart from the standard substitutions, some additional 
4767                 ones apply. In particular:</para>
4768
4769                 <itemizedlist>
4770                         <listitem><para><parameter>%s</parameter> = the filename containing 
4771                         the message.</para></listitem>
4772                         
4773                         <listitem><para><parameter>%t</parameter> = the destination that 
4774                         the message was sent to (probably the server name).</para></listitem>
4775
4776                         <listitem><para><parameter>%f</parameter> = who the message 
4777                         is from.</para></listitem>
4778                 </itemizedlist>
4779
4780                 <para>You could make this command send mail, or whatever else 
4781                 takes your fancy. Please let us know of any really interesting 
4782                 ideas you have.</para>
4783
4784
4785                 <para>Here's a way of sending the messages as mail to root:</para>
4786
4787                 <para><command>message command = /bin/mail -s 'message from %f on 
4788                 %m' root &lt; %s; rm %s</command></para>
4789
4790                 <para>If you don't have a message command then the message 
4791                 won't be delivered and Samba will tell the sender there was 
4792                 an error. Unfortunately WfWg totally ignores the error code 
4793                 and carries on regardless, saying that the message was delivered.
4794                 </para>
4795
4796                 <para>If you want to silently delete it then try:</para>
4797
4798                 <para><command>message command = rm %s</command></para>
4799
4800                 <para>Default: <emphasis>no message command</emphasis></para>
4801                 <para>Example: <command>message command = csh -c 'xedit %s;
4802                 rm %s' &</command></para>
4803                 </listitem>
4804                 </varlistentry>
4805
4806
4807
4808
4809                 <varlistentry>
4810                 <term><anchor id="MINPASSWDLENGTH">min passwd length (G)</term>
4811                 <listitem><para>Synonym for <link linkend="MINPASSWORDLENGTH">
4812                 <parameter>min password length</parameter></link>.</para>
4813                 </listitem>
4814                 </varlistentry>
4815
4816
4817
4818                 <varlistentry>
4819                 <term><anchor id="MINPASSWORDLENGTH">min password length (G)</term>
4820                 <listitem><para>This option sets the minimum length in characters 
4821                 of a plaintext password that <command>smbd</command> will accept when performing 
4822                 UNIX password changing.</para>
4823
4824                 <para>See also <link linkend="UNIXPASSWORDSYNC"><parameter>unix 
4825                 password sync</parameter></link>, <link linkend="PASSWDPROGRAM">
4826                 <parameter>passwd program</parameter></link> and <link
4827                 linkend="PASSWDCHATDEBUG"><parameter>passwd chat debug</parameter>
4828                 </link>.</para>
4829
4830                 <para>Default: <command>min password length = 5</command></para>
4831                 </listitem>
4832                 </varlistentry>
4833
4834
4835
4836                 <varlistentry>
4837                 <term><anchor id="MINPRINTSPACE">min print space (S)</term>
4838                 <listitem><para>This sets the minimum amount of free disk 
4839                 space that must be available before a user will be able to spool 
4840                 a print job. It is specified in kilobytes. The default is 0, which 
4841                 means a user can always spool a print job.</para>
4842
4843                 <para>See also the <link linkend="PRINTING"><parameter>printing
4844                 </parameter></link> parameter.</para>
4845
4846                 <para>Default: <command>min print space = 0</command></para>
4847                 <para>Example: <command>min print space = 2000</command></para>
4848                 </listitem>
4849                 </varlistentry>
4850
4851
4852
4853
4854                 <varlistentry>
4855                 <term><anchor id="MINPROTOCOL">min protocol (G)</term>
4856                 <listitem><para>The value of the parameter (a string) is the 
4857                 lowest SMB protocol dialect than Samba will support.  Please refer
4858                 to the <link linkend="MAXPROTOCOL"><parameter>max protocol</parameter></link>
4859                 parameter for a list of valid protocol names and a brief description
4860                 of each.  You may also wish to refer to the C source code in
4861                 <filename>source/smbd/negprot.c</filename> for a listing of known protocol
4862                 dialects supported by clients.</para>
4863                 
4864                 <para>If you are viewing this parameter as a security measure, you should
4865                 also refer to the <link linkend="LANMANAUTH"><parameter>lanman 
4866                 auth</parameter></link> parameter.  Otherwise, you should never need 
4867                 to change this parameter.</para>
4868                 
4869                 <para>Default : <command>min protocol = CORE</command></para>
4870                 <para>Example : <command>min protocol = NT1</command>  # disable DOS 
4871                 clients</para>
4872                 </listitem>
4873                 </varlistentry>
4874
4875
4876
4877
4878                 <varlistentry>
4879                 <term><anchor id="MINWINSTTL">min wins ttl (G)</term>
4880                 <listitem><para>This option tells <ulink url="nmbd.8.html">nmbd(8)</ulink>
4881                 when acting as a WINS server (<link linkend="WINSSUPPORT"><parameter>
4882                 wins support = yes</parameter></link>) what the minimum 'time to live' 
4883                 of NetBIOS names that <command>nmbd</command> will grant will be (in 
4884                 seconds). You should never need to change this parameter.  The default 
4885                 is 6 hours (21600 seconds).</para>
4886
4887                 <para>Default: <command>min wins ttl = 21600</command></para>
4888                 </listitem>
4889                 </varlistentry>
4890
4891
4892                 <varlistentry>
4893                 <term><anchor id="MSDFSPROXY">msdfs proxy (S)</term>
4894                 <listitem><para>This parameter indicates that the share is a
4895                 stand-in for another CIFS share whose location is specified by
4896                 the value of the parameter. When clients attempt to connect to
4897                 this share, they are redirected to the proxied share using
4898                 the SMB-Dfs protocol.</para>
4899                 <para>Only Dfs roots can act as proxy shares. Take a look at the
4900                 <link linkend="MSDFSROOT"><parameter>msdfs root</parameter></link>
4901                 and
4902                 <link linkend="HOSTMSDFS"><parameter>host msdfs</parameter></link>
4903                 options to find out how to set up a Dfs root share.</para>
4904                 <para>Example: <command>msdfs proxy = \otherserver\someshare</command></para>
4905                 </listitem>
4906                 </varlistentry>
4907
4908
4909
4910
4911                 <varlistentry>
4912                 <term><anchor id="MSDFSROOT">msdfs root (S)</term>
4913                 <listitem><para>This boolean parameter is only available if 
4914                 Samba is configured  and  compiled with the <command>
4915                 --with-msdfs</command> option.  If set to <constant>yes</constant>, 
4916                 Samba treats the share as a Dfs root and  allows clients to browse 
4917                 the distributed file system tree rooted at the share directory. 
4918                 Dfs links are specified  in  the share directory by symbolic 
4919                 links of the form <filename>msdfs:serverA\shareA,serverB\shareB</filename>
4920                 and so on.  For more information on setting up a Dfs tree 
4921                 on Samba,  refer to <ulink url="msdfs_setup.html">msdfs_setup.html
4922                 </ulink>.</para>
4923                 
4924                 <para>See also <link linkend="HOSTMSDFS"><parameter>host msdfs
4925                 </parameter></link></para>
4926                 
4927                 <para>Default: <command>msdfs root = no</command></para>
4928                 </listitem>
4929                 </varlistentry>
4930           
4931                 <varlistentry>
4932                 <term><anchor id="NAMECACHETIMEOUT">name cache timeout (G)</term>
4933                 <listitem><para>Specifies the number of seconds it takes before 
4934                 entries in samba's hostname resolve cache time out. If 
4935                 the timeout is set to 0. the caching is disabled.
4936                 </para>
4937
4938
4939                 <para>Default: <command>name cache timeout = 660</command></para>
4940                 <para>Example: <command>name cache timeout = 0</command></para>
4941                 </listitem>
4942                 </varlistentry>
4943           
4944                 <varlistentry> 
4945                 <term><anchor id="NAMERESOLVEORDER">name resolve order (G)</term>
4946                 <listitem><para>This option is used by the programs in the Samba 
4947                 suite to determine what naming services to use and in what order 
4948                 to resolve host names to IP addresses. The option takes a space 
4949                 separated string of name resolution options.</para>
4950
4951                 <para>The options are :"lmhosts", "host", "wins" and "bcast". They 
4952                 cause names to be resolved as follows :</para>
4953
4954                 <itemizedlist>
4955                         <listitem><para><constant>lmhosts</constant> : Lookup an IP 
4956                         address in the Samba lmhosts file. If the line in lmhosts has 
4957                         no name type attached to the NetBIOS name (see the <ulink 
4958                         url="lmhosts.5.html">lmhosts(5)</ulink> for details) then
4959                         any name type matches for lookup.</para></listitem>
4960
4961                         <listitem><para><constant>host</constant> : Do a standard host 
4962                         name to IP address resolution, using the system <filename>/etc/hosts
4963                         </filename>, NIS, or DNS lookups. This method of name resolution 
4964                         is operating system depended for instance on IRIX or Solaris this 
4965                         may be controlled by the <filename>/etc/nsswitch.conf</filename> 
4966                         file.  Note that this method is only used if the NetBIOS name 
4967                         type being queried is the 0x20 (server) name type, otherwise 
4968                         it is ignored.</para></listitem>
4969
4970                         <listitem><para><constant>wins</constant> : Query a name with 
4971                         the IP address listed in the <link linkend="WINSSERVER"><parameter>
4972                         wins server</parameter></link> parameter.  If no WINS server has
4973                         been specified this method will be ignored.</para></listitem>
4974
4975                         <listitem><para><constant>bcast</constant> : Do a broadcast on 
4976                         each of the known local interfaces listed in the <link 
4977                         linkend="INTERFACES"><parameter>interfaces</parameter></link> 
4978                         parameter. This is the least reliable of the name resolution 
4979                         methods as it depends on the target host being on a locally 
4980                         connected subnet.</para></listitem>
4981                 </itemizedlist>
4982
4983                 <para>Default: <command>name resolve order = lmhosts host wins bcast
4984                 </command></para>
4985                 <para>Example: <command>name resolve order = lmhosts bcast host
4986                 </command></para>
4987
4988                 <para>This will cause the local lmhosts file to be examined 
4989                 first, followed by a broadcast attempt, followed by a normal 
4990                 system hostname lookup.</para>
4991                 </listitem>
4992                 </varlistentry>
4993                 
4994
4995
4996         
4997                 <varlistentry>
4998                 <term><anchor id="NETBIOSALIASES">netbios aliases (G)</term>
4999                 <listitem><para>This is a list of NetBIOS names that <ulink 
5000                 url="nmbd.8.html">nmbd(8)</ulink> will advertise as additional 
5001                 names by which the Samba server is known. This allows one machine 
5002                 to appear in browse lists under multiple names. If a machine is 
5003                 acting as a browse server or logon server none 
5004                 of these names will be advertised as either browse server or logon 
5005                 servers, only the primary name of the machine will be advertised 
5006                 with these capabilities.</para>
5007                 
5008                 <para>See also <link linkend="NETBIOSNAME"><parameter>netbios 
5009                 name</parameter></link>.</para>
5010
5011                 <para>Default: <emphasis>empty string (no additional names)</emphasis></para>
5012                 <para>Example: <command>netbios aliases = TEST TEST1 TEST2</command></para>
5013                 </listitem>
5014                 </varlistentry>
5015                 
5016
5017
5018                 <varlistentry>
5019                 <term><anchor id="NETBIOSNAME">netbios name (G)</term>
5020                 <listitem><para>This sets the NetBIOS name by which a Samba 
5021                 server is known. By default it is the same as the first component 
5022                 of the host's DNS name. If a machine is a browse server or
5023                 logon server this name (or the first component
5024                 of the hosts DNS name) will be the name that these services are
5025                 advertised under.</para>
5026                 
5027                 <para>See also <link linkend="NETBIOSALIASES"><parameter>netbios 
5028                 aliases</parameter></link>.</para>
5029
5030                 <para>Default: <emphasis>machine DNS name</emphasis></para>
5031                 <para>Example: <command>netbios name = MYNAME</command></para>
5032                 </listitem>
5033                 </varlistentry>
5034
5035
5036
5037                 <varlistentry>
5038                 <term><anchor id="NETBIOSSCOPE">netbios scope (G)</term>
5039                 <listitem><para>This sets the NetBIOS scope that Samba will 
5040                 operate under. This should not be set unless every machine 
5041                 on your LAN also sets this value.</para>
5042                 </listitem>
5043                 </varlistentry>
5044                 
5045
5046                 <varlistentry>
5047                 <term><anchor id="NISHOMEDIR">nis homedir (G)</term>
5048                 <listitem><para>Get the home share server from a NIS map. For 
5049                 UNIX systems that use an automounter, the user's home directory 
5050                 will often be mounted on a workstation on demand from a remote 
5051                 server. </para>
5052
5053                 <para>When the Samba logon server is not the actual home directory 
5054                 server, but is mounting the home directories via NFS then two 
5055                 network hops would be required to access the users home directory 
5056                 if the logon server told the client to use itself as the SMB server 
5057                 for home directories (one over SMB and one over NFS). This can 
5058                 be very slow.</para>
5059
5060                 <para>This option allows Samba to return the home share as 
5061                 being on a different server to the logon server and as 
5062                 long as a Samba daemon is running on the home directory server, 
5063                 it will be mounted on the Samba client directly from the directory 
5064                 server. When Samba is returning the home share to the client, it 
5065                 will consult the NIS map specified in <link linkend="HOMEDIRMAP">
5066                 <parameter>homedir map</parameter></link> and return the server 
5067                 listed there.</para>
5068
5069                 <para>Note that for this option to work there must be a working 
5070                 NIS system and the Samba server with this option must also 
5071                 be a logon server.</para>
5072
5073                 <para>Default: <command>nis homedir = no</command></para>
5074                 </listitem>
5075                 </varlistentry>
5076
5077
5078
5079                 <varlistentry>
5080                 <term><anchor id="NONUNIXACCOUNTRANGE">non unix account range (G)</term>
5081                 <listitem><para>The non unix account range parameter specifies 
5082                 the range of 'user ids' that are allocated by the various 'non unix 
5083                 account' passdb backends.  These backends allow
5084                 the storage of passwords for users who don't exist in /etc/passwd.  
5085                 This is most often used for machine account creation. 
5086                 This range of ids should have no existing local or NIS users within 
5087                 it as strange conflicts can occur otherwise.</para>
5088
5089                 <para>NOTE: These userids never appear on the system and Samba will never
5090                 'become' these users. They are used only to ensure that the algorithmic 
5091                 RID mapping does not conflict with normal users.
5092                 </para>
5093
5094                 <para>Default: <command>non unix account range = &lt;empty string&gt;
5095                 </command></para>
5096                 
5097                 <para>Example: <command>non unix account range = 10000-20000</command></para>
5098                 </listitem>
5099                 </varlistentry>
5100
5101
5102
5103                 <varlistentry>
5104                 <term><anchor id="NTACLSUPPORT">nt acl support (S)</term>
5105                 <listitem><para>This boolean parameter controls whether 
5106                 <ulink url="smbd.8.html">smbd(8)</ulink> will attempt to map 
5107                 UNIX permissions into Windows NT access control lists.
5108                 This parameter was formally a global parameter in releases
5109                 prior to 2.2.2.</para>
5110                 
5111                 <para>Default: <command>nt acl support = yes</command></para>
5112                 </listitem>
5113                 </varlistentry>
5114
5115
5116
5117                 <varlistentry>
5118                 <term><anchor id="NTPIPESUPPORT">nt pipe support (G)</term>
5119                 <listitem><para>This boolean parameter controls whether 
5120                 <ulink url="smbd.8.html">smbd(8)</ulink> will allow Windows NT 
5121                 clients to connect to the NT SMB specific <constant>IPC$</constant> 
5122                 pipes. This is a developer debugging option and can be left
5123                 alone.</para>
5124
5125                 <para>Default: <command>nt pipe support = yes</command></para>
5126                 </listitem>
5127                 </varlistentry>
5128
5129
5130
5131                 <varlistentry>
5132                 <term><anchor id="NTSTATUSSUPPORT">nt status support (G)</term>
5133                 <listitem><para>This boolean parameter controls whether <ulink
5134                 url="smbd.8.html">smbd(8)</ulink> will negotiate NT specific status
5135                 support with Windows NT/2k/XP clients. This is a developer
5136                 debugging option and should be left alone.
5137                 If this option is set to <constant>no</constant> then Samba offers
5138                 exactly the same DOS error codes that versions prior to Samba 2.2.3
5139                 reported.</para>
5140
5141                 <para>You should not need to ever disable this parameter.</para>
5142
5143                 <para>Default: <command>nt status support = yes</command></para>
5144                 </listitem>
5145                 </varlistentry>
5146
5147
5148                 <varlistentry>
5149                 <term><anchor id="NULLPASSWORDS">null passwords (G)</term>
5150                 <listitem><para>Allow or disallow client access to accounts 
5151                 that have null passwords. </para>
5152
5153                 <para>See also <ulink url="smbpasswd.5.html">smbpasswd (5)</ulink>.</para>
5154
5155                 <para>Default: <command>null passwords = no</command></para>
5156                 </listitem>
5157                 </varlistentry>
5158
5159
5160
5161
5162                 <varlistentry>
5163                 <term><anchor id="OBEYPAMRESTRICTIONS">obey pam restrictions (G)</term>
5164                 <listitem><para>When Samba 2.2 is configured to enable PAM support
5165                 (i.e. --with-pam), this parameter will control whether or not Samba
5166                 should obey PAM's account and session management directives.  The 
5167                 default behavior is to use PAM for clear text authentication only
5168                 and to ignore any account or session management.  Note that Samba
5169                 always ignores PAM for authentication in the case of <link
5170                 linkend="ENCRYPTPASSWORDS"><parameter>encrypt passwords = yes</parameter>
5171                 </link>.  The reason is that PAM modules cannot support the challenge/response
5172                 authentication mechanism needed in the presence of SMB password encryption.
5173                 </para>
5174
5175                 <para>Default: <command>obey pam restrictions = no</command></para>
5176                 </listitem>
5177                 </varlistentry>
5178
5179
5180
5181
5182
5183                 <varlistentry>
5184                 <term><anchor id="ONLYUSER">only user (S)</term>
5185                 <listitem><para>This is a boolean option that controls whether 
5186                 connections with usernames not in the <parameter>user</parameter> 
5187                 list will be allowed. By default this option is disabled so that a 
5188                 client can supply a username to be used by the server.  Enabling
5189                 this parameter will force the server to only use the login 
5190                 names from the <parameter>user</parameter> list and is only really
5191                 useful in <link linkend="SECURITYEQUALSSHARE">share level</link>
5192                 security.</para>
5193
5194                 <para>Note that this also means Samba won't try to deduce 
5195                 usernames from the service name. This can be annoying for 
5196                 the [homes] section. To get around this you could use <command>user =
5197                 %S</command> which means your <parameter>user</parameter> list
5198                 will be just the service name, which for home directories is the 
5199                 name of the user.</para>
5200
5201                 <para>See also the <link linkend="USER"><parameter>user</parameter>
5202                 </link> parameter.</para>
5203
5204                 <para>Default: <command>only user = no</command></para>
5205                 </listitem>
5206                 </varlistentry>
5207
5208
5209
5210
5211                 <varlistentry>
5212                 <term><anchor id="ONLYGUEST">only guest (S)</term>
5213                 <listitem><para>A synonym for <link linkend="GUESTONLY"><parameter>
5214                 guest only</parameter></link>.</para>
5215                 </listitem>
5216                 </varlistentry>
5217
5218
5219
5220                 <varlistentry>
5221                 <term><anchor id="OPLOCKBREAKWAITTIME">oplock break wait time (G)</term>
5222                 <listitem><para>This is a tuning parameter added due to bugs in 
5223                 both Windows 9x and WinNT. If Samba responds to a client too 
5224                 quickly when that client issues an SMB that can cause an oplock 
5225                 break request, then the network client can fail and not respond 
5226                 to the break request. This tuning parameter (which is set in milliseconds) 
5227                 is the amount of time Samba will wait before sending an oplock break 
5228                 request to such (broken) clients.</para>
5229
5230                 <para><emphasis>DO NOT CHANGE THIS PARAMETER UNLESS YOU HAVE READ 
5231                 AND UNDERSTOOD THE SAMBA OPLOCK CODE</emphasis>.</para>
5232
5233                 <para>Default: <command>oplock break wait time = 0</command></para>
5234                 </listitem>
5235                 </varlistentry>
5236
5237
5238                 <varlistentry>
5239                 <term><anchor id="OPLOCKCONTENTIONLIMIT">oplock contention limit (S)</term>
5240                 <listitem><para>This is a <emphasis>very</emphasis> advanced 
5241                 <ulink url="smbd.8.html">smbd(8)</ulink> tuning option to 
5242                 improve the efficiency of the granting of oplocks under multiple 
5243                 client contention for the same file.</para>
5244                 
5245                 <para>In brief it specifies a number, which causes <ulink url="smbd.8.html">smbd</ulink> not to 
5246                 grant an oplock even when requested if the approximate number of 
5247                 clients contending for an oplock on the same file goes over this 
5248                 limit. This causes <command>smbd</command> to behave in a similar 
5249                 way to Windows NT.</para>
5250
5251                 <para><emphasis>DO NOT CHANGE THIS PARAMETER UNLESS YOU HAVE READ 
5252                 AND UNDERSTOOD THE SAMBA OPLOCK CODE</emphasis>.</para>
5253
5254                 <para>Default: <command>oplock contention limit = 2</command></para>
5255                 </listitem>
5256                 </varlistentry>
5257
5258
5259
5260
5261
5262                 <varlistentry>
5263                 <term><anchor id="OPLOCKS">oplocks (S)</term>
5264                 <listitem><para>This boolean option tells <command>smbd</command> whether to 
5265                 issue oplocks (opportunistic locks) to file open requests on this 
5266                 share. The oplock code can dramatically (approx. 30% or more) improve 
5267                 the speed of access to files on Samba servers. It allows the clients 
5268                 to aggressively cache files locally and you may want to disable this 
5269                 option for unreliable network environments (it is turned on by 
5270                 default in Windows NT Servers).  For more information see the file 
5271                 <filename>Speed.txt</filename> in the Samba <filename>docs/</filename> 
5272                 directory.</para>
5273
5274                 <para>Oplocks may be selectively turned off on certain files with a 
5275                 share. See the <link linkend="VETOOPLOCKFILES"><parameter>
5276                 veto oplock files</parameter></link> parameter. On some systems 
5277                 oplocks are recognized by the underlying operating system. This 
5278                 allows data synchronization between all access to oplocked files, 
5279                 whether it be via Samba or NFS or a local UNIX process. See the 
5280                 <parameter>kernel oplocks</parameter> parameter for details.</para>
5281
5282                 <para>See also the <link linkend="KERNELOPLOCKS"><parameter>kernel 
5283                 oplocks</parameter></link> and <link linkend="LEVEL2OPLOCKS"><parameter>
5284                 level2 oplocks</parameter></link> parameters.</para>
5285
5286                 <para>Default: <command>oplocks = yes</command></para>
5287                 </listitem>
5288                 </varlistentry>
5289
5290                 <varlistentry>
5291                 <term><anchor id="NTLMAUTH">ntlm auth (G)</term>
5292                 <listitem><para>This parameter determines whether or not <ulink url="smbd.8.html">smbd</ulink> will
5293                 attempt to authenticate users using the NTLM password hash.
5294                 If disabled, only the lanman password hashes will be used. 
5295                 </para>
5296
5297                 <para>Please note that at least this option or <command>lanman auth</command> should be enabled in order to be able to log in.
5298                 </para>
5299                 
5300                 <para>Default : <command>ntlm auth = yes</command></para>
5301                 </listitem>
5302                 </varlistentry>
5303
5304                 <varlistentry>
5305                 <term><anchor id="OSLEVEL">os level (G)</term>
5306                 <listitem><para>This integer value controls what level Samba 
5307                 advertises itself as for browse elections. The value of this 
5308                 parameter determines whether <ulink url="nmbd.8.html">nmbd(8)</ulink> 
5309                 has a chance of becoming a local master browser for the <parameter>
5310                 WORKGROUP</parameter> in the local broadcast area.</para>
5311                 
5312                 <para><emphasis>Note :</emphasis>By default, Samba will win 
5313                 a local master browsing election over all Microsoft operating 
5314                 systems except a Windows NT 4.0/2000 Domain Controller.  This 
5315                 means that a misconfigured Samba host can effectively isolate 
5316                 a subnet for browsing purposes.  See <filename>BROWSING.txt
5317                 </filename> in the Samba <filename>docs/</filename> directory 
5318                 for details.</para>
5319
5320                 <para>Default: <command>os level = 20</command></para>
5321                 <para>Example: <command>os level = 65 </command></para>
5322                 </listitem>
5323                 </varlistentry>
5324
5325
5326
5327                 <varlistentry>
5328                 <term><anchor id="OS2DRIVERMAP">os2 driver map (G)</term>
5329                 <listitem><para>The parameter is used to define the absolute
5330                 path to a file containing a mapping of Windows NT printer driver
5331                 names to OS/2 printer driver names.  The format is:</para>
5332                 
5333                 <para>&lt;nt driver name&gt; = &lt;os2 driver 
5334                 name&gt;.&lt;device name&gt;</para>
5335                 
5336                 <para>For example, a valid entry using the HP LaserJet 5
5337                 printer driver would appear as <command>HP LaserJet 5L = LASERJET.HP 
5338                 LaserJet 5L</command>.</para>
5339                 
5340                 <para>The need for the file is due to the printer driver namespace 
5341                 problem described in the <ulink url="printer_driver2.html">Samba 
5342                 Printing HOWTO</ulink>.  For more details on OS/2 clients, please 
5343                 refer to the <ulink url="OS2-Client-HOWTO.html">OS2-Client-HOWTO
5344                 </ulink> containing in the Samba documentation.</para>
5345
5346                 <para>Default: <command>os2 driver map = &lt;empty string&gt;
5347                 </command></para>
5348                 </listitem>
5349                 </varlistentry>
5350
5351
5352                 <varlistentry>
5353                 <term><anchor id="PAMPASSWORDCHANGE">pam password change (G)</term>
5354                 <listitem><para>With the addition of better PAM support in Samba 2.2, 
5355                 this parameter, it is possible to use PAM's password change control 
5356                 flag for Samba.  If enabled, then PAM will be used for password
5357                 changes when requested by an SMB client instead of the program listed in 
5358                 <link linkend="PASSWDPROGRAM"><parameter>passwd program</parameter></link>. 
5359                 It should be possible to enable this without changing your 
5360                 <link linkend="PASSWDCHAT"><parameter>passwd chat</parameter></link>
5361                 parameter for most setups.
5362                 </para>
5363                 
5364                 <para>Default: <command>pam password change = no</command></para>
5365                 
5366                 </listitem>
5367                 </varlistentry>
5368
5369
5370                 <varlistentry>
5371                 <term><anchor id="PANICACTION">panic action (G)</term>
5372                 <listitem><para>This is a Samba developer option that allows a 
5373                 system command to be called when either <ulink url="smbd.8.html">
5374                 smbd(8)</ulink> or <ulink url="nmbd.8.html">nmbd(8)</ulink> 
5375                 crashes. This is usually used to draw attention to the fact that 
5376                 a problem occurred.</para>
5377
5378                 <para>Default: <command>panic action = &lt;empty string&gt;</command></para>
5379                 <para>Example: <command>panic action = "/bin/sleep 90000"</command></para>
5380                 </listitem>
5381                 </varlistentry>
5382
5383                 <varlistentry>
5384                 <term><anchor id="PARANOIDSERVERSECURITY">paranoid server security (G)</term>
5385                 <listitem><para>Some version of NT 4.x allow non-guest 
5386                 users with a bad passowrd. When this option is enabled, samba will not 
5387                 use a broken NT 4.x server as password server, but instead complain
5388                 to the logs and exit.
5389                 </para>
5390
5391                 <para>Default: <command>paranoid server security = yes</command></para>
5392
5393                 </listitem>
5394                 </varlistentry>
5395
5396                 <varlistentry>
5397                 <term><anchor id="PASSDBBACKEND">passdb backend (G)</term>
5398                 <listitem><para>This option allows the administrator to chose which backends to retrieve and store passwords with. This allows (for example) both 
5399                 smbpasswd and tdbsam to be used without a recompile. 
5400                 Multiple backends can be specified, separated by spaces. The backends will be searched in the order they are specified. New users are always added to the first backend specified.
5401                 Experimental backends must still be selected
5402                 (eg --with-tdbsam) at configure time.
5403                 </para>
5404
5405                 <para>This parameter is in two parts, the backend's name, and a 'location'
5406                 string that has meaning only to that particular backed.  These are separated
5407                 by a : character.</para>
5408
5409                 <para>Available backends can include:
5410                 <itemizedlist>
5411                         <listitem><para><command>smbpasswd</command> - The default smbpasswd
5412                         backend.  Takes a path to the smbpasswd file as an optional argument.</para></listitem>
5413                         
5414                         <listitem><para><command>smbpasswd_nua</command> - The smbpasswd
5415                         backend, but with support for 'not unix accounts'.  
5416                         Takes a path to the smbpasswd file as an optional argument.</para>
5417                         <para>See also <link linkend="NONUNIXACCOUNTRANGE">
5418                         <parameter>non unix account range</parameter></link></para></listitem>
5419
5420                         <listitem><para><command>tdbsam</command> - The TDB based password storage
5421                         backend.  Takes a path to the TDB as an optional argument (defaults to passdb.tdb 
5422                         in the <link linkend="PRIVATEDIR">
5423                         <parameter>private dir</parameter></link> directory.</para></listitem>
5424                         
5425                         <listitem><para><command>tdbsam_nua</command> - The TDB based password storage
5426                         backend, with non unix account support.  Takes a path to the TDB as an optional argument (defaults to passdb.tdb 
5427                         in the <link linkend="PRIVATEDIR">
5428                         <parameter>private dir</parameter></link> directory.</para>
5429                         <para>See also <link linkend="NONUNIXACCOUNTRANGE">
5430                         <parameter>non unix account range</parameter></link></para></listitem>
5431                         
5432                         <listitem><para><command>ldapsam</command> - The LDAP based passdb 
5433                         backend.  Takes an LDAP URL as an optional argument (defaults to 
5434                         <command>ldap://localhost</command>)</para></listitem>
5435                         
5436                         <listitem><para><command>ldapsam_nua</command> - The LDAP based passdb 
5437                         backend, with non unix account support.  Takes an LDAP URL as an optional argument (defaults to 
5438                         <command>ldap://localhost</command>)</para>
5439
5440                         <para>Note:  In this module, any account without a matching POSIX account is regarded
5441                         as 'non unix'.  </para>
5442
5443                         <para>See also <link linkend="NONUNIXACCOUNTRANGE">
5444                         <parameter>non unix account
5445                         range</parameter></link></para>
5446                         
5447                         <para>LDAP connections should be secured where
5448                         possible.  This may be done using either
5449                         Start-TLS (see <link linkend="LDAPSSL">
5450                         <parameter>ldap ssl</parameter></link>) or by
5451                         specifying <parameter>ldaps://</parameter> in
5452                         the URL argument.  
5453                         </para></listitem>
5454                         
5455                         <listitem><para><command>nisplussam</command> - The NIS+ based passdb backend. Takes name NIS domain as an optional argument. Only works with sun NIS+ servers. </para></listitem>
5456                         
5457                         <listitem><para><command>plugin</command> - Allows Samba to load an 
5458                         arbitary passdb backend from the .so specified as a compulsary argument.
5459                         </para>
5460
5461                         <para>Any characters after the (optional) second : are passed to the plugin
5462                         for its own processing</para>
5463                         </listitem>
5464                 
5465                         <listitem><para><command>unixsam</command> - Allows samba to map all (other) available unix users</para>
5466
5467                         <para>This backend uses the standard unix database for retrieving users. Users included 
5468                         in this pdb are NOT listed in samba user listings and users included in this pdb won't be 
5469                         able to login. The use of this backend is to always be able to display the owner of a file 
5470                         on the samba server - even when the user doesn't have a 'real' samba account in one of the 
5471                         other passdb backends.
5472                         </para>
5473
5474                         <para>This backend should always be the last backend listed, since it contains all users in 
5475                         the unix passdb and might 'override' mappings if specified earlier. It's meant to only return 
5476                         accounts for users that aren't covered by the previous backends.</para>
5477                         </listitem>
5478                 </itemizedlist>
5479                 </para>
5480
5481                 <para>Default: <command>passdb backend = smbpasswd unixsam</command></para>
5482                 <para>Example: <command>passdb backend = tdbsam:/etc/samba/private/passdb.tdb smbpasswd:/etc/samba/smbpasswd unixsam</command></para>
5483                 <para>Example: <command>passdb backend = ldapsam_nua:ldaps://ldap.example.com unixsam</command></para>
5484                 <para>Example: <command>passdb backend = plugin:/usr/local/samba/lib/my_passdb.so:my_plugin_args tdbsam:/etc/samba/private/passdb.tdb</command></para>
5485                 </listitem>
5486                 </varlistentry>
5487
5488
5489                 <varlistentry>
5490                 <term><anchor id="PASSWDCHAT">passwd chat (G)</term>
5491                 <listitem><para>This string controls the <emphasis>"chat"</emphasis> 
5492                 conversation that takes places between <ulink 
5493                 url="smbd.8.html">smbd</ulink> and the local password changing
5494                 program to change the user's password. The string describes a 
5495                 sequence of response-receive pairs that <ulink url="smbd.8.html">
5496                 smbd(8)</ulink> uses to determine what to send to the 
5497                 <link linkend="PASSWDPROGRAM"><parameter>passwd program</parameter>
5498                 </link> and what to expect back. If the expected output is not 
5499                 received then the password is not changed.</para>
5500
5501                 <para>This chat sequence is often quite site specific, depending 
5502                 on what local methods are used for password control (such as NIS 
5503                 etc).</para>
5504                 <para>Note that this parameter only is only used if the <link 
5505                 linkend="UNIXPASSWORDSYNC"><parameter>unix 
5506                 password sync</parameter></link> parameter is set to <constant>yes</constant>. This 
5507                 sequence is then called <emphasis>AS ROOT</emphasis> when the SMB password 
5508                 in the smbpasswd file is being changed, without access to the old 
5509                 password cleartext. This means that root must be able to reset the user's password
5510                 without knowing the text of the previous password. In the presence of NIS/YP, 
5511                 this means that the <link linkend="PASSWDPROGRAM">passwd program</link> must be 
5512                 executed on the NIS master.
5513                 </para>
5514
5515
5516                 <para>The string can contain the macro <parameter>%n</parameter> which is substituted 
5517                 for the new password.  The chat sequence can also contain the standard 
5518                 macros <constant>\n</constant>, <constant>\r</constant>, <constant>
5519                 \t</constant> and <constant>\s</constant> to give line-feed, 
5520                 carriage-return, tab and space.  The chat sequence string can also contain 
5521                 a '*' which matches any sequence of characters.
5522                 Double quotes can be used to collect strings with spaces 
5523                 in them into a single string.</para>
5524
5525                 <para>If the send string in any part of the chat sequence 
5526                 is a full stop ".",  then no string is sent. Similarly, 
5527                 if the expect string is a full stop then no string is expected.</para>
5528
5529                 <para>If the <link linkend="PAMPASSWORDCHANGE"><parameter>pam
5530                 password change</parameter></link> parameter is set to <constant>yes</constant>, the chat pairs
5531                 may be matched in any order, and success is determined by the PAM result, 
5532                 not any particular output. The \n macro is ignored for PAM conversions.
5533                 </para>
5534
5535                 <para>See also <link linkend="UNIXPASSWORDSYNC"><parameter>unix password 
5536                 sync</parameter></link>, <link linkend="PASSWDPROGRAM"><parameter>
5537                 passwd program</parameter></link> ,<link linkend="PASSWDCHATDEBUG">
5538                 <parameter>passwd chat debug</parameter></link> and <link linkend="PAMPASSWORDCHANGE">
5539                 <parameter>pam password change</parameter></link>.</para>
5540
5541                 <para>Default: <command>passwd chat = *new*password* %n\n 
5542                 *new*password* %n\n *changed*</command></para>
5543                 <para>Example: <command>passwd chat = "*Enter OLD password*" %o\n 
5544                 "*Enter NEW password*" %n\n "*Reenter NEW password*" %n\n "*Password 
5545                 changed*"</command></para>
5546                 </listitem>
5547                 </varlistentry>
5548
5549         
5550    
5551                 <varlistentry>
5552                 <term><anchor id="PASSWDCHATDEBUG">passwd chat debug (G)</term>
5553                 <listitem><para>This boolean specifies if the passwd chat script 
5554                 parameter is run in <emphasis>debug</emphasis> mode. In this mode the 
5555                 strings passed to and received from the passwd chat are printed 
5556                 in the <ulink url="smbd.8.html">smbd(8)</ulink> log with a 
5557                 <link linkend="DEBUGLEVEL"><parameter>debug level</parameter></link> 
5558                 of 100. This is a dangerous option as it will allow plaintext passwords 
5559                 to be seen in the <command>smbd</command> log. It is available to help 
5560                 Samba admins debug their <parameter>passwd chat</parameter> scripts 
5561                 when calling the <parameter>passwd program</parameter> and should 
5562                 be turned off after this has been done. This option has no effect if the 
5563                 <link linkend="PAMPASSWORDCHANGE"><parameter>pam password change</parameter></link>
5564                 paramter is set. This parameter is off by default.</para>
5565   
5566
5567                 <para>See also <link linkend="PASSWDCHAT"><parameter>passwd chat</parameter>
5568                 </link>, <link linkend="PAMPASSWORDCHANGE"><parameter>pam password change</parameter>
5569                 </link>, <link linkend="PASSWDPROGRAM"><parameter>passwd program</parameter>
5570                 </link>.</para>
5571
5572                 <para>Default: <command>passwd chat debug = no</command></para>
5573                 </listitem>
5574                 </varlistentry>
5575
5576
5577
5578                 <varlistentry>
5579                 <term><anchor id="PASSWDPROGRAM">passwd program (G)</term>
5580                 <listitem><para>The name of a program that can be used to set 
5581                 UNIX user passwords.  Any occurrences of <parameter>%u</parameter> 
5582                 will be replaced with the user name. The user name is checked for 
5583                 existence before calling the password changing program.</para>
5584
5585                 <para>Also note that many passwd programs insist in <emphasis>reasonable
5586                 </emphasis> passwords, such as a minimum length, or the inclusion 
5587                 of mixed case chars and digits. This can pose a problem as some clients 
5588                 (such as Windows for Workgroups) uppercase the password before sending 
5589                 it.</para>
5590
5591                 <para><emphasis>Note</emphasis> that if the <parameter>unix 
5592                 password sync</parameter> parameter is set to <constant>yes
5593                 </constant> then this program is called <emphasis>AS ROOT</emphasis> 
5594                 before the SMB password in the <ulink url="smbpasswd.5.html">smbpasswd(5)
5595                 </ulink> file is changed. If this UNIX password change fails, then 
5596                 <command>smbd</command> will fail to change the SMB password also 
5597                 (this is by design).</para>
5598
5599                 <para>If the <parameter>unix password sync</parameter> parameter 
5600                 is set this parameter <emphasis>MUST USE ABSOLUTE PATHS</emphasis> 
5601                 for <emphasis>ALL</emphasis> programs called, and must be examined 
5602                 for security implications. Note that by default <parameter>unix 
5603                 password sync</parameter> is set to <constant>no</constant>.</para>
5604
5605                 <para>See also <link linkend="UNIXPASSWORDSYNC"><parameter>unix 
5606                 password sync</parameter></link>.</para>
5607
5608                 <para>Default: <command>passwd program = /bin/passwd</command></para>
5609                 <para>Example: <command>passwd program = /sbin/npasswd %u</command>
5610                 </para>
5611                 </listitem>
5612                 </varlistentry>
5613
5614
5615
5616                 <varlistentry>
5617                 <term><anchor id="PASSWORDLEVEL">password level (G)</term>
5618                 <listitem><para>Some client/server combinations have difficulty 
5619                 with mixed-case passwords.  One offending client is Windows for 
5620                 Workgroups, which for some reason forces passwords to upper 
5621                 case when using the LANMAN1 protocol, but leaves them alone when 
5622                 using COREPLUS!  Another problem child is the Windows 95/98
5623                 family of operating systems.  These clients upper case clear
5624                 text passwords even when NT LM 0.12 selected by the protocol
5625                 negotiation request/response.</para>
5626
5627                 <para>This parameter defines the maximum number of characters 
5628                 that may be upper case in passwords.</para>
5629
5630                 <para>For example, say the password given was "FRED". If <parameter>
5631                 password level</parameter> is set to 1, the following combinations 
5632                 would be tried if "FRED" failed:</para>
5633
5634                 <para>"Fred", "fred", "fRed", "frEd","freD"</para>
5635
5636                 <para>If <parameter>password level</parameter> was set to 2, 
5637                 the following combinations would also be tried: </para>
5638
5639                 <para>"FRed", "FrEd", "FreD", "fREd", "fReD", "frED", ..</para>
5640
5641                 <para>And so on.</para>
5642
5643                 <para>The higher value this parameter is set to the more likely 
5644                 it is that a mixed case password will be matched against a single 
5645                 case password. However, you should be aware that use of this 
5646                 parameter reduces security and increases the time taken to 
5647                 process a new connection.</para>
5648
5649                 <para>A value of zero will cause only two attempts to be 
5650                 made - the password as is and the password in all-lower case.</para>
5651
5652                 <para>Default: <command>password level = 0</command></para>
5653                 <para>Example: <command>password level = 4</command></para>
5654                 </listitem>
5655                 </varlistentry>
5656
5657
5658
5659                 <varlistentry>
5660                 <term><anchor id="PASSWORDSERVER">password server (G)</term>
5661                 <listitem><para>By specifying the name of another SMB server (such 
5662                 as a WinNT box) with this option, and using <command>security = domain
5663                 </command> or <command>security = server</command> you can get Samba 
5664                 to do all its username/password validation via a remote server.</para>
5665
5666                 <para>This option sets the name of the password server to use. 
5667                 It must be a NetBIOS name, so if the machine's NetBIOS name is 
5668                 different from its Internet name then you may have to add its NetBIOS 
5669                 name to the lmhosts  file which is stored in the same directory 
5670                 as the <filename>smb.conf</filename> file.</para>
5671
5672                 <para>The name of the password server is looked up using the 
5673                 parameter <link linkend="NAMERESOLVEORDER"><parameter>name 
5674                 resolve order</parameter></link> and so may resolved
5675                 by any method and order described in that parameter.</para>
5676
5677                 <para>The password server much be a machine capable of using 
5678                 the "LM1.2X002" or the "NT LM 0.12" protocol, and it must be in 
5679                 user level security mode.</para>
5680
5681                 <para><emphasis>NOTE:</emphasis> Using a password server 
5682                 means your UNIX box (running Samba) is only as secure as your 
5683                 password server. <emphasis>DO NOT CHOOSE A PASSWORD SERVER THAT 
5684                 YOU DON'T COMPLETELY TRUST</emphasis>.</para>
5685                 
5686                 <para>Never point a Samba server at itself for password 
5687                 serving. This will cause a loop and could lock up your Samba 
5688                 server!</para>
5689
5690                 <para>The name of the password server takes the standard 
5691                 substitutions, but probably the only useful one is <parameter>%m
5692                 </parameter>, which means the Samba server will use the incoming 
5693                 client as the password server. If you use this then you better 
5694                 trust your clients, and you had better restrict them with hosts allow!</para>
5695
5696                 <para>If the <parameter>security</parameter> parameter is set to
5697                 <constant>domain</constant>, then the list of machines in this 
5698                 option must be a list of Primary or Backup Domain controllers for the
5699                 Domain or the character '*', as the Samba server is effectively
5700                 in that domain, and will use cryptographically authenticated RPC calls
5701                 to authenticate the user logging on. The advantage of using <command>
5702                 security = domain</command> is that if you list several hosts in the 
5703                 <parameter>password server</parameter> option then <command>smbd
5704                 </command> will try each in turn till it finds one that responds. This 
5705                 is useful in case your primary server goes down.</para>
5706
5707                 <para>If the <parameter>password server</parameter> option is set 
5708                 to the character '*', then Samba will attempt to auto-locate the 
5709                 Primary or Backup Domain controllers to authenticate against by 
5710                 doing a query for the name <constant>WORKGROUP&lt;1C&gt;</constant> 
5711                 and then contacting each server returned in the list of IP 
5712                 addresses from the name resolution source. </para>
5713
5714                 <para>If the list of servers contains both names and the '*'
5715                 character, the list is treated as a list of preferred 
5716                 domain controllers, but an auto lookup of all remaining DC's
5717                 will be added to the list as well.  Samba will not attempt to optimize 
5718                 this list by locating the closest DC.</para>
5719                 
5720                 <para>If the <parameter>security</parameter> parameter is 
5721                 set to <constant>server</constant>, then there are different
5722                 restrictions that <command>security = domain</command> doesn't 
5723                 suffer from:</para>
5724
5725                 <itemizedlist>
5726                         <listitem><para>You may list several password servers in 
5727                         the <parameter>password server</parameter> parameter, however if an 
5728                         <command>smbd</command> makes a connection to a password server, 
5729                         and then the password server fails, no more users will be able 
5730                         to be authenticated from this <command>smbd</command>.  This is a 
5731                         restriction of the SMB/CIFS protocol when in <command>security = server
5732                         </command> mode and cannot be fixed in Samba.</para></listitem>
5733
5734                         <listitem><para>If you are using a Windows NT server as your 
5735                         password server then you will have to ensure that your users 
5736                         are able to login from the Samba server, as when in <command>
5737                         security = server</command>  mode the network logon will appear to 
5738                         come from there rather than from the users workstation.</para></listitem>
5739                 </itemizedlist>
5740
5741                 <para>See also the <link linkend="SECURITY"><parameter>security
5742                 </parameter></link> parameter.</para>
5743
5744                 <para>Default: <command>password server = &lt;empty string&gt;</command>
5745                 </para>
5746                 <para>Example: <command>password server = NT-PDC, NT-BDC1, NT-BDC2, *
5747                 </command></para>
5748                 <para>Example: <command>password server = *</command></para>
5749                 </listitem>
5750                 </varlistentry>
5751
5752
5753
5754                 <varlistentry>
5755                 <term><anchor id="PATH">path (S)</term>
5756                 <listitem><para>This parameter specifies a directory to which 
5757                 the user of the service is to be given access. In the case of 
5758                 printable services, this is where print data will spool prior to 
5759                 being submitted to the host for printing.</para>
5760
5761                 <para>For a printable service offering guest access, the service 
5762                 should be readonly and the path should be world-writeable and 
5763                 have the sticky bit set. This is not mandatory of course, but 
5764                 you probably won't get the results you expect if you do 
5765                 otherwise.</para>
5766
5767                 <para>Any occurrences of <parameter>%u</parameter> in the path 
5768                 will be replaced with the UNIX username that the client is using 
5769                 on this connection. Any occurrences of <parameter>%m</parameter> 
5770                 will be replaced by the NetBIOS name of the machine they are 
5771                 connecting from. These replacements are very useful for setting 
5772                 up pseudo home directories for users.</para>
5773
5774                 <para>Note that this path will be based on <link linkend="ROOTDIR">
5775                 <parameter>root dir</parameter></link> if one was specified.</para>
5776
5777                 <para>Default: <emphasis>none</emphasis></para>
5778                 <para>Example: <command>path = /home/fred</command></para>
5779                 </listitem>
5780                 </varlistentry>
5781
5782
5783
5784
5785                 <varlistentry>
5786                 <term><anchor id="PIDDIRECTORY">pid directory (G)</term>
5787                 <listitem><para>This option specifies the directory where pid 
5788                 files will be placed.  </para>
5789
5790                 <para>Default: <command>pid directory = ${prefix}/var/locks</command></para>
5791                 <para>Example: <command>pid directory = /var/run/</command>
5792                 </para></listitem>
5793                 </varlistentry>
5794
5795
5796
5797                 <varlistentry>
5798                 <term><anchor id="POSIXLOCKING">posix locking (S)</term>
5799                 <listitem><para>The <ulink url="smbd.8.html"><command>smbd(8)</command></ulink>
5800                 daemon maintains an database of file locks obtained by SMB clients.
5801                 The default behavior is to map this internal database to POSIX
5802                 locks.  This means that file locks obtained by SMB clients are 
5803                 consistent with those seen by POSIX compliant applications accessing 
5804                 the files via a non-SMB method (e.g. NFS or local file access).  
5805                 You should never need to disable this parameter.</para>
5806                 
5807                 <para>Default: <command>posix locking = yes</command></para>
5808                 </listitem>
5809                 </varlistentry>
5810
5811
5812
5813
5814                 <varlistentry>
5815                 <term><anchor id="POSTEXEC">postexec (S)</term>
5816                 <listitem><para>This option specifies a command to be run 
5817                 whenever the service is disconnected. It takes the usual 
5818                 substitutions. The command may be run as the root on some 
5819                 systems.</para>
5820
5821                 <para>An interesting example may be to unmount server 
5822                 resources:</para>
5823
5824                 <para><command>postexec = /etc/umount /cdrom</command></para>
5825
5826                 <para>See also <link linkend="PREEXEC"><parameter>preexec</parameter>
5827                 </link>.</para>
5828
5829                 <para>Default: <emphasis>none (no command executed)</emphasis>
5830                 </para>
5831
5832                 <para>Example: <command>postexec = echo \"%u disconnected from %S 
5833                 from %m (%I)\" &gt;&gt; /tmp/log</command></para>
5834                 </listitem>
5835                 </varlistentry>
5836
5837
5838
5839                 <varlistentry>
5840                 <term><anchor id="POSTSCRIPT">postscript (S)</term>
5841                 <listitem><para>This parameter forces a printer to interpret 
5842                 the print files as PostScript. This is done by adding a <constant>%!
5843                 </constant> to the start of print output.</para>
5844
5845                 <para>This is most useful when you have lots of PCs that persist 
5846                 in putting a control-D at the start of print jobs, which then 
5847                 confuses your printer.</para>
5848
5849                 <para>Default: <command>postscript = no</command></para>
5850                 </listitem>
5851                 </varlistentry>
5852         
5853         
5854         
5855                 <varlistentry>
5856                 <term><anchor id="PREEXEC">preexec (S)</term>
5857                 <listitem><para>This option specifies a command to be run whenever 
5858                 the service is connected to. It takes the usual substitutions.</para>
5859
5860                 <para>An interesting example is to send the users a welcome 
5861                 message every time they log in. Maybe a message of the day? Here 
5862                 is an example:</para>
5863
5864                 <para><command>preexec = csh -c 'echo \"Welcome to %S!\" |
5865                  /usr/local/samba/bin/smbclient -M %m -I %I' & </command></para>
5866
5867                 <para>Of course, this could get annoying after a while :-)</para>
5868
5869                 <para>See also <link linkend="PREEXECCLOSE"><parameter>preexec close
5870                 </parameter</link> and <link linkend="POSTEXEC"><parameter>postexec
5871                 </parameter></link>.</para>
5872
5873                 <para>Default: <emphasis>none (no command executed)</emphasis></para>
5874                 <para>Example: <command>preexec = echo \"%u connected to %S from %m
5875                 (%I)\" &gt;&gt; /tmp/log</command></para>
5876                 </listitem>
5877                 </varlistentry>
5878
5879
5880
5881                 <varlistentry>
5882                 <term><anchor id="PREEXECCLOSE">preexec close (S)</term>
5883                 <listitem><para>This boolean option controls whether a non-zero 
5884                 return code from <link linkend="PREEXEC"><parameter>preexec
5885                 </parameter></link> should close the service being connected to.</para>
5886
5887                 <para>Default: <command>preexec close = no</command></para>
5888                 </listitem>
5889                 </varlistentry>
5890
5891
5892                 <varlistentry>
5893                 <term><anchor id="PREFERREDMASTER">preferred master (G)</term>
5894                 <listitem><para>This boolean parameter controls if <ulink 
5895                 url="nmbd.8.html">nmbd(8)</ulink> is a preferred master browser 
5896                 for its workgroup.</para>
5897
5898                 <para>If this is set to <constant>yes</constant>, on startup, <command>nmbd</command> 
5899                 will force an election, and it will have a slight advantage in 
5900                 winning the election.  It is recommended that this parameter is 
5901                 used in conjunction with <command><link linkend="DOMAINMASTER"><parameter>
5902                 domain master</parameter></link> = yes</command>, so that <command>
5903                 nmbd</command> can guarantee becoming a domain master.</para>
5904                 
5905                 <para>Use this option with caution, because if there are several 
5906                 hosts (whether Samba servers, Windows 95 or NT) that are preferred 
5907                 master browsers on the same subnet, they will each periodically 
5908                 and continuously attempt to become the local master browser.  
5909                 This will result in unnecessary broadcast traffic and reduced browsing
5910                 capabilities.</para>
5911
5912                 <para>See also <link linkend="OSLEVEL"><parameter>os level</parameter>
5913                 </link>.</para>
5914
5915                 <para>Default: <command>preferred master = auto</command></para>
5916                 </listitem>
5917                 </varlistentry>
5918
5919
5920
5921                 <varlistentry>
5922                 <term><anchor id="PREFEREDMASTER">prefered master (G)</term>
5923                 <listitem><para>Synonym for <link linkend="PREFERREDMASTER"><parameter>
5924                 preferred master</parameter></link> for people who cannot spell :-).</para>
5925                 </listitem>
5926                 </varlistentry>
5927
5928
5929
5930                 <varlistentry>
5931                 <term><anchor id="PRELOAD">preload (G)</term>
5932                 <listitem><para>This is a list of services that you want to be 
5933                 automatically added to the browse lists. This is most useful 
5934                 for homes and printers services that would otherwise not be 
5935                 visible.</para>
5936
5937                 <para>Note that if you just want all printers in your 
5938                 printcap file loaded then the <link linkend="LOADPRINTERS">
5939                 <parameter>load printers</parameter></link> option is easier.</para>
5940
5941                 <para>Default: <emphasis>no preloaded services</emphasis></para>
5942                 
5943                 <para>Example: <command>preload = fred lp colorlp</command></para>
5944                 </listitem>
5945                 </varlistentry>
5946
5947
5948                 <varlistentry>
5949                 <term><anchor id="PRESERVECASE">preserve case (S)</term>
5950                 <listitem><para> This controls if new filenames are created
5951                 with the case that the client passes, or if they are forced to 
5952                 be the <link linkend="DEFAULTCASE"><parameter>default case
5953                 </parameter></link>.</para>
5954
5955                 <para>Default: <command>preserve case = yes</command></para>
5956
5957                 <para>See the section on <link linkend="NAMEMANGLINGSECT">NAME 
5958                 MANGLING</link> for a fuller discussion.</para>
5959                 </listitem>
5960                 </varlistentry>
5961
5962
5963
5964                 <varlistentry>
5965                 <term><anchor id="PRINTCOMMAND">print command (S)</term>
5966                 <listitem><para>After a print job has finished spooling to 
5967                 a service, this command will be used via a <command>system()</command> 
5968                 call to process the spool file. Typically the command specified will 
5969                 submit the spool file to the host's printing subsystem, but there 
5970                 is no requirement that this be the case. The server will not remove 
5971                 the spool file, so whatever command you specify should remove the 
5972                 spool file when it has been processed, otherwise you will need to 
5973                 manually remove old spool files.</para>
5974                 
5975                 <para>The print command is simply a text string. It will be used 
5976                 verbatim after macro substitutions have been made:</para>
5977
5978                 <para>s, %p - the path to the spool
5979                 file name</para>
5980
5981                 <para>%p - the appropriate printer 
5982                 name</para>
5983
5984                 <para>%J - the job 
5985                 name as transmitted by the client.</para>
5986
5987                 <para>%c - The number of printed pages
5988                 of the spooled job (if known).</para>
5989
5990                 <para>%z - the size of the spooled
5991                 print job (in bytes)</para>
5992
5993                 <para>The print command <emphasis>MUST</emphasis> contain at least 
5994                 one occurrence of <parameter>%s</parameter> or <parameter>%f
5995                 </parameter> - the <parameter>%p</parameter> is optional. At the time 
5996                 a job is submitted, if no printer name is supplied the <parameter>%p
5997                 </parameter> will be silently removed from the printer command.</para>
5998
5999                 <para>If specified in the [global] section, the print command given 
6000                 will be used for any printable service that does not have its own 
6001                 print command specified.</para>
6002
6003                 <para>If there is neither a specified print command for a 
6004                 printable service nor a global print command, spool files will 
6005                 be created but not processed and (most importantly) not removed.</para>
6006
6007                 <para>Note that printing may fail on some UNIXes from the 
6008                 <constant>nobody</constant> account. If this happens then create 
6009                 an alternative guest account that can print and set the <link
6010                 linkend="GUESTACCOUNT"><parameter>guest account</parameter></link> 
6011                 in the [global] section.</para>
6012
6013                 <para>You can form quite complex print commands by realizing 
6014                 that they are just passed to a shell. For example the following 
6015                 will log a print job, print the file, then remove it. Note that 
6016                 ';' is the usual separator for command in shell scripts.</para>
6017
6018                 <para><command>print command = echo Printing %s &gt;&gt; 
6019                 /tmp/print.log; lpr -P %p %s; rm %s</command></para>
6020
6021                 <para>You may have to vary this command considerably depending 
6022                 on how you normally print files on your system. The default for 
6023                 the parameter varies depending on the setting of the <link linkend="PRINTING">
6024                 <parameter>printing</parameter></link> parameter.</para>
6025
6026                 <para>Default: For <command>printing = BSD, AIX, QNX, LPRNG 
6027                 or PLP :</command></para>
6028                 <para><command>print command = lpr -r -P%p %s</command></para>
6029
6030                 <para>For <command>printing = SYSV or HPUX :</command></para>
6031                 <para><command>print command = lp -c -d%p %s; rm %s</command></para>
6032
6033                 <para>For <command>printing = SOFTQ :</command></para>
6034                 <para><command>print command = lp -d%p -s %s; rm %s</command></para>
6035
6036                 <para>For printing = CUPS :   If SAMBA is compiled against
6037                 libcups, then <link linkend="PRINTING">printcap = cups</link> 
6038                 uses the CUPS API to
6039                 submit jobs, etc.  Otherwise it maps to the System V
6040                 commands with the -oraw option for printing, i.e. it
6041                 uses <command>lp -c -d%p -oraw; rm %s</command>.   
6042                 With <command>printing = cups</command>,
6043                 and if SAMBA is compiled against libcups, any manually 
6044                 set print command will be ignored.</para>
6045
6046
6047                 <para>Example: <command>print command = /usr/local/samba/bin/myprintscript
6048                 %p %s</command></para>
6049                 </listitem>
6050                 </varlistentry>
6051                 
6052                 
6053
6054                 <varlistentry>
6055                 <term><anchor id="PRINTOK">print ok (S)</term>
6056                 <listitem><para>Synonym for <link linkend="PRINTABLE">
6057                 <parameter>printable</parameter></link>.</para>
6058                 </listitem>
6059                 </varlistentry>
6060
6061
6062
6063
6064                 <varlistentry>
6065                 <term><anchor id="PRINTABLE">printable (S)</term>
6066                 <listitem><para>If this parameter is <constant>yes</constant>, then 
6067                 clients may open, write to and submit spool files on the directory 
6068                 specified for the service. </para>
6069                 
6070                 <para>Note that a printable service will ALWAYS allow writing 
6071                 to the service path (user privileges permitting) via the spooling 
6072                 of print data. The <link linkend="READONLY"><parameter>read only
6073                 </parameter></link> parameter controls only non-printing access to 
6074                 the resource.</para>
6075
6076                 <para>Default: <command>printable = no</command></para>
6077                 </listitem>
6078                 </varlistentry>
6079
6080
6081
6082                 <varlistentry>
6083                 <term><anchor id="PRINTCAP">printcap (G)</term>
6084                 <listitem><para>Synonym for     <link linkend="PRINTCAPNAME"><parameter>
6085                 printcap name</parameter></link>.</para>
6086                 </listitem>
6087                 </varlistentry>
6088
6089
6090
6091
6092                 <varlistentry>
6093                 <term><anchor id="PRINTCAPNAME">printcap name (G)</term>
6094                 <listitem><para>This parameter may be used to override the 
6095                 compiled-in default printcap name used by the server (usually <filename>
6096                 /etc/printcap</filename>). See the discussion of the <link
6097                 linkend="PRINTERSSECT">[printers]</link> section above for reasons 
6098                 why you might want to do this.</para>
6099
6100                 <para>To use the CUPS printing interface set <command>printcap name = cups
6101                 </command>. This should be supplemented by an addtional setting 
6102                 <link linkend="PRINTING">printing = cups</link> in the [global] 
6103                 section.  <command>printcap name = cups</command> will use the  
6104                 "dummy" printcap created by CUPS, as specified in your CUPS
6105                 configuration file.
6106                 </para>
6107
6108                 <para>On System V systems that use <command>lpstat</command> to 
6109                 list available printers you can use <command>printcap name = lpstat
6110                 </command> to automatically obtain lists of available printers. This 
6111                 is the default for systems that define SYSV at configure time in 
6112                 Samba (this includes most System V based systems). If <parameter>
6113                 printcap name</parameter> is set to <command>lpstat</command> on 
6114                 these systems then Samba will launch <command>lpstat -v</command> and 
6115                 attempt to parse the output to obtain a printer list.</para>
6116
6117                 <para>A minimal printcap file would look something like this:</para>
6118
6119                 <para><programlisting>
6120                 print1|My Printer 1
6121                 print2|My Printer 2
6122                 print3|My Printer 3
6123                 print4|My Printer 4
6124                 print5|My Printer 5
6125                 </programlisting></para>
6126         
6127                 <para>where the '|' separates aliases of a printer. The fact 
6128                 that the second alias has a space in it gives a hint to Samba 
6129                 that it's a comment.</para>
6130
6131                 <para><emphasis>NOTE</emphasis>: Under AIX the default printcap 
6132                 name is <filename>/etc/qconfig</filename>. Samba will assume the 
6133                 file is in AIX <filename>qconfig</filename> format if the string
6134                 <filename>qconfig</filename> appears in the printcap filename.</para>
6135
6136                 <para>Default: <command>printcap name = /etc/printcap</command></para>
6137                 <para>Example: <command>printcap name = /etc/myprintcap</command></para>
6138                 </listitem>
6139                 </varlistentry>
6140
6141
6142
6143
6144
6145                 <varlistentry>
6146                 <term><anchor id="PRINTERADMIN">printer admin (S)</term>
6147                 <listitem><para>This is a list of users that can do anything to 
6148                 printers via the remote administration interfaces offered by MS-RPC 
6149                 (usually using a NT workstation). Note that the root user always 
6150                 has admin rights.</para>
6151
6152                 <para>Default: <command>printer admin = &lt;empty string&gt;</command>
6153                 </para>
6154                 <para>Example: <command>printer admin = admin, @staff</command></para>
6155                 </listitem>
6156                 </varlistentry>
6157
6158
6159
6160
6161                 
6162                 <varlistentry>
6163                 <term><anchor id="PRINTERDRIVER">printer driver (S)</term>
6164                 <listitem><para><emphasis>Note :</emphasis>This is a deprecated 
6165                 parameter and will be removed in the next major release
6166                 following version 2.2.  Please see the instructions in
6167                 the <ulink url="printer_driver2.html">Samba 2.2. Printing
6168                 HOWTO</ulink> for more information
6169                 on the new method of loading printer drivers onto a Samba server.
6170                 </para>
6171                 
6172                 <para>This option allows you to control the string 
6173                 that clients receive when they ask the server for the printer driver 
6174                 associated with a printer. If you are using Windows95 or Windows NT 
6175                 then you can use this to automate the setup of printers on your 
6176                 system.</para>
6177
6178                 <para>You need to set this parameter to the exact string (case 
6179                 sensitive) that describes the appropriate printer driver for your 
6180                 system. If you don't know the exact string to use then you should 
6181                 first try with no <link linkend="PRINTERDRIVER"><parameter>
6182                 printer driver</parameter></link> option set and the client will 
6183                 give you a list of printer drivers. The appropriate strings are 
6184                 shown in a scroll box after you have chosen the printer manufacturer.</para>
6185
6186                 <para>See also <link linkend="PRINTERDRIVERFILE"><parameter>printer
6187                 driver file</parameter></link>.</para>
6188
6189                 <para>Example: <command>printer driver = HP LaserJet 4L</command></para>
6190                 </listitem>
6191                 </varlistentry>
6192
6193
6194
6195                 <varlistentry>
6196                 <term><anchor id="PRINTERDRIVERFILE">printer driver file (G)</term>
6197                 <listitem><para><emphasis>Note :</emphasis>This is a deprecated 
6198                 parameter and will be removed in the next major release
6199                 following version 2.2.  Please see the instructions in
6200                 the <ulink url="printer_driver2.html">Samba 2.2. Printing
6201                 HOWTO</ulink> for more information
6202                 on the new method of loading printer drivers onto a Samba server.
6203                 </para>
6204
6205                 <para>This parameter tells Samba where the printer driver 
6206                 definition file, used when serving drivers to Windows 95 clients, is 
6207                 to be found. If this is not set, the default is :</para>
6208
6209                 <para><filename><replaceable>SAMBA_INSTALL_DIRECTORY</replaceable>
6210                 /lib/printers.def</filename></para>
6211
6212                 <para>This file is created from Windows 95 <filename>msprint.inf
6213                 </filename> files found on the Windows 95 client system. For more 
6214                 details on setting up serving of printer drivers to Windows 95 
6215                 clients, see the outdated documentation file in the <filename>docs/</filename> 
6216                 directory, <filename>PRINTER_DRIVER.txt</filename>.</para>
6217
6218                 <para>See also <link linkend="PRINTERDRIVERLOCATION"><parameter>
6219                 printer driver location</parameter></link>.</para>
6220                 
6221                 <para>Default: <emphasis>None (set in compile).</emphasis></para>
6222
6223                 <para>Example: <command>printer driver file = 
6224                 /usr/local/samba/printers/drivers.def</command></para>
6225                 </listitem>
6226                 </varlistentry>
6227
6228
6229
6230
6231                 <varlistentry>
6232                 <term><anchor id="PRINTERDRIVERLOCATION">printer driver location (S)</term>
6233                 <listitem><para><emphasis>Note :</emphasis>This is a deprecated 
6234                 parameter and will be removed in the next major release
6235                 following version 2.2.  Please see the instructions in
6236                 the <ulink url="printer_driver2.html">Samba 2.2. Printing
6237                 HOWTO</ulink> for more information
6238                 on the new method of loading printer drivers onto a Samba server.
6239                 </para>
6240
6241                 <para>This parameter tells clients of a particular printer 
6242                 share where to find the printer driver files for the automatic 
6243                 installation of drivers for Windows 95 machines. If Samba is set up 
6244                 to serve printer drivers to Windows 95 machines, this should be set to</para>
6245
6246                 <para><command>\\MACHINE\PRINTER$</command></para>
6247
6248                 <para>Where MACHINE is the NetBIOS name of your Samba server, 
6249                 and PRINTER$ is a share you set up for serving printer driver 
6250                 files. For more details on setting this up see the outdated documentation 
6251                 file in the <filename>docs/</filename> directory, <filename>
6252                 PRINTER_DRIVER.txt</filename>.</para>
6253
6254                 <para>See also <link linkend="PRINTERDRIVERFILE"><parameter>
6255                 printer driver file</parameter></link>.</para>
6256
6257                 <para>Default: <command>none</command></para>
6258                 <para>Example: <command>printer driver location = \\MACHINE\PRINTER$
6259                 </command></para>
6260                 </listitem>
6261                 </varlistentry>
6262
6263
6264
6265                 <varlistentry>
6266                 <term><anchor id="PRINTERNAME">printer name (S)</term>
6267                 <listitem><para>This parameter specifies the name of the printer 
6268                 to which print jobs spooled through a printable service will be sent.</para>
6269
6270                 <para>If specified in the [global] section, the printer
6271                 name given will be used for any printable service that does 
6272                 not have its own printer name specified.</para>
6273
6274                 <para>Default: <emphasis>none (but may be <constant>lp</constant> 
6275                 on many systems)</emphasis></para>
6276
6277                 <para>Example: <command>printer name = laserwriter</command></para>
6278                 </listitem>
6279                 </varlistentry>
6280
6281
6282                 <varlistentry>
6283                 <term><anchor id="PRINTER">printer (S)</term>
6284                 <listitem><para>Synonym for <link linkend="PRINTERNAME"><parameter>
6285                 printer name</parameter></link>.</para>
6286                 </listitem>
6287                 </varlistentry>
6288
6289
6290
6291                 <varlistentry>
6292                 <term><anchor id="PRINTING">printing (S)</term>
6293                 <listitem><para>This parameters controls how printer status 
6294                 information is interpreted on your system. It also affects the 
6295                 default values for the <parameter>print command</parameter>, 
6296                 <parameter>lpq command</parameter>, <parameter>lppause command
6297                 </parameter>, <parameter>lpresume command</parameter>, and 
6298                 <parameter>lprm command</parameter> if specified in the 
6299                 [global] section.</para>
6300
6301                 <para>Currently nine printing styles are supported. They are
6302                 <constant>BSD</constant>, <constant>AIX</constant>, 
6303                 <constant>LPRNG</constant>, <constant>PLP</constant>,
6304                 <constant>SYSV</constant>, <constant>HPUX</constant>,
6305                 <constant>QNX</constant>, <constant>SOFTQ</constant>,
6306                 and <constant>CUPS</constant>.</para>
6307
6308                 <para>To see what the defaults are for the other print 
6309                 commands when using the various options use the <ulink 
6310                 url="testparm.1.html">testparm(1)</ulink> program.</para>
6311
6312                 <para>This option can be set on a per printer basis</para>
6313
6314                 <para>See also the discussion in the <link linkend="PRINTERSSECT">
6315                 [printers]</link> section.</para>
6316                 </listitem>
6317                 </varlistentry>
6318
6319
6320
6321                 
6322                 <varlistentry>
6323                 <term><anchor id="PRIVATEDIR">private dir (G)</term>
6324                 <listitem><para>This parameters defines the directory
6325                 smbd will use for storing such files as <filename>smbpasswd</filename>
6326                 and <filename>secrets.tdb</filename>.
6327                 </para>
6328                                 
6329                 <para>Default :<command>private dir = ${prefix}/private</command></para>
6330                 </listitem>
6331                 </varlistentry>
6332                 
6333                 
6334                 
6335
6336                 <varlistentry>
6337                 <term><anchor id="PROTOCOL">protocol (G)</term>
6338                 <listitem><para>Synonym for <link linkend="MAXPROTOCOL">
6339                 <parameter>max protocol</parameter></link>.</para></listitem>
6340                 </varlistentry>
6341
6342
6343
6344
6345                 <varlistentry>
6346                 <term><anchor id="PUBLIC">public (S)</term>
6347                 <listitem><para>Synonym for <link linkend="GUESTOK"><parameter>guest 
6348                 ok</parameter></link>.</para>
6349                 </listitem>
6350                 </varlistentry>
6351
6352
6353
6354                 <varlistentry>
6355                 <term><anchor id="QUEUEPAUSECOMMAND">queuepause command (S)</term>
6356                 <listitem><para>This parameter specifies the command to be 
6357                 executed on the server host in order to pause the printer queue.</para>
6358
6359                 <para>This command should be a program or script which takes 
6360                 a printer name as its only parameter and stops the printer queue, 
6361                 such that no longer jobs are submitted to the printer.</para>
6362
6363                 <para>This command is not supported by Windows for Workgroups, 
6364                 but can be issued from the Printers window under Windows 95 
6365                 and NT.</para>
6366                 
6367                 <para>If a <parameter>%p</parameter> is given then the printer name 
6368                 is put in its place. Otherwise it is placed at the end of the command.
6369                 </para>
6370
6371                 <para>Note that it is good practice to include the absolute 
6372                 path in the command as the PATH may not be available to the 
6373                 server.</para>
6374
6375                 <para>Default: <emphasis>depends on the setting of <parameter>printing
6376                 </parameter></emphasis></para>
6377                 <para>Example: <command>queuepause command = disable %p</command></para>
6378                 </listitem>
6379                 </varlistentry>
6380
6381
6382
6383                 <varlistentry>
6384                 <term><anchor id="QUEUERESUMECOMMAND">queueresume command (S)</term>
6385                 <listitem><para>This parameter specifies the command to be 
6386                 executed on the server host in order to resume the printer queue. It 
6387                 is the command to undo the behavior that is caused by the 
6388                 previous parameter (<link linkend="QUEUEPAUSECOMMAND"><parameter>
6389                 queuepause command</parameter></link>).</para>
6390  
6391                 <para>This command should be a program or script which takes 
6392                 a printer name as its only parameter and resumes the printer queue, 
6393                 such that queued jobs are resubmitted to the printer.</para>
6394
6395                 <para>This command is not supported by Windows for Workgroups, 
6396                 but can be issued from the Printers window under Windows 95 
6397                 and NT.</para>
6398
6399                 <para>If a <parameter>%p</parameter> is given then the printer name 
6400                 is put in its place. Otherwise it is placed at the end of the 
6401                 command.</para>
6402
6403                 <para>Note that it is good practice to include the absolute 
6404                 path in the command as the PATH may not be available to the 
6405                 server.</para>
6406
6407                 <para>Default: <emphasis>depends on the setting of <link
6408                 linkend="PRINTING"><parameter>printing</parameter></link></emphasis>
6409                 </para>
6410
6411                 <para>Example: <command>queuepause command = enable %p
6412                 </command></para>
6413                 </listitem>
6414                 </varlistentry>
6415
6416
6417
6418                 <varlistentry>
6419                 <term><anchor id="READBMPX">read bmpx (G)</term>
6420                 <listitem><para>This boolean parameter controls whether <ulink 
6421                 url="smbd.8.html">smbd(8)</ulink> will support the "Read 
6422                 Block Multiplex" SMB. This is now rarely used and defaults to 
6423                 <constant>no</constant>. You should never need to set this 
6424                 parameter.</para>
6425                 
6426                 <para>Default: <command>read bmpx = no</command></para>
6427                 </listitem>
6428                 </varlistentry>
6429
6430
6431
6432
6433                 <varlistentry>
6434                 <term><anchor id="READLIST">read list (S)</term>
6435                 <listitem><para>This is a list of users that are given read-only 
6436                 access to a service. If the connecting user is in this list then 
6437                 they will not be given write access, no matter what the <link 
6438                 linkend="READONLY"><parameter>read only</parameter></link>
6439                 option is set to. The list can include group names using the 
6440                 syntax described in the <link linkend="INVALIDUSERS"><parameter>
6441                 invalid users</parameter></link> parameter.</para>
6442
6443                 <para>See also the <link linkend="WRITELIST"><parameter>
6444                 write list</parameter></link> parameter and the <link 
6445                 linkend="INVALIDUSERS"><parameter>invalid users</parameter>
6446                 </link> parameter.</para>
6447
6448                 <para>Default: <command>read list = &lt;empty string&gt;</command></para>
6449                 <para>Example: <command>read list = mary, @students</command></para>
6450                 </listitem>
6451                 </varlistentry>
6452
6453
6454
6455                 <varlistentry>
6456                 <term><anchor id="READONLY">read only (S)</term>
6457                 <listitem><para>An inverted synonym is <link linkend="WRITEABLE">
6458                 <parameter>writeable</parameter></link>.</para>
6459
6460                 <para>If this parameter is <constant>yes</constant>, then users 
6461                 of a service may not create or modify files in the service's 
6462                 directory.</para>
6463
6464                 <para>Note that a printable service (<command>printable = yes</command>)
6465                 will <emphasis>ALWAYS</emphasis> allow writing to the directory 
6466                 (user privileges permitting), but only via spooling operations.</para>
6467
6468                 <para>Default: <command>read only = yes</command></para>
6469                 </listitem>
6470                 </varlistentry>
6471
6472
6473
6474                 <varlistentry>
6475                 <term><anchor id="READRAW">read raw (G)</term>
6476                 <listitem><para>This parameter controls whether or not the server 
6477                 will support the raw read SMB requests when transferring data 
6478                 to clients.</para>
6479
6480                 <para>If enabled, raw reads allow reads of 65535 bytes in 
6481                 one packet. This typically provides a major performance benefit.
6482                 </para>
6483
6484                 <para>However, some clients either negotiate the allowable 
6485                 block size incorrectly or are incapable of supporting larger block 
6486                 sizes, and for these clients you may need to disable raw reads.</para>
6487
6488                 <para>In general this parameter should be viewed as a system tuning 
6489                 tool and left severely alone. See also <link linkend="WRITERAW">
6490                 <parameter>write raw</parameter></link>.</para>
6491
6492                 <para>Default: <command>read raw = yes</command></para>
6493                 </listitem>
6494                 </varlistentry>
6495
6496
6497                 <varlistentry>
6498                 <term><anchor id="READSIZE">read size (G)</term>
6499                 <listitem><para>The option <parameter>read size</parameter> 
6500                 affects the overlap of disk reads/writes with network reads/writes. 
6501                 If the amount of data being transferred in several of the SMB 
6502                 commands (currently SMBwrite, SMBwriteX and SMBreadbraw) is larger 
6503                 than this value then the server begins writing the data before it 
6504                 has received the whole packet from the network, or in the case of 
6505                 SMBreadbraw, it begins writing to the network before all the data 
6506                 has been read from disk.</para>
6507
6508                 <para>This overlapping works best when the speeds of disk and 
6509                 network access are similar, having very little effect when the 
6510                 speed of one is much greater than the other.</para>
6511
6512                 <para>The default value is 16384, but very little experimentation 
6513                 has been done yet to determine the optimal value, and it is likely 
6514                 that the best value will vary greatly between systems anyway. 
6515                 A value over 65536 is pointless and will cause you to allocate 
6516                 memory unnecessarily.</para>
6517
6518                 <para>Default: <command>read size = 16384</command></para>
6519                 <para>Example: <command>read size = 8192</command></para>
6520                 </listitem>
6521                 </varlistentry>
6522
6523
6524                 <varlistentry>
6525                 <term><anchor id="REALM">realm (G)</term>
6526                 <listitem><para>
6527                 This option specifies the kerberos realm to use. The realm is 
6528                 used as the ADS equivalent of the NT4<command>domain</command>. It
6529                 is usually set to the DNS name of the kerberos server.
6530                 </para>
6531                 
6532                 <para>Default: <command>realm = </command></para>
6533                 <para>Example: <command>realm = mysambabox.mycompany.com</command></para>
6534                 </listitem>
6535                 </varlistentry>
6536
6537                 <varlistentry>
6538                 <term><anchor id="REMOTEANNOUNCE">remote announce (G)</term>
6539                 <listitem><para>This option allows you to setup <ulink 
6540                 url="nmbd.8.html">nmbd(8)</ulink> to periodically announce itself 
6541                 to arbitrary IP addresses with an arbitrary workgroup name.</para>
6542
6543                 <para>This is useful if you want your Samba server to appear 
6544                 in a remote workgroup for which the normal browse propagation 
6545                 rules don't work. The remote workgroup can be anywhere that you 
6546                 can send IP packets to.</para>
6547
6548                 <para>For example:</para>
6549
6550                 <para><command>remote announce = 192.168.2.255/SERVERS 
6551                 192.168.4.255/STAFF</command></para>
6552
6553                 <para>the above line would cause <command>nmbd</command> to announce itself 
6554                 to the two given IP addresses using the given workgroup names. 
6555                 If you leave out the workgroup name then the one given in 
6556                 the <link linkend="WORKGROUP"><parameter>workgroup</parameter></link> 
6557                 parameter is used instead.</para>
6558
6559                 <para>The IP addresses you choose would normally be the broadcast 
6560                 addresses of the remote networks, but can also be the IP addresses 
6561                 of known browse masters if your network config is that stable.</para>
6562
6563                 <para>See the documentation file <filename>BROWSING.txt</filename> 
6564                 in the <filename>docs/</filename> directory.</para>
6565                 
6566                 <para>Default: <command>remote announce = &lt;empty string&gt;
6567                 </command></para>
6568                 </listitem>
6569                 </varlistentry>
6570
6571
6572
6573                 <varlistentry>
6574                 <term><anchor id="REMOTEBROWSESYNC">remote browse sync (G)</term>
6575                 <listitem><para>This option allows you to setup <ulink 
6576                 url="nmbd.8.html">nmbd(8)</ulink> to periodically request 
6577                 synchronization of browse lists with the master browser of a Samba 
6578                 server that is on a remote segment. This option will allow you to 
6579                 gain browse lists for multiple workgroups across routed networks. This 
6580                 is done in a manner that does not work with any non-Samba servers.</para>
6581
6582                 <para>This is useful if you want your Samba server and all local 
6583                 clients to appear in a remote workgroup for which the normal browse 
6584                 propagation rules don't work. The remote workgroup can be anywhere 
6585                 that you can send IP packets to.</para>
6586
6587                 <para>For example:</para>
6588                 
6589                 <para><command>remote browse sync = 192.168.2.255 192.168.4.255
6590                 </command></para>
6591
6592                 <para>the above line would cause <command>nmbd</command> to request 
6593                 the master browser on the specified subnets or addresses to 
6594                 synchronize their browse lists with the local server.</para>
6595
6596                 <para>The IP addresses you choose would normally be the broadcast 
6597                 addresses of the remote networks, but can also be the IP addresses 
6598                 of known browse masters if your network config is that stable. If 
6599                 a machine IP address is given Samba makes NO attempt to validate 
6600                 that the remote machine is available, is listening, nor that it 
6601                 is in fact the browse master on its segment.</para>
6602
6603                 <para>Default: <command>remote browse sync = &lt;empty string&gt;
6604                 </command></para>
6605                 </listitem>
6606                 </varlistentry>
6607
6608
6609
6610
6611                 <varlistentry>
6612                 <term><anchor id="RESTRICTANONYMOUS">restrict anonymous (G)</term>
6613                 <listitem><para>This is a integer parameter, and
6614                 mirrors as much as possible the functinality the
6615                 <constant>RestrictAnonymous</constant>
6616                 registry key does on NT/Win2k.  </para>
6617
6618                 <para>Default: <command>restrict anonymous = 0</command></para>
6619                 </listitem>
6620                 </varlistentry>
6621
6622
6623
6624                 <varlistentry>
6625                 <term><anchor id="ROOT">root (G)</term>
6626                 <listitem><para>Synonym for <link linkend="ROOTDIRECTORY">
6627                 <parameter>root directory"</parameter></link>.</para>
6628                 </listitem>
6629                 </varlistentry>
6630
6631
6632
6633                 <varlistentry>
6634                 <term><anchor id="ROOTDIR">root dir (G)</term>
6635                 <listitem><para>Synonym for <link linkend="ROOTDIRECTORY">
6636                 <parameter>root directory"</parameter></link>.</para>
6637                 </listitem>
6638                 </varlistentry>
6639
6640
6641                 <varlistentry>
6642                 <term><anchor id="ROOTDIRECTORY">root directory (G)</term>
6643                 <listitem><para>The server will <command>chroot()</command> (i.e. 
6644                 Change its root directory) to this directory on startup. This is 
6645                 not strictly necessary for secure operation. Even without it the 
6646                 server will deny access to files not in one of the service entries. 
6647                 It may also check for, and deny access to, soft links to other 
6648                 parts of the filesystem, or attempts to use ".." in file names 
6649                 to access other directories (depending on the setting of the <link
6650                 linkend="WIDELINKS"><parameter>wide links</parameter></link> 
6651                 parameter).</para>
6652
6653                 <para>Adding a <parameter>root directory</parameter> entry other 
6654                 than "/" adds an extra level of security, but at a price. It 
6655                 absolutely ensures that no access is given to files not in the 
6656                 sub-tree specified in the <parameter>root directory</parameter> 
6657                 option, <emphasis>including</emphasis> some files needed for 
6658                 complete operation of the server. To maintain full operability 
6659                 of the server you will need to mirror some system files 
6660                 into the <parameter>root directory</parameter> tree. In particular 
6661                 you will need to mirror <filename>/etc/passwd</filename> (or a 
6662                 subset of it), and any binaries or configuration files needed for 
6663                 printing (if required). The set of files that must be mirrored is
6664                 operating system dependent.</para>
6665
6666                 <para>Default: <command>root directory = /</command></para>
6667                 <para>Example: <command>root directory = /homes/smb</command></para>
6668                 </listitem>
6669                 </varlistentry>
6670
6671
6672
6673                 <varlistentry>
6674                 <term><anchor id="ROOTPOSTEXEC">root postexec (S)</term>
6675                 <listitem><para>This is the same as the <parameter>postexec</parameter>
6676                 parameter except that the command is run as root. This 
6677                 is useful for unmounting filesystems 
6678                 (such as CDROMs) after a connection is closed.</para>
6679
6680                 <para>See also <link linkend="POSTEXEC"><parameter>
6681                 postexec</parameter></link>.</para>
6682
6683                 <para>Default: <command>root postexec = &lt;empty string&gt;
6684                 </command></para>
6685                 </listitem>
6686                 </varlistentry>
6687
6688                 <varlistentry>
6689                 <term><anchor id="ROOTPREEXEC">root preexec (S)</term>
6690                 <listitem><para>This is the same as the <parameter>preexec</parameter>
6691                 parameter except that the command is run as root. This 
6692                 is useful for mounting filesystems (such as CDROMs) when a 
6693                 connection is opened.</para>
6694
6695                 <para>See also <link linkend="PREEXEC"><parameter>
6696                 preexec</parameter></link> and <link linkend="PREEXECCLOSE">
6697                 <parameter>preexec close</parameter></link>.</para>
6698                 
6699                 <para>Default: <command>root preexec = &lt;empty string&gt;
6700                 </command></para>
6701                 </listitem>
6702                 </varlistentry>
6703
6704
6705
6706                 <varlistentry>
6707                 <term><anchor id="ROOTPREEXECCLOSE">root preexec close (S)</term>
6708                 <listitem><para>This is the same as the <parameter>preexec close
6709                 </parameter> parameter except that the command is run as root.</para>
6710
6711                 <para>See also <link linkend="PREEXEC"><parameter>
6712                 preexec</parameter></link> and <link linkend="PREEXECCLOSE">
6713                 <parameter>preexec close</parameter></link>.</para>
6714
6715                 <para>Default: <command>root preexec close = no</command></para>
6716                 </listitem>
6717                 </varlistentry>
6718
6719
6720                 <varlistentry>
6721                 <term><anchor id="SECURITY">security (G)</term>
6722                 <listitem><para>This option affects how clients respond to 
6723                 Samba and is one of the most important settings in the <filename>
6724                 smb.conf</filename> file.</para>
6725
6726                 <para>The option sets the "security mode bit" in replies to 
6727                 protocol negotiations with <ulink url="smbd.8.html">smbd(8)
6728                 </ulink> to turn share level security on or off. Clients decide 
6729                 based on this bit whether (and how) to transfer user and password 
6730                 information to the server.</para>
6731
6732
6733                 <para>The default is <command>security = user</command>, as this is
6734                 the most common setting needed when talking to Windows 98 and 
6735                 Windows NT.</para>
6736
6737                 <para>The alternatives are <command>security = share</command>,
6738                 <command>security = server</command> or <command>security = domain
6739                 </command>.</para>
6740
6741                 <para>In versions of Samba prior to 2.0.0, the default was 
6742                 <command>security = share</command> mainly because that was
6743                 the only option at one stage.</para>
6744
6745                 <para>There is a bug in WfWg that has relevance to this 
6746                 setting. When in user or server level security a WfWg client 
6747                 will totally ignore the password you type in the "connect 
6748                 drive" dialog box. This makes it very difficult (if not impossible) 
6749                 to connect to a Samba service as anyone except the user that 
6750                 you are logged into WfWg as.</para>
6751
6752                 <para>If your PCs use usernames that are the same as their 
6753                 usernames on the UNIX machine then you will want to use 
6754                 <command>security = user</command>. If you mostly use usernames 
6755                 that don't exist on the UNIX box then use <command>security = 
6756                 share</command>.</para>
6757
6758                 <para>You should also use <command>security = share</command> if you 
6759                 want to mainly setup shares without a password (guest shares). This 
6760                 is commonly used for a shared printer server. It is more difficult 
6761                 to setup guest shares with <command>security = user</command>, see 
6762                 the <link linkend="MAPTOGUEST"><parameter>map to guest</parameter>
6763                 </link>parameter for details.</para>
6764                 
6765                 <para>It is possible to use <command>smbd</command> in a <emphasis>
6766                 hybrid mode</emphasis> where it is offers both user and share 
6767                 level security under different <link linkend="NETBIOSALIASES">
6768                 <parameter>NetBIOS aliases</parameter></link>. </para>
6769
6770                 <para>The different settings will now be explained.</para>
6771
6772
6773                 <para><anchor id="SECURITYEQUALSSHARE"><emphasis>SECURITY = SHARE
6774                 </emphasis></para> 
6775                 
6776                 <para>When clients connect to a share level security server they 
6777                 need not log onto the server with a valid username and password before 
6778                 attempting to connect to a shared resource (although modern clients 
6779                 such as Windows 95/98 and Windows NT will send a logon request with 
6780                 a username but no password when talking to a <command>security = share
6781                 </command> server). Instead, the clients send authentication information 
6782                 (passwords) on a per-share basis, at the time they attempt to connect 
6783                 to that share.</para>
6784
6785                 <para>Note that <command>smbd</command> <emphasis>ALWAYS</emphasis> 
6786                 uses a valid UNIX user to act on behalf of the client, even in
6787                 <command>security = share</command> level security.</para>
6788
6789                 <para>As clients are not required to send a username to the server
6790                 in share level security, <command>smbd</command> uses several
6791                 techniques to determine the correct UNIX user to use on behalf
6792                 of the client.</para>
6793
6794                 <para>A list of possible UNIX usernames to match with the given
6795                 client password is constructed using the following methods :</para>
6796
6797                 <itemizedlist>
6798                         <listitem><para>If the <link linkend="GUESTONLY"><parameter>guest 
6799                         only</parameter></link> parameter is set, then all the other 
6800                         stages are missed and only the <link linkend="GUESTACCOUNT">
6801                         <parameter>guest account</parameter></link> username is checked.
6802                         </para></listitem>
6803
6804                         <listitem><para>Is a username is sent with the share connection 
6805                         request, then this username (after mapping - see <link 
6806                         linkend="USERNAMEMAP"><parameter>username map</parameter></link>), 
6807                         is added as a potential username.</para></listitem>
6808
6809                         <listitem><para>If the client did a previous <emphasis>logon
6810                         </emphasis> request (the SessionSetup SMB call) then the 
6811                         username sent in this SMB will be added as a potential username.
6812                         </para></listitem>
6813
6814                         <listitem><para>The name of the service the client requested is 
6815                         added as a potential username.</para></listitem>
6816
6817                         <listitem><para>The NetBIOS name of the client is added to 
6818                         the list as a potential username.</para></listitem>
6819
6820                         <listitem><para>Any users on the <link linkend="USER"><parameter>
6821                         user</parameter></link> list are added as potential usernames.
6822                         </para></listitem>
6823                 </itemizedlist>
6824
6825                 <para>If the <parameter>guest only</parameter> parameter is 
6826                 not set, then this list is then tried with the supplied password. 
6827                 The first user for whom the password matches will be used as the 
6828                 UNIX user.</para>
6829
6830                 <para>If the <parameter>guest only</parameter> parameter is 
6831                 set, or no username can be determined then if the share is marked 
6832                 as available to the <parameter>guest account</parameter>, then this 
6833                 guest user will be used, otherwise access is denied.</para>
6834
6835                 <para>Note that it can be <emphasis>very</emphasis> confusing 
6836                 in share-level security as to which UNIX username will eventually
6837                 be used in granting access.</para>
6838
6839                 <para>See also the section <link linkend="VALIDATIONSECT">
6840                 NOTE ABOUT USERNAME/PASSWORD VALIDATION</link>.</para>
6841
6842                 <para><anchor id="SECURITYEQUALSUSER"><emphasis>SECURITY = USER
6843                 </emphasis></para>
6844
6845                 <para>This is the default security setting in Samba 2.2. 
6846                 With user-level security a client must first "log-on" with a 
6847                 valid username and password (which can be mapped using the <link
6848                 linkend="USERNAMEMAP"><parameter>username map</parameter></link> 
6849                 parameter). Encrypted passwords (see the <link linkend="ENCRYPTPASSWORDS">
6850                 <parameter>encrypted passwords</parameter></link> parameter) can also
6851                 be used in this security mode. Parameters such as <link linkend="USER">
6852                 <parameter>user</parameter></link> and <link linkend="GUESTONLY">
6853                 <parameter>guest only</parameter></link> if set are then applied and 
6854                 may change the UNIX user to use on this connection, but only after 
6855                 the user has been successfully authenticated.</para>
6856
6857                 <para><emphasis>Note</emphasis> that the name of the resource being 
6858                 requested is <emphasis>not</emphasis> sent to the server until after 
6859                 the server has successfully authenticated the client. This is why 
6860                 guest shares don't work in user level security without allowing 
6861                 the server to automatically map unknown users into the <link
6862                 linkend="GUESTACCOUNT"><parameter>guest account</parameter></link>. 
6863                 See the <link linkend="MAPTOGUEST"><parameter>map to guest</parameter>
6864                 </link> parameter for details on doing this.</para>
6865
6866                 <para>See also the section <link linkend="VALIDATIONSECT">
6867                 NOTE ABOUT USERNAME/PASSWORD VALIDATION</link>.</para>
6868
6869                 <para><anchor id="SECURITYEQUALSSERVER"><emphasis>SECURITY = SERVER
6870                 </emphasis></para>
6871
6872                 <para>In this mode Samba will try to validate the username/password 
6873                 by passing it to another SMB server, such as an NT box. If this 
6874                 fails it will revert to <command>security = user</command>, but note 
6875                 that if encrypted passwords have been negotiated then Samba cannot 
6876                 revert back to checking the UNIX password file, it must have a valid 
6877                 <filename>smbpasswd</filename> file to check users against. See the 
6878                 documentation file in the <filename>docs/</filename> directory 
6879                 <filename>ENCRYPTION.txt</filename> for details on how to set this 
6880                 up.</para>
6881
6882                 <para><emphasis>Note</emphasis> that from the client's point of 
6883                 view <command>security = server</command> is the same as <command>
6884                 security = user</command>.  It only affects how the server deals 
6885                 with the authentication, it does not in any way affect what the 
6886                 client sees.</para>
6887
6888                 <para><emphasis>Note</emphasis> that the name of the resource being 
6889                 requested is <emphasis>not</emphasis> sent to the server until after 
6890                 the server has successfully authenticated the client. This is why 
6891                 guest shares don't work in user level security without allowing 
6892                 the server to automatically map unknown users into the <link
6893                 linkend="GUESTACCOUNT"><parameter>guest account</parameter></link>. 
6894                 See the <link linkend="MAPTOGUEST"><parameter>map to guest</parameter>
6895                 </link> parameter for details on doing this.</para>
6896
6897                 <para>See also the section <link linkend="VALIDATIONSECT">
6898                 NOTE ABOUT USERNAME/PASSWORD VALIDATION</link>.</para>
6899
6900                 <para>See also the <link linkend="PASSWORDSERVER"><parameter>password 
6901                 server</parameter></link> parameter and the <link 
6902                 linkend="ENCRYPTPASSWORDS"><parameter>encrypted passwords</parameter>
6903                 </link> parameter.</para>
6904                 
6905                 <para><anchor id="SECURITYEQUALSDOMAIN"><emphasis>SECURITY = DOMAIN
6906                 </emphasis></para>
6907
6908                 <para>This mode will only work correctly if <ulink 
6909                 url="smbpasswd.8.html">smbpasswd(8)</ulink> has been used to add this 
6910                 machine into a Windows NT Domain. It expects the <link 
6911                 linkend="ENCRYPTPASSWORDS"><parameter>encrypted passwords</parameter>
6912                 </link> parameter to be set to <constant>yes</constant>. In this 
6913                 mode Samba will try to validate the username/password by passing
6914                 it to a Windows NT Primary or Backup Domain Controller, in exactly 
6915                 the same way that a Windows NT Server would do.</para>
6916
6917                 <para><emphasis>Note</emphasis> that a valid UNIX user must still 
6918                 exist as well as the account on the Domain Controller to allow 
6919                 Samba to have a valid UNIX account to map file access to.</para>
6920
6921                 <para><emphasis>Note</emphasis> that from the client's point 
6922                 of view <command>security = domain</command> is the same as <command>security = user
6923                 </command>. It only affects how the server deals with the authentication, 
6924                 it does not in any way affect what the client sees.</para>
6925
6926                 <para><emphasis>Note</emphasis> that the name of the resource being 
6927                 requested is <emphasis>not</emphasis> sent to the server until after 
6928                 the server has successfully authenticated the client. This is why 
6929                 guest shares don't work in user level security without allowing 
6930                 the server to automatically map unknown users into the <link
6931                 linkend="GUESTACCOUNT"><parameter>guest account</parameter></link>. 
6932                 See the <link linkend="MAPTOGUEST"><parameter>map to guest</parameter>
6933                 </link> parameter for details on doing this.</para>
6934
6935                 <para><emphasis>BUG:</emphasis> There is currently a bug in the 
6936                 implementation of <command>security = domain</command> with respect 
6937                 to multi-byte character set usernames. The communication with a 
6938                 Domain Controller must be done in UNICODE and Samba currently 
6939                 does not widen multi-byte user names to UNICODE correctly, thus 
6940                 a multi-byte username will not be recognized correctly at the 
6941                 Domain Controller. This issue will be addressed in a future release.</para>
6942
6943                 <para>See also the section <link linkend="VALIDATIONSECT">
6944                 NOTE ABOUT USERNAME/PASSWORD VALIDATION</link>.</para>
6945
6946                 <para>See also the <link linkend="PASSWORDSERVER"><parameter>password 
6947                 server</parameter></link> parameter and the <link 
6948                 linkend="ENCRYPTPASSWORDS"><parameter>encrypted passwords</parameter>
6949                 </link> parameter.</para>
6950
6951                 <para>Default: <command>security = USER</command></para>
6952                 <para>Example: <command>security = DOMAIN</command></para>
6953                 </listitem>
6954                 </varlistentry>
6955
6956
6957
6958                 <varlistentry>
6959                 <term><anchor id="SECURITYMASK">security mask (S)</term>
6960                 <listitem><para>This parameter controls what UNIX permission 
6961                 bits can be modified when a Windows NT client is manipulating 
6962                 the UNIX permission on a file using the native NT security 
6963                 dialog box.</para>
6964
6965                 <para>This parameter is applied as a mask (AND'ed with) to 
6966                 the changed permission bits, thus preventing any bits not in 
6967                 this mask from being modified. Essentially, zero bits in this 
6968                 mask may be treated as a set of bits the user is not allowed 
6969                 to change.</para>
6970
6971                 <para>If not set explicitly this parameter is 0777, allowing
6972                 a user to modify all the user/group/world permissions on a file.
6973                 </para>
6974
6975                 <para><emphasis>Note</emphasis> that users who can access the 
6976                 Samba server through other means can easily bypass this 
6977                 restriction, so it is primarily useful for standalone 
6978                 "appliance" systems.  Administrators of most normal systems will 
6979                 probably want to leave it set to <constant>0777</constant>.</para>
6980                 
6981                 <para>See also the <link linkend="FORCEDIRECTORYSECURITYMODE">
6982                 <parameter>force directory security mode</parameter></link>, 
6983                 <link linkend="DIRECTORYSECURITYMASK"><parameter>directory 
6984                 security mask</parameter></link>, <link linkend="FORCESECURITYMODE">
6985                 <parameter>force security mode</parameter></link> parameters.</para>
6986
6987                 <para>Default: <command>security mask = 0777</command></para>
6988                 <para>Example: <command>security mask = 0770</command></para>
6989                 </listitem>
6990                 </varlistentry>
6991
6992
6993                 <varlistentry>
6994                 <term><anchor id="SERVERSTRING">server string (G)</term>
6995                 <listitem><para>This controls what string will show up in the 
6996                 printer comment box in print manager and next to the IPC connection 
6997                 in <command>net view</command>. It can be any string that you wish 
6998                 to show to your users.</para>
6999                 
7000                 <para>It also sets what will appear in browse lists next 
7001                 to the machine name.</para>
7002
7003                 <para>A <parameter>%v</parameter> will be replaced with the Samba 
7004                 version number.</para>
7005
7006                 <para>A <parameter>%h</parameter> will be replaced with the 
7007                 hostname.</para>
7008
7009                 <para>Default: <command>server string = Samba %v</command></para>
7010
7011                 <para>Example: <command>server string = University of GNUs Samba 
7012                 Server</command></para>
7013                 </listitem>
7014                 </varlistentry>
7015
7016
7017
7018                 <varlistentry>
7019                 <term><anchor id="SETDIRECTORY">set directory (S)</term>
7020                 <listitem><para>If <command>set directory = no</command>, then 
7021                 users of the service may not use the setdir command to change 
7022                 directory.</para>
7023
7024                 <para>The <command>setdir</command> command is only implemented 
7025                 in the Digital Pathworks client. See the Pathworks documentation 
7026                 for details.</para>
7027
7028                 <para>Default: <command>set directory = no</command></para>
7029                 </listitem>
7030                 </varlistentry>
7031
7032
7033
7034                 <varlistentry>
7035                 <term><anchor id="SHAREMODES">share modes (S)</term>
7036                 <listitem><para>This enables or disables the honoring of 
7037                 the <parameter>share modes</parameter> during a file open. These 
7038                 modes are used by clients to gain exclusive read or write access 
7039                 to a file.</para>
7040
7041                 <para>These open modes are not directly supported by UNIX, so
7042                 they are simulated using shared memory, or lock files if your 
7043                 UNIX doesn't support shared memory (almost all do).</para>
7044
7045                 <para>The share modes that are enabled by this option are 
7046                 <constant>DENY_DOS</constant>, <constant>DENY_ALL</constant>,
7047                 <constant>DENY_READ</constant>, <constant>DENY_WRITE</constant>,
7048                 <constant>DENY_NONE</constant> and <constant>DENY_FCB</constant>.
7049                 </para>
7050
7051                 <para>This option gives full share compatibility and enabled 
7052                 by default.</para>
7053
7054                 <para>You should <emphasis>NEVER</emphasis> turn this parameter 
7055                 off as many Windows applications will break if you do so.</para>
7056
7057                 <para>Default: <command>share modes = yes</command></para>
7058                 </listitem>
7059                 </varlistentry>
7060
7061
7062
7063                 <varlistentry>
7064                 <term><anchor id="SHORTPRESERVECASE">short preserve case (S)</term>
7065                 <listitem><para>This boolean parameter controls if new files 
7066                 which conform to 8.3 syntax, that is all in upper case and of 
7067                 suitable length, are created upper case, or if they are forced 
7068                 to be the <link linkend="DEFAULTCASE"><parameter>default case
7069                 </parameter></link>. This  option can be use with <link 
7070                 linkend="PRESERVECASE"><command>preserve case = yes</command>
7071                 </link> to permit long filenames to retain their case, while short 
7072                 names are lowered. </para>
7073                 
7074                 <para>See the section on <link linkend="NAMEMANGLINGSECT">
7075                 NAME MANGLING</link>.</para>
7076
7077                 <para>Default: <command>short preserve case = yes</command></para>
7078                 </listitem>
7079                 </varlistentry>
7080
7081
7082
7083                 <varlistentry>
7084                 <term><anchor id="SHOWADDPRINTERWIZARD">show add printer wizard (G)</term>
7085                 <listitem><para>With the introduction of MS-RPC based printing support
7086                 for Windows NT/2000 client in Samba 2.2, a "Printers..." folder will 
7087                 appear on Samba hosts in the share listing.  Normally this folder will 
7088                 contain an icon for the MS Add Printer Wizard (APW).  However, it is 
7089                 possible to disable this feature regardless of the level of privilege 
7090                 of the connected user.</para>
7091                 
7092                 <para>Under normal circumstances, the Windows NT/2000 client will 
7093                 open a handle on the printer server with OpenPrinterEx() asking for
7094                 Administrator privileges.  If the user does not have administrative
7095                 access on the print server (i.e is not root or a member of the 
7096                 <parameter>printer admin</parameter> group), the OpenPrinterEx() 
7097                 call fails and the client makes another open call with a request for 
7098                 a lower privilege level.  This should succeed, however the APW 
7099                 icon will not be displayed.</para>
7100                 
7101                 <para>Disabling the <parameter>show add printer wizard</parameter>
7102                 parameter will always cause the OpenPrinterEx() on the server
7103                 to fail.  Thus the APW icon will never be displayed. <emphasis>
7104                 Note :</emphasis>This does not prevent the same user from having 
7105                 administrative privilege on an individual printer.</para>
7106                 
7107                 <para>See also <link linkend="ADDPRINTERCOMMAND"><parameter>addprinter
7108                 command</parameter></link>, <link linkend="DELETEPRINTERCOMMAND">
7109                 <parameter>deleteprinter command</parameter></link>, <link 
7110                 linkend="PRINTERADMIN"><parameter>printer admin</parameter></link></para>
7111                 
7112                 <para>Default :<command>show add printer wizard = yes</command></para>
7113                 </listitem>
7114                 </varlistentry>
7115
7116
7117
7118                 <varlistentry>
7119                 <term><anchor id="SHUTDOWNSCRIPT">shutdown script (G)</term>
7120                 <listitem><para><emphasis>This parameter only exists in the HEAD cvs branch</emphasis>
7121                 This a full path name to a script called by
7122                 <ulink url="smbd.8.html"><command>smbd(8)</command></ulink> that
7123                 should start a shutdown procedure.</para>
7124
7125                 <para>This command will be run as the user connected to the
7126                 server.</para>
7127
7128                 <para>%m %t %r %f parameters are expanded</para>
7129                 <para><parameter>%m</parameter> will be substituted with the
7130                 shutdown message sent to the server.</para>
7131                 <para><parameter>%t</parameter> will be substituted with the
7132                 number of seconds to wait before effectively starting the
7133                 shutdown procedure.</para>
7134                 <para><parameter>%r</parameter> will be substituted with the
7135                 switch <emphasis>-r</emphasis>. It means reboot after shutdown
7136                 for NT.
7137                 </para>
7138                 <para><parameter>%f</parameter> will be substituted with the
7139                 switch <emphasis>-f</emphasis>. It means force the shutdown
7140                 even if applications do not respond for NT.</para>
7141
7142                 <para>Default: <emphasis>None</emphasis>.</para>
7143                 <para>Example: <command>abort shutdown script = /usr/local/samba/sbin/shutdown %m %t %r %f</command></para>
7144                 <para>Shutdown script example:
7145                 <programlisting>
7146                 #!/bin/bash
7147                 
7148                 $time=0
7149                 let "time/60"
7150                 let "time++"
7151
7152                 /sbin/shutdown $3 $4 +$time $1 &
7153                 </programlisting>
7154                 Shutdown does not return so we need to launch it in background.
7155                 </para>
7156
7157                 <para>See also <link linkend="ABORTSHUTDOWNSCRIPT"><parameter>abort shutdown script</parameter></link>.</para>
7158                 </listitem>
7159                 </varlistentry>
7160
7161
7162                 <varlistentry>
7163                 <term><anchor id="SMBPASSWDFILE">smb passwd file (G)</term>
7164                 <listitem><para>This option sets the path to the encrypted 
7165                 smbpasswd file.  By default the path to the smbpasswd file 
7166                 is compiled into Samba.</para>
7167                 
7168                 <para>Default: <command>smb passwd file = ${prefix}/private/smbpasswd
7169                 </command></para>
7170
7171                 <para>Example: <command>smb passwd file = /etc/samba/smbpasswd
7172                 </command></para>
7173                 </listitem>
7174                 </varlistentry>
7175
7176
7177                 <varlistentry>
7178                 <term><anchor id="SMBPORTS">smb ports (G)</term>
7179                 <listitem><para>Specifies which ports the server should listen on
7180                 for SMB traffic.
7181                 </para>
7182
7183                 <para>Default: <command>smb ports = 445 139</command></para>
7184
7185                 </listitem>
7186                 </varlistentry>
7187
7188                 <varlistentry>
7189                 <term><anchor id="SOCKETADDRESS">socket address (G)</term>
7190                 <listitem><para>This option allows you to control what 
7191                 address Samba will listen for connections on. This is used to 
7192                 support multiple virtual interfaces on the one server, each 
7193                 with a different configuration.</para>
7194                 
7195                 <para>By default Samba will accept connections on any 
7196                 address.</para>
7197
7198                 <para>Example: <command>socket address = 192.168.2.20</command>
7199                 </para>
7200                 </listitem>
7201                 </varlistentry>
7202
7203
7204
7205                 <varlistentry>
7206                 <term><anchor id="SOCKETOPTIONS">socket options (G)</term>
7207                 <listitem><para>This option allows you to set socket options 
7208                 to be used when talking with the client.</para>
7209
7210                 <para>Socket options are controls on the networking layer 
7211                 of the operating systems which allow the connection to be 
7212                 tuned.</para>
7213
7214                 <para>This option will typically be used to tune your Samba 
7215                 server for optimal performance for your local network. There is 
7216                 no way that Samba can know what the optimal parameters are for 
7217                 your net, so you must experiment and choose them yourself. We 
7218                 strongly suggest you read the appropriate documentation for your 
7219                 operating system first (perhaps <command>man setsockopt</command> 
7220                 will help).</para>
7221
7222                 <para>You may find that on some systems Samba will say 
7223                 "Unknown socket option" when you supply an option. This means you 
7224                 either incorrectly  typed it or you need to add an include file 
7225                 to includes.h for your OS.  If the latter is the case please 
7226                 send the patch to <ulink url="mailto:samba@samba.org">
7227                 samba@samba.org</ulink>.</para>
7228
7229                 <para>Any of the supported socket options may be combined 
7230                 in any way you like, as long as your OS allows it.</para>
7231
7232                 <para>This is the list of socket options currently settable 
7233                 using this option:</para>
7234
7235                 <itemizedlist>
7236                         <listitem><para>SO_KEEPALIVE</para></listitem>
7237                         <listitem><para>SO_REUSEADDR</para></listitem>
7238                         <listitem><para>SO_BROADCAST</para></listitem>
7239                         <listitem><para>TCP_NODELAY</para></listitem>
7240                         <listitem><para>IPTOS_LOWDELAY</para></listitem>
7241                         <listitem><para>IPTOS_THROUGHPUT</para></listitem>
7242                         <listitem><para>SO_SNDBUF *</para></listitem>
7243                         <listitem><para>SO_RCVBUF *</para></listitem>
7244                         <listitem><para>SO_SNDLOWAT *</para></listitem>
7245                         <listitem><para>SO_RCVLOWAT *</para></listitem>
7246                 </itemizedlist>
7247
7248                 <para>Those marked with a <emphasis>'*'</emphasis> take an integer 
7249                 argument. The others can optionally take a 1 or 0 argument to enable 
7250                 or disable the option, by default they will be enabled if you 
7251                 don't specify 1 or 0.</para>
7252
7253                 <para>To specify an argument use the syntax SOME_OPTION = VALUE 
7254                 for example <command>SO_SNDBUF = 8192</command>. Note that you must 
7255                 not have any spaces before or after the = sign.</para>
7256
7257                 <para>If you are on a local network then a sensible option 
7258                 might be</para>
7259                 <para><command>socket options = IPTOS_LOWDELAY</command></para>
7260
7261                 <para>If you have a local network then you could try:</para>
7262                 <para><command>socket options = IPTOS_LOWDELAY TCP_NODELAY</command></para>
7263
7264                 <para>If you are on a wide area network then perhaps try 
7265                 setting IPTOS_THROUGHPUT. </para>
7266
7267                 <para>Note that several of the options may cause your Samba 
7268                 server to fail completely. Use these options with caution!</para>
7269
7270                 <para>Default: <command>socket options = TCP_NODELAY</command></para>
7271                 <para>Example: <command>socket options = IPTOS_LOWDELAY</command></para>
7272                 </listitem>
7273                 </varlistentry>
7274
7275
7276
7277
7278                 <varlistentry>
7279                 <term><anchor id="SOURCEENVIRONMENT">source environment (G)</term>
7280                 <listitem><para>This parameter causes Samba to set environment 
7281                 variables as per the content of the file named.</para>
7282
7283                 <para>If the value of this parameter starts with a "|" character 
7284                 then Samba will treat that value as a pipe command to open and 
7285                 will set the environment variables from the output of the pipe.</para>
7286
7287                 <para>The contents of the file or the output of the pipe should 
7288                 be formatted as the output of the standard Unix <command>env(1)
7289                 </command> command. This is of the form :</para>
7290                 <para>Example environment entry:</para>
7291                 <para><command>SAMBA_NETBIOS_NAME = myhostname</command></para>
7292
7293                 <para>Default: <emphasis>No default value</emphasis></para>
7294                 <para>Examples: <command>source environment = |/etc/smb.conf.sh
7295                 </command></para>
7296
7297                 <para>Example: <command>source environment = 
7298                 /usr/local/smb_env_vars</command></para>
7299                 </listitem>
7300                 </varlistentry>
7301 <varlistentry>
7302 <term><anchor id="SPNEGO">use spnego (G)</term>
7303 <listitem><para> This variable controls controls whether samba will try to use Simple and Protected NEGOciation (as specified by rfc2478) with WindowsXP and Windows2000sp2 clients to agree upon an authentication mechanism.  As of samba 3.0alpha it must be set to "no" for these clients to join a samba domain controller.  It can be set to "yes" to allow samba to participate in an AD domain controlled by a Windows2000 domain controller.</para>
7304 <para>Default:  <emphasis>use spnego = yes</emphasis></para>
7305 </listitem>
7306 </varlistentry>
7307
7308                 <varlistentry>
7309                 <term><anchor id="STATCACHE">stat cache (G)</term>
7310                 <listitem><para>This parameter determines if <ulink 
7311                 url="smbd.8.html">smbd(8)</ulink> will use a cache in order to 
7312                 speed up case insensitive name mappings. You should never need 
7313                 to change this parameter.</para>
7314
7315                 <para>Default: <command>stat cache = yes</command></para>
7316                 </listitem>
7317                 </varlistentry>
7318
7319                 <varlistentry>
7320                 <term><anchor id="STATCACHESIZE">stat cache size (G)</term>
7321                 <listitem><para>This parameter determines the number of 
7322                 entries in the <parameter>stat cache</parameter>.  You should 
7323                 never need to change this parameter.</para>
7324                 
7325                 <para>Default: <command>stat cache size = 50</command></para>
7326                 </listitem>
7327                 </varlistentry>
7328
7329
7330
7331                 <varlistentry>
7332                 <term><anchor id="STRICTALLOCATE">strict allocate (S)</term>
7333                 <listitem><para>This is a boolean that controls the handling of 
7334                 disk space allocation in the server. When this is set to <constant>yes</constant> 
7335                 the server will change from UNIX behaviour of not committing real
7336                 disk storage blocks when a file is extended to the Windows behaviour
7337                 of actually forcing the disk system to allocate real storage blocks
7338                 when a file is created or extended to be a given size. In UNIX
7339                 terminology this means that Samba will stop creating sparse files.
7340                 This can be slow on some systems.</para>
7341
7342                 <para>When strict allocate is <constant>no</constant> the server does sparse
7343                 disk block allocation when a file is extended.</para>
7344
7345                 <para>Setting this to <constant>yes</constant> can help Samba return
7346                 out of quota messages on systems that are restricting the disk quota
7347                 of users.</para>
7348
7349                 <para>Default: <command>strict allocate = no</command></para>
7350                 </listitem>
7351                 </varlistentry>
7352
7353
7354
7355                 <varlistentry>
7356                 <term><anchor id="STRICTLOCKING">strict locking (S)</term>
7357                 <listitem><para>This is a boolean that controls the handling of 
7358                 file locking in the server. When this is set to <constant>yes</constant> 
7359                 the server will check every read and write access for file locks, and 
7360                 deny access if locks exist. This can be slow on some systems.</para>
7361
7362                 <para>When strict locking is <constant>no</constant> the server does file 
7363                 lock checks only when the client explicitly asks for them.</para>
7364
7365                 <para>Well-behaved clients always ask for lock checks when it 
7366                 is important, so in the vast majority of cases <command>strict 
7367                 locking = no</command> is preferable.</para>
7368
7369                 <para>Default: <command>strict locking = no</command></para>
7370                 </listitem>
7371                 </varlistentry>
7372
7373
7374
7375                 <varlistentry>
7376                 <term><anchor id="STRICTSYNC">strict sync (S)</term>
7377                 <listitem><para>Many Windows applications (including the Windows 
7378                 98 explorer shell) seem to confuse flushing buffer contents to 
7379                 disk with doing a sync to disk. Under UNIX, a sync call forces 
7380                 the process to be suspended until the kernel has ensured that 
7381                 all outstanding data in kernel disk buffers has been safely stored 
7382                 onto stable storage. This is very slow and should only be done 
7383                 rarely. Setting this parameter to <constant>no</constant> (the 
7384                 default) means that <ulink url="smbd.8.html">smbd</ulink> ignores the Windows applications requests for
7385                 a sync call. There is only a possibility of losing data if the
7386                 operating system itself that Samba is running on crashes, so there is
7387                 little danger in this default setting. In addition, this fixes many
7388                 performance problems that people have reported with the new Windows98
7389                 explorer shell file copies.</para>
7390
7391                 <para>See also the <link linkend="SYNCALWAYS"><parameter>sync 
7392                 always></parameter></link> parameter.</para>
7393
7394                 <para>Default: <command>strict sync = no</command></para>
7395                 </listitem>
7396                 </varlistentry>
7397
7398
7399                 <varlistentry>
7400                 <term><anchor id="STRIPDOT">strip dot (G)</term>
7401                 <listitem><para>This is a boolean that controls whether to 
7402                 strip trailing dots off UNIX filenames. This helps with some 
7403                 CDROMs that have filenames ending in a single dot.</para>
7404
7405                 <para>Default: <command>strip dot = no</command></para>
7406                 </listitem>
7407                 </varlistentry>
7408
7409
7410
7411                 <varlistentry>
7412                 <term><anchor id="SYNCALWAYS">sync always (S)</term>
7413                 <listitem><para>This is a boolean parameter that controls 
7414                 whether writes will always be written to stable storage before 
7415                 the write call returns. If this is <constant>no</constant> then the server will be 
7416                 guided by the client's request in each write call (clients can 
7417                 set a bit indicating that a particular write should be synchronous). 
7418                 If this is <constant>yes</constant> then every write will be followed by a <command>fsync()
7419                 </command> call to ensure the data is written to disk. Note that 
7420                 the <parameter>strict sync</parameter> parameter must be set to
7421                 <constant>yes</constant> in order for this parameter to have 
7422                 any affect.</para>
7423                 
7424                 <para>See also the <link linkend="STRICTSYNC"><parameter>strict 
7425                 sync</parameter></link> parameter.</para>
7426
7427                 <para>Default: <command>sync always = no</command></para>
7428                 </listitem>
7429                 </varlistentry>
7430
7431
7432
7433                 <varlistentry>
7434                 <term><anchor id="SYSLOG">syslog (G)</term>
7435                 <listitem><para>This parameter maps how Samba debug messages 
7436                 are logged onto the system syslog logging levels. Samba debug 
7437                 level zero maps onto syslog <constant>LOG_ERR</constant>, debug 
7438                 level one maps onto <constant>LOG_WARNING</constant>, debug level 
7439                 two maps onto <constant>LOG_NOTICE</constant>, debug level three 
7440                 maps onto LOG_INFO. All higher levels are mapped to <constant>
7441                 LOG_DEBUG</constant>.</para>
7442
7443                 <para>This parameter sets the threshold for sending messages 
7444                 to syslog.  Only messages with debug level less than this value 
7445                 will be sent to syslog.</para>
7446
7447                 <para>Default: <command>syslog = 1</command></para>
7448                 </listitem>
7449                 </varlistentry>
7450
7451
7452
7453                 <varlistentry>
7454                 <term><anchor id="SYSLOGONLY">syslog only (G)</term>
7455                 <listitem><para>If this parameter is set then Samba debug 
7456                 messages are logged into the system syslog only, and not to 
7457                 the debug log files.</para>
7458
7459                 <para>Default: <command>syslog only = no</command></para>
7460                 </listitem>
7461                 </varlistentry>
7462
7463
7464
7465                 <varlistentry>
7466                 <term><anchor id="TEMPLATEHOMEDIR">template homedir (G)</term>
7467                 <listitem><para>When filling out the user information for a Windows NT 
7468                 user, the <ulink url="winbindd.8.html">winbindd(8)</ulink> daemon 
7469                 uses this parameter to fill in the home directory for that user.  
7470                 If the string <parameter>%D</parameter> is present it is substituted 
7471                 with the user's Windows NT domain name.  If the string <parameter>%U
7472                 </parameter> is present it is substituted with the user's Windows 
7473                 NT user name.</para>
7474
7475                 <para>Default: <command>template homedir = /home/%D/%U</command></para>
7476                 </listitem>
7477                 </varlistentry>
7478
7479
7480
7481                 <varlistentry>
7482                 <term><anchor id="TEMPLATESHELL">template shell (G)</term>
7483                 <listitem><para>When filling out the user information for a Windows NT 
7484                 user, the <ulink url="winbindd.8.html">winbindd(8)</ulink> daemon 
7485                 uses this parameter to fill in the login shell for that user.</para>
7486
7487                 <para>Default: <command>template shell = /bin/false</command></para>
7488                 </listitem>
7489                 </varlistentry>
7490
7491
7492
7493                 <varlistentry>
7494                 <term><anchor id="TIMEOFFSET">time offset (G)</term>
7495                 <listitem><para>This parameter is a setting in minutes to add 
7496                 to the normal GMT to local time conversion. This is useful if 
7497                 you are serving a lot of PCs that have incorrect daylight 
7498                 saving time handling.</para>
7499                 
7500                 <para>Default: <command>time offset = 0</command></para>
7501                 <para>Example: <command>time offset = 60</command></para>
7502                 </listitem>
7503                 </varlistentry>
7504
7505
7506
7507                 <varlistentry>
7508                 <term><anchor id="TIMESERVER">time server (G)</term>
7509                 <listitem><para>This parameter determines if <ulink url="nmbd.8.html">                  
7510                 nmbd(8)</ulink> advertises itself as a time server to Windows 
7511                 clients.</para>
7512
7513                 <para>Default: <command>time server = no</command></para>
7514                 </listitem>
7515                 </varlistentry>
7516
7517
7518                 <varlistentry>
7519                 <term><anchor id="TIMESTAMPLOGS">timestamp logs (G)</term>
7520                 <listitem><para>Synonym for <link linkend="DEBUGTIMESTAMP"><parameter>
7521                 debug timestamp</parameter></link>.</para>
7522                 </listitem>
7523                 </varlistentry>
7524
7525
7526
7527
7528
7529                 <varlistentry>
7530                 <term><anchor id="TOTALPRINTJOBS">total print jobs (G)</term>
7531                 <listitem><para>This parameter accepts an integer value which defines
7532                 a limit on the maximum number of print jobs that will be accepted 
7533                 system wide at any given time.  If a print job is submitted
7534                 by a client which will exceed this number, then <ulink url="smbd.8.html">smbd</ulink> will return an 
7535                 error indicating that no space is available on the server.  The 
7536                 default value of 0 means that no such limit exists.  This parameter
7537                 can be used to prevent a server from exceeding its capacity and is
7538                 designed as a printing throttle.  See also 
7539                 <link linkend="MAXPRINTJOBS"><parameter>max print jobs</parameter</link>.
7540                 </para>
7541                 
7542                 <para>Default: <command>total print jobs = 0</command></para>
7543                 <para>Example: <command>total print jobs = 5000</command></para>
7544                 </listitem>
7545                 </varlistentry>
7546
7547                 <varlistentry>
7548                 <term><anchor id="UNICODE">unicode (G)</term>
7549                 <listitem><para>Specifies whether Samba should try 
7550                 to use unicode on the wire by default. Note: This does NOT
7551                 mean that samba will assume that the unix machine uses unicode!
7552                 </para>
7553
7554                 <para>Default: <command>unicode = yes</command></para>
7555
7556                 </listitem>
7557                 </varlistentry>
7558
7559                 <varlistentry>
7560                 <term><anchor id="UNIXCHARSET">unix charset (G)</term>
7561                 <listitem><para>Specifies the charset the unix machine 
7562                 Samba runs on uses. Samba needs to know this in order to be able to 
7563                 convert text to the charsets other SMB clients use.
7564                 </para>
7565
7566                 <para>Default: <command>unix charset = ASCII</command></para>
7567                 <para>Example: <command>unix charset = UTF8</command></para>
7568                 </listitem>
7569                 </varlistentry>
7570
7571                 <varlistentry>
7572                 <term><anchor id="UNIXEXTENSIONS">unix extensions(G)</term>
7573                 <listitem><para>This boolean parameter controls whether Samba 
7574                 implments the CIFS UNIX extensions, as defined by HP. 
7575                 These extensions enable Samba to better serve UNIX CIFS clients
7576                 by supporting features such as symbolic links, hard links, etc...
7577                 These extensions require a similarly enabled client, and are of
7578                 no current use to Windows clients.</para>
7579
7580                 <para>Default: <command>unix extensions = no</command></para>
7581                 </listitem>
7582                 </varlistentry>
7583
7584
7585
7586
7587                 <varlistentry>
7588                 <term><anchor id="UNIXPASSWORDSYNC">unix password sync (G)</term>
7589                 <listitem><para>This boolean parameter controls whether Samba 
7590                 attempts to synchronize the UNIX password with the SMB password 
7591                 when the encrypted SMB password in the smbpasswd file is changed. 
7592                 If this is set to <constant>yes</constant> the program specified in the <parameter>passwd
7593                 program</parameter>parameter is called <emphasis>AS ROOT</emphasis> - 
7594                 to allow the new UNIX password to be set without access to the 
7595                 old UNIX password (as the SMB password change code has no 
7596                 access to the old password cleartext, only the new).</para>
7597
7598                 <para>See also <link linkend="PASSWDPROGRAM"><parameter>passwd 
7599                 program</parameter></link>, <link linkend="PASSWDCHAT"><parameter>
7600                 passwd chat</parameter></link>.</para>
7601
7602                 <para>Default: <command>unix password sync = no</command></para>
7603                 </listitem>
7604                 </varlistentry>
7605
7606
7607
7608                 <varlistentry>
7609                 <term><anchor id="UPDATEENCRYPTED">update encrypted (G)</term>
7610                 <listitem><para>This boolean parameter allows a user logging 
7611                 on with a plaintext password to have their encrypted (hashed) 
7612                 password in the smbpasswd file to be updated automatically as 
7613                 they log on. This option allows a site to migrate from plaintext 
7614                 password authentication (users authenticate with plaintext 
7615                 password over the wire, and are checked against a UNIX account 
7616                 database) to encrypted password authentication (the SMB 
7617                 challenge/response authentication mechanism) without forcing
7618                 all users to re-enter their passwords via smbpasswd at the time the
7619                 change is made. This is a convenience option to allow the change over
7620                 to encrypted passwords to be made over a longer period. Once all users
7621                 have encrypted representations of their passwords in the smbpasswd
7622                 file this parameter should be set to <constant>no</constant>.</para>
7623
7624                 <para>In order for this parameter to work correctly the <link
7625                 linkend="ENCRYPTPASSWORDS"><parameter>encrypt passwords</parameter>
7626                 </link> parameter must be set to <constant>no</constant> when
7627                 this parameter is set to <constant>yes</constant>.</para>
7628
7629                 <para>Note that even when this parameter is set a user 
7630                 authenticating to <command>smbd</command> must still enter a valid 
7631                 password in order to connect correctly, and to update their hashed 
7632                 (smbpasswd) passwords.</para>
7633
7634                 <para>Default: <command>update encrypted = no</command></para>
7635                 </listitem>
7636                 </varlistentry>
7637
7638
7639                 <varlistentry>
7640                 <term><anchor id="USECLIENTDRIVER">use client driver (S)</term>
7641                 <listitem><para>This parameter applies only to Windows NT/2000
7642                 clients.  It has no affect on Windows 95/98/ME clients.  When 
7643                 serving a printer to Windows NT/2000 clients without first installing
7644                 a valid printer driver on the Samba host, the client will be required
7645                 to install a local printer driver.  From this point on, the client
7646                 will treat the print as a local printer and not a network printer 
7647                 connection.  This is much the same behavior that will occur
7648                 when <command>disable spoolss = yes</command>.  </para>
7649
7650                 <para>The differentiating 
7651                 factor is that under normal circumstances, the NT/2000 client will 
7652                 attempt to open the network printer using MS-RPC.  The problem is that
7653                 because the client considers the printer to be local, it will attempt
7654                 to issue the OpenPrinterEx() call requesting access rights associated 
7655                 with the logged on user. If the user possesses local administator rights
7656                 but not root privilegde on the Samba host (often the case), the OpenPrinterEx()
7657                 call will fail.  The result is that the client will now display an "Access
7658                 Denied; Unable to connect" message in the printer queue window (even though
7659                 jobs may successfully be printed).  </para>
7660
7661                 <para>If this parameter is enabled for a printer, then any attempt
7662                 to open the printer with the PRINTER_ACCESS_ADMINISTER right is mapped
7663                 to PRINTER_ACCESS_USE instead.  Thus allowing the OpenPrinterEx()
7664                 call to succeed.  <emphasis>This parameter MUST not be able enabled
7665                 on a print share which has valid print driver installed on the Samba 
7666                 server.</emphasis></para>
7667
7668                 <para>See also <link linkend="DISABLESPOOLSS">disable spoolss</link>
7669                 </para>
7670
7671                 <para>Default: <command>use client driver = no</command></para>
7672                 </listitem>
7673                 </varlistentry>
7674         
7675
7676
7677                 <varlistentry>
7678                 <term><anchor id="USEMMAP">use mmap (G)</term>
7679                 <listitem><para>This global parameter determines if the tdb internals of Samba can
7680                 depend on mmap working correctly on the running system. Samba requires a coherent
7681                 mmap/read-write system memory cache. Currently only HPUX does not have such a
7682                 coherent cache, and so this parameter is set to <constant>no</constant> by
7683                 default on HPUX. On all other systems this parameter should be left alone. This
7684                 parameter is provided to help the Samba developers track down problems with
7685                 the tdb internal code.
7686                 </para>
7687
7688                 <para>Default: <command>use mmap = yes</command></para>
7689                 </listitem>
7690                 </varlistentry>
7691
7692
7693
7694
7695                 <varlistentry>
7696                 <term><anchor id="USERHOSTS">use rhosts (G)</term>
7697                 <listitem><para>If this global parameter is <constant>yes</constant>, it specifies 
7698                 that the UNIX user's <filename>.rhosts</filename> file in their home directory 
7699                 will be read to find the names of hosts and users who will be allowed 
7700                 access without specifying a password.</para>
7701
7702                 <para><emphasis>NOTE:</emphasis> The use of <parameter>use rhosts
7703                 </parameter> can be a major security hole. This is because you are 
7704                 trusting the PC to supply the correct username. It is very easy to 
7705                 get a PC to supply a false username. I recommend that the <parameter>
7706                 use rhosts</parameter> option be only used if you really know what 
7707                 you are doing.</para>
7708
7709                 <para>Default: <command>use rhosts = no</command></para>
7710                 </listitem>
7711                 </varlistentry>
7712
7713
7714
7715                 <varlistentry>
7716                 <term><anchor id="USER">user (S)</term>
7717                 <listitem><para>Synonym for <link linkend="USERNAME"><parameter>
7718                 username</parameter></link>.</para>
7719                 </listitem>
7720                 </varlistentry>
7721
7722
7723
7724                 <varlistentry>
7725                 <term><anchor id="USERS">users (S)</term>
7726                 <listitem><para>Synonym for <link linkend="USERNAME"><parameter>
7727                 username</parameter></link>.</para>
7728                 </listitem>
7729                 </varlistentry>
7730
7731
7732                 <varlistentry>
7733                 <term><anchor id="USERNAME">username (S)</term>
7734                 <listitem><para>Multiple users may be specified in a comma-delimited 
7735                 list, in which case the supplied password will be tested against 
7736                 each username in turn (left to right).</para>
7737
7738                 <para>The <parameter>username</parameter> line is needed only when 
7739                 the PC is unable to supply its own username. This is the case 
7740                 for the COREPLUS protocol or where your users have different WfWg 
7741                 usernames to UNIX usernames. In both these cases you may also be 
7742                 better using the \\server\share%user syntax instead.</para>
7743
7744                 <para>The <parameter>username</parameter> line is not a great 
7745                 solution in many cases as it means Samba will try to validate 
7746                 the supplied password against each of the usernames in the 
7747                 <parameter>username</parameter> line in turn. This is slow and 
7748                 a bad idea for lots of users in case of duplicate passwords. 
7749                 You may get timeouts or security breaches using this parameter 
7750                 unwisely.</para>
7751
7752                 <para>Samba relies on the underlying UNIX security. This 
7753                 parameter does not restrict who can login, it just offers hints 
7754                 to the Samba server as to what usernames might correspond to the 
7755                 supplied password. Users can login as whoever they please and 
7756                 they will be able to do no more damage than if they started a 
7757                 telnet session. The daemon runs as the user that they log in as, 
7758                 so they cannot do anything that user cannot do.</para>
7759
7760                 <para>To restrict a service to a particular set of users you 
7761                 can use the <link linkend="VALIDUSERS"><parameter>valid users
7762                 </parameter></link> parameter.</para>
7763
7764                 <para>If any of the usernames begin with a '@' then the name 
7765                 will be looked up first in the NIS netgroups list (if Samba 
7766                 is compiled with netgroup support), followed by a lookup in 
7767                 the UNIX groups database and will expand to a list of all users 
7768                 in the group of that name.</para>
7769                 
7770                 <para>If any of the usernames begin with a '+' then the name 
7771                 will be looked up only in the UNIX groups database and will 
7772                 expand to a list of all users in the group of that name.</para>
7773
7774                 <para>If any of the usernames begin with a '&'then the name 
7775                 will be looked up only in the NIS netgroups database (if Samba 
7776                 is compiled with netgroup support) and will expand to a list 
7777                 of all users in the netgroup group of that name.</para>
7778
7779                 <para>Note that searching though a groups database can take 
7780                 quite some time, and some clients may time out during the 
7781                 search.</para>
7782
7783                 <para>See the section <link linkend="VALIDATIONSECT">NOTE ABOUT 
7784                 USERNAME/PASSWORD VALIDATION</link> for more information on how 
7785                 this parameter determines access to the services.</para>
7786
7787                 <para>Default: <command>The guest account if a guest service, 
7788                 else &lt;empty string&gt;.</command></para>
7789
7790                 <para>Examples:<command>username = fred, mary, jack, jane, 
7791                 @users, @pcgroup</command></para>
7792                 </listitem>
7793                 </varlistentry>
7794
7795
7796
7797                 <varlistentry>
7798                 <term><anchor id="USERNAMELEVEL">username level (G)</term>
7799                 <listitem><para>This option helps Samba to try and 'guess' at 
7800                 the real UNIX username, as many DOS clients send an all-uppercase 
7801                 username. By default Samba tries all lowercase, followed by the 
7802                 username with the first letter capitalized, and fails if the 
7803                 username is not found on the UNIX machine.</para>
7804
7805                 <para>If this parameter is set to non-zero the behavior changes. 
7806                 This parameter is a number that specifies the number of uppercase
7807                 combinations to try while trying to determine the UNIX user name. The
7808                 higher the number the more combinations will be tried, but the slower
7809                 the discovery of usernames will be. Use this parameter when you have
7810                 strange usernames on your UNIX machine, such as <constant>AstrangeUser
7811                 </constant>.</para>
7812
7813                 <para>Default: <command>username level = 0</command></para>
7814                 <para>Example: <command>username level = 5</command></para>
7815                 </listitem>
7816                 </varlistentry>
7817
7818
7819
7820                 <varlistentry>
7821                 <term><anchor id="USERNAMEMAP">username map (G)</term>
7822                 <listitem><para>This option allows you to specify a file containing 
7823                 a mapping of usernames from the clients to the server. This can be 
7824                 used for several purposes. The most common is to map usernames 
7825                 that users use on DOS or Windows machines to those that the UNIX 
7826                 box uses. The other is to map multiple users to a single username 
7827                 so that they can more easily share files.</para>
7828
7829                 <para>The map file is parsed line by line. Each line should 
7830                 contain a single UNIX username on the left then a '=' followed 
7831                 by a list of usernames on the right. The list of usernames on the 
7832                 right may contain names of the form @group in which case they 
7833                 will match any UNIX username in that group. The special client 
7834                 name '*' is a wildcard and matches any name. Each line of the 
7835                 map file may be up to 1023 characters long.</para>
7836
7837                 <para>The file is processed on each line by taking the 
7838                 supplied username and comparing it with each username on the right 
7839                 hand side of the '=' signs. If the supplied name matches any of 
7840                 the names on the right hand side then it is replaced with the name 
7841                 on the left. Processing then continues with the next line.</para>
7842
7843                 <para>If any line begins with a '#' or a ';' then it is 
7844                 ignored</para>
7845
7846                 <para>If any line begins with an '!' then the processing
7847                 will stop after that line if a mapping was done by the line.
7848                 Otherwise mapping continues with every line being processed.
7849                 Using '!' is most useful when you have a wildcard mapping line
7850                 later in the file.</para>
7851
7852                 <para>For example to map from the name <constant>admin</constant>
7853                 or <constant>administrator</constant> to the UNIX name <constant>
7854                 root</constant> you would use:</para>
7855
7856                 <para><command>root = admin administrator</command></para>
7857
7858                 <para>Or to map anyone in the UNIX group <constant>system</constant>
7859                 to the UNIX name <constant>sys</constant> you would use:</para>
7860
7861                 <para><command>sys = @system</command></para>
7862
7863                 <para>You can have as many mappings as you like in a username
7864                 map file.</para>
7865
7866
7867                 <para>If your system supports the NIS NETGROUP option then
7868                 the netgroup database is checked before the <filename>/etc/group
7869                 </filename> database for matching groups.</para>
7870
7871                 <para>You can map Windows usernames that have spaces in them
7872                  by using double quotes around the name. For example:</para>
7873
7874                 <para><command>tridge = "Andrew Tridgell"</command></para>
7875
7876                 <para>would map the windows username "Andrew Tridgell" to the
7877                 unix username "tridge".</para>
7878
7879                 <para>The following example would map mary and fred to the
7880                 unix user sys, and map the rest to guest. Note the use of the
7881                 '!' to tell Samba to stop processing if it gets a match on
7882                 that line.</para>
7883
7884                 <para><programlisting>
7885                 !sys = mary fred
7886                 guest = *
7887                 </programlisting></para>
7888
7889                 <para>Note that the remapping is applied to all occurrences
7890                 of usernames. Thus if you connect to \\server\fred and <constant>
7891                 fred</constant> is remapped to <constant>mary</constant> then you
7892                 will actually be connecting to \\server\mary and will need to
7893                 supply a password suitable for <constant>mary</constant> not
7894                 <constant>fred</constant>. The only exception to this is the
7895                 username passed to the <link linkend="PASSWORDSERVER"><parameter>
7896                 password server</parameter></link> (if you have one). The password
7897                 server will receive whatever username the client supplies without
7898                 modification.</para>
7899
7900                 <para>Also note that no reverse mapping is done. The main effect
7901                 this has is with printing. Users who have been mapped may have
7902                 trouble deleting print jobs as PrintManager under WfWg will think
7903                 they don't own the print job.</para>
7904
7905                 <para>Default: <emphasis>no username map</emphasis></para>
7906                 <para>Example: <command>username map = /usr/local/samba/lib/users.map
7907                 </command></para>
7908                 </listitem>
7909                 </varlistentry>
7910
7911                 
7912                 <varlistentry>
7913                 <term><anchor id="USESENDFILE">use sendfile (S)</term>
7914                 <listitem><para>If this parameter is <constant>yes</constant>, and Samba
7915                 was built with the --with-sendfile-support option, and the underlying operating
7916                 system supports sendfile system call, then some SMB read calls (mainly ReadAndX
7917                 and ReadRaw) will use the more efficient sendfile system call for files that
7918                 are exclusively oplocked. This may make more efficient use of the system CPU's
7919                 and cause Samba to be faster. This is off by default as it's effects are unknown
7920                 as yet.
7921                 </para>
7922
7923                 <para>Default: <command>use sendfile = no</command></para>
7924                 </listitem>
7925                 </varlistentry>
7926
7927
7928
7929                 <varlistentry>
7930                 <term><anchor id="UTMP">utmp (G)</term>
7931                 <listitem><para>This boolean parameter is only available if
7932                 Samba has been configured and compiled  with the option <command>
7933                 --with-utmp</command>. If set to <constant>yes</constant> then Samba will attempt
7934                 to add utmp or utmpx records (depending on the UNIX system) whenever a
7935                 connection is made to a Samba server. Sites may use this to record the
7936                 user connecting to a Samba share.</para>
7937
7938                 <para>Due to the requirements of the utmp record, we
7939                 are required to create a unique identifier for the
7940                 incoming user.  Enabling this option creates an n^2
7941                 algorithm to find this number.  This may impede
7942                 performance on large installations. </para>
7943
7944                 <para>See also the <link linkend="UTMPDIRECTORY"><parameter>
7945                 utmp directory</parameter></link> parameter.</para>
7946
7947                 <para>Default: <command>utmp = no</command></para>
7948                 </listitem>
7949                 </varlistentry>
7950
7951                 <varlistentry>
7952                 <term><anchor id="UTMPDIRECTORY">utmp directory(G)</term>
7953                 <listitem><para>This parameter is only available if Samba has 
7954                 been configured and compiled with the option <command>
7955                 --with-utmp</command>. It specifies a directory pathname that is
7956                 used to store the utmp or utmpx files (depending on the UNIX system) that
7957                 record user connections to a Samba server. See also the <link linkend="UTMP">
7958                 <parameter>utmp</parameter></link> parameter. By default this is 
7959                 not set, meaning the system will use whatever utmp file the 
7960                 native system is set to use (usually 
7961                 <filename>/var/run/utmp</filename> on Linux).</para>
7962
7963                 <para>Default: <emphasis>no utmp directory</emphasis></para>
7964                 <para>Example: <command>utmp directory = /var/run/utmp</command></para>
7965                 </listitem>
7966                 </varlistentry>
7967
7968                 <varlistentry>
7969                 <term><anchor id="WTMPDIRECTORY">wtmp directory(G)</term>
7970                 <listitem><para>This parameter is only available if Samba has 
7971                 been configured and compiled with the option <command>
7972                 --with-utmp</command>. It specifies a directory pathname that is
7973                 used to store the wtmp or wtmpx files (depending on the UNIX system) that
7974                 record user connections to a Samba server. The difference with
7975                 the utmp directory is the fact that user info is kept after a user 
7976                 has logged out.
7977                 
7978                 See also the <link linkend="UTMP">
7979                 <parameter>utmp</parameter></link> parameter. By default this is 
7980                 not set, meaning the system will use whatever utmp file the 
7981                 native system is set to use (usually 
7982                 <filename>/var/run/wtmp</filename> on Linux).</para>
7983
7984                 <para>Default: <emphasis>no wtmp directory</emphasis></para>
7985                 <para>Example: <command>wtmp directory = /var/log/wtmp</command></para>
7986                 </listitem>
7987                 </varlistentry>
7988
7989
7990                 <varlistentry>
7991                 <term><anchor id="VALIDUSERS">valid users (S)</term>
7992                 <listitem><para>This is a list of users that should be allowed 
7993                 to login to this service. Names starting with '@', '+' and  '&'
7994                 are interpreted using the same rules as described in the 
7995                 <parameter>invalid users</parameter> parameter.</para>
7996
7997                 <para>If this is empty (the default) then any user can login. 
7998                 If a username is in both this list and the <parameter>invalid 
7999                 users</parameter> list then access is denied for that user.</para>
8000
8001                 <para>The current servicename is substituted for <parameter>%S
8002                 </parameter>. This is useful in the [homes] section.</para>
8003
8004                 <para>See also <link linkend="INVALIDUSERS"><parameter>invalid users
8005                 </parameter></link></para>
8006
8007                 <para>Default: <emphasis>No valid users list (anyone can login)
8008                 </emphasis></para>
8009
8010                 <para>Example: <command>valid users = greg, @pcusers</command></para>
8011                 </listitem>
8012                 </varlistentry>
8013
8014
8015
8016
8017                 <varlistentry>
8018                 <term><anchor id="VETOFILES">veto files(S)</term>
8019                 <listitem><para>This is a list of files and directories that 
8020                 are neither visible nor accessible.  Each entry in the list must 
8021                 be separated by a '/', which allows spaces to be included 
8022                 in the entry. '*' and '?' can be used to specify multiple files 
8023                 or directories as in DOS wildcards.</para>
8024
8025                 <para>Each entry must be a unix path, not a DOS path and 
8026                 must <emphasis>not</emphasis> include the  unix directory 
8027                 separator '/'.</para>
8028
8029                 <para>Note that the <parameter>case sensitive</parameter> option 
8030                 is applicable in vetoing files.</para>
8031                 
8032                 <para>One feature of the veto files parameter that it
8033                 is important to be aware of is Samba's behaviour when
8034                 trying to delete a directory. If a directory that is
8035                 to be deleted contains nothing but veto files this
8036                 deletion will <emphasis>fail</emphasis> unless you also set
8037                 the <parameter>delete veto files</parameter> parameter to
8038                 <parameter>yes</parameter>.</para>
8039
8040                 <para>Setting this parameter will affect the performance 
8041                 of Samba, as it will be forced to check all files and directories 
8042                 for a match as they are scanned.</para>
8043
8044                 <para>See also <link linkend="HIDEFILES"><parameter>hide files
8045                 </parameter></link> and <link linkend="CASESENSITIVE"><parameter>
8046                 case sensitive</parameter></link>.</para>
8047
8048                 <para>Default: <emphasis>No files or directories are vetoed.
8049                 </emphasis></para>
8050
8051 <para>Examples:<programlisting>
8052 ; Veto any files containing the word Security, 
8053 ; any ending in .tmp, and any directory containing the
8054 ; word root.
8055 veto files = /*Security*/*.tmp/*root*/
8056
8057 ; Veto the Apple specific files that a NetAtalk server
8058 ; creates.
8059 veto files = /.AppleDouble/.bin/.AppleDesktop/Network Trash Folder/
8060 </programlisting></para>
8061                 </listitem>
8062                 </varlistentry>
8063
8064
8065                 <varlistentry>
8066                 <term><anchor id="VETOOPLOCKFILES">veto oplock files (S)</term>
8067                 <listitem><para>This parameter is only valid when the <link
8068                 linkend="OPLOCKS"><parameter>oplocks</parameter></link>
8069                 parameter is turned on for a share. It allows the Samba administrator
8070                 to selectively turn off the granting of oplocks on selected files that
8071                 match a wildcarded list, similar to the wildcarded list used in the
8072                 <link linkend="VETOFILES"><parameter>veto files</parameter></link> 
8073                 parameter.</para>
8074
8075                 <para>Default: <emphasis>No files are vetoed for oplock 
8076                 grants</emphasis></para>
8077
8078                 <para>You might want to do this on files that you know will 
8079                 be heavily contended for by clients. A good example of this 
8080                 is in the NetBench SMB benchmark program, which causes heavy 
8081                 client contention for files ending in <filename>.SEM</filename>. 
8082                 To cause Samba not to grant oplocks on these files you would use 
8083                 the line (either in the [global] section or in the section for 
8084                 the particular NetBench share :</para>
8085
8086                 <para>Example: <command>veto oplock files = /*.SEM/
8087                 </command></para>
8088                 </listitem>
8089                 </varlistentry>
8090
8091                 <varlistentry>
8092                 <term><anchor id="VFSPATH">vfs path (S)</term>
8093                 <listitem><para>This parameter specifies the directory
8094                 to look in for vfs modules. The name of every <command>vfs object
8095                 </command> will be prepended by this directory
8096                 </para>
8097
8098                 <para>Default: <command>vfs path = </command></para>
8099                 <para>Example: <command>vfs path = /usr/lib/samba/vfs</command></para>
8100
8101                 </listitem>
8102                 </varlistentry>
8103
8104                 <varlistentry>
8105                 <term><anchor id="VFSOBJECT">vfs object (S)</term>
8106                 <listitem><para>This parameter specifies a shared object files that 
8107                 are used for Samba VFS I/O operations.  By default, normal 
8108                 disk I/O operations are used but these can be overloaded 
8109                 with one or more VFS objects. </para>
8110                 
8111                 <para>Default : <emphasis>no value</emphasis></para>
8112                 </listitem>
8113                 </varlistentry>
8114
8115
8116
8117
8118                 <varlistentry>
8119                 <term><anchor id="VFSOPTIONS">vfs options (S)</term>
8120                 <listitem><para>This parameter allows parameters to be passed 
8121                 to the vfs layer at initialization time. 
8122                 See also <link linkend="VFSOBJECT"><parameter>
8123                 vfs object</parameter></link>.</para>
8124                 
8125                 <para>Default : <emphasis>no value</emphasis></para>
8126                 </listitem>
8127                 </varlistentry>
8128
8129
8130
8131                 <varlistentry>
8132                 <term><anchor id="VOLUME">volume (S)</term>
8133                 <listitem><para> This allows you to override the volume label 
8134                 returned for a share. Useful for CDROMs with installation programs 
8135                 that insist on a particular volume label.</para>
8136
8137                 <para>Default: <emphasis>the name of the share</emphasis></para>
8138                 </listitem>
8139                 </varlistentry>
8140
8141
8142
8143                 <varlistentry>
8144                 <term><anchor id="WIDELINKS">wide links (S)</term>
8145                 <listitem><para>This parameter controls whether or not links 
8146                 in the UNIX file system may be followed by the server. Links 
8147                 that point to areas within the directory tree exported by the 
8148                 server are always allowed; this parameter controls access only 
8149                 to areas that are outside the directory tree being exported.</para>
8150
8151                 <para>Note that setting this parameter can have a negative 
8152                 effect on your server performance due to the extra system calls 
8153                 that Samba has to  do in order to perform the link checks.</para>
8154
8155                 <para>Default: <command>wide links = yes</command></para>
8156                 </listitem>
8157                 </varlistentry>
8158
8159
8160
8161
8162                 <varlistentry>
8163                 <term><anchor id="WINBINDCACHETIME">winbind cache time (G)</term>
8164                 <listitem><para>This parameter specifies the number of seconds the
8165                 <ulink url="winbindd.8.html">winbindd(8)</ulink> daemon will cache 
8166                 user and group information before querying a Windows NT server 
8167                 again.</para>
8168
8169                 <para>Default: <command>winbind cache type = 15</command></para>
8170                 </listitem>
8171                 </varlistentry>
8172
8173
8174                 <varlistentry>
8175                 <term><anchor id="WINBINDENUMUSERS">winbind enum users (G)</term> 
8176                 <listitem><para>On large installations using
8177                 <ulink url="winbindd.8.html">winbindd(8)</ulink> it may be
8178                 necessary to suppress the enumeration of users through the
8179                 <command> setpwent()</command>,
8180                 <command>getpwent()</command> and
8181                 <command>endpwent()</command> group of system calls.  If
8182                 the <parameter>winbind enum users</parameter> parameter is
8183                 <constant>no</constant>, calls to the <command>getpwent</command> system call
8184                 will not return any data. </para>
8185
8186                 <para><emphasis>Warning:</emphasis> Turning off user
8187                 enumeration may cause some programs to behave oddly.  For
8188                 example, the finger program relies on having access to the
8189                 full user list when searching for matching
8190                 usernames. </para>
8191
8192                 <para>Default: <command>winbind enum users = yes </command></para>
8193                 </listitem>
8194                 </varlistentry>
8195                 
8196                 <varlistentry>
8197                 <term><anchor id="WINBINDENUMGROUPS">winbind enum groups (G)</term> 
8198                 <listitem><para>On large installations using
8199                 <ulink url="winbindd.8.html">winbindd(8)</ulink> it may be
8200                 necessary to suppress the enumeration of groups through the
8201                 <command> setgrent()</command>,
8202                 <command>getgrent()</command> and
8203                 <command>endgrent()</command> group of system calls.  If
8204                 the <parameter>winbind enum groups</parameter> parameter is
8205                 <constant>no</constant>, calls to the <command>getgrent()</command> system
8206                 call will not return any data. </para>
8207
8208                 <para><emphasis>Warning:</emphasis> Turning off group
8209                 enumeration may cause some programs to behave oddly.
8210                 </para>
8211
8212                 <para>Default: <command>winbind enum groups = yes </command>
8213                 </para></listitem>
8214                 </varlistentry>
8215
8216         
8217                 <varlistentry>
8218                 <term><anchor id="WINBINDGID">winbind gid (G)</term>
8219                 <listitem><para>The winbind gid parameter specifies the range of group 
8220                 ids that are allocated by the <ulink url="winbindd.8.html">
8221                 winbindd(8)</ulink> daemon.  This range of group ids should have no 
8222                 existing local or NIS groups within it as strange conflicts can 
8223                 occur otherwise.</para>
8224
8225                 <para>Default: <command>winbind gid = &lt;empty string&gt;
8226                 </command></para>
8227
8228                 <para>Example: <command>winbind gid = 10000-20000</command></para>
8229                 </listitem>
8230                 </varlistentry>
8231
8232
8233                 <varlistentry>
8234                 <term><anchor id="WINBINDSEPARATOR">winbind separator (G)</term>
8235                 <listitem><para>This parameter allows an admin to define the character 
8236                 used when listing a username of the form of <replaceable>DOMAIN
8237                 </replaceable>\<replaceable>user</replaceable>.  This parameter 
8238                 is only applicable when using the <filename>pam_winbind.so</filename>
8239                 and <filename>nss_winbind.so</filename> modules for UNIX services.
8240                 </para>
8241
8242                 <para>Please note that setting this parameter to + causes problems
8243                 with group membership at least on glibc systems, as the character +
8244                 is used as a special character for NIS in /etc/group.</para>
8245
8246                 <para>Default: <command>winbind separator = '\'</command></para>
8247                 <para>Example: <command>winbind separator = +</command></para>
8248                 </listitem>
8249                 </varlistentry>
8250
8251
8252
8253
8254                 <varlistentry>
8255                 <term><anchor id="WINBINDUID">winbind uid (G)</term>
8256                 <listitem><para>The winbind gid parameter specifies the range of group 
8257                 ids that are allocated by the <ulink url="winbindd.8.html">
8258                 winbindd(8)</ulink> daemon.  This range of ids should have no 
8259                 existing local or NIS users within it as strange conflicts can 
8260                 occur otherwise.</para>
8261
8262                 <para>Default: <command>winbind uid = &lt;empty string&gt;
8263                 </command></para>
8264                 
8265                 <para>Example: <command>winbind uid = 10000-20000</command></para>
8266                 </listitem>
8267                 </varlistentry>
8268
8269
8270                 <varlistentry>
8271                 <term>winbind use default domain</term>
8272                 
8273                 <term><anchor id="WINBINDUSEDEFAULTDOMAIN">winbind use default domain (G)</term>
8274                 <listitem><para>This parameter specifies whether the <ulink url="winbindd.8.html">
8275                 winbindd(8)</ulink>
8276                 daemon should operate on users without domain component in their username.  
8277                 Users without a domain component are treated as is part of the winbindd server's 
8278                 own domain.  While this does not benifit Windows users, it makes SSH, FTP and e-mail 
8279                 function in a way much closer to the way they would in a native unix system.</para>
8280                 
8281                 <para>Default: <command>winbind use default domain = &lt;no&gt; 
8282                 </command></para>
8283                 <para>Example: <command>winbind use default domain = yes</command></para>
8284                 </listitem>
8285                 </varlistentry>
8286
8287
8288                 <varlistentry>
8289                 <term><anchor id="WINSHOOK">wins hook (G)</term>
8290                 <listitem><para>When Samba is running as a WINS server this 
8291                 allows you to call an external program for all changes to the 
8292                 WINS database. The primary use for this option is to allow the 
8293                 dynamic update of external name resolution databases such as 
8294                 dynamic DNS.</para>
8295
8296                 <para>The wins hook parameter specifies the name of a script 
8297                 or executable that will be called as follows:</para>
8298
8299                 <para><command>wins_hook operation name nametype ttl IP_list
8300                 </command></para>
8301
8302                 <itemizedlist>
8303                         <listitem><para>The first argument is the operation and is one 
8304                         of "add", "delete", or "refresh". In most cases the operation can 
8305                         be ignored as the rest of the parameters provide sufficient 
8306                         information. Note that "refresh" may sometimes be called when the 
8307                         name has not previously been added, in that case it should be treated 
8308                         as an add.</para></listitem>
8309
8310                         <listitem><para>The second argument is the NetBIOS name. If the 
8311                         name is not a legal name then the wins hook is not called. 
8312                         Legal names contain only  letters, digits, hyphens, underscores 
8313                         and periods.</para></listitem>
8314
8315                         <listitem><para>The third argument is the NetBIOS name 
8316                         type as a 2 digit hexadecimal number. </para></listitem>
8317
8318                         <listitem><para>The fourth argument is the TTL (time to live) 
8319                         for the name in seconds.</para></listitem>
8320                         
8321                         <listitem><para>The fifth and subsequent arguments are the IP 
8322                         addresses currently registered for that name. If this list is 
8323                         empty then the name should be deleted.</para></listitem>
8324                 </itemizedlist>
8325
8326                 <para>An example script that calls the BIND dynamic DNS update 
8327                 program <command>nsupdate</command> is provided in the examples 
8328                 directory of the Samba source code. </para>
8329                 </listitem>
8330                 </varlistentry>
8331
8332
8333
8334
8335
8336                 <varlistentry>
8337                 <term><anchor id="WINSPROXY">wins proxy (G)</term>
8338                 <listitem><para>This is a boolean that controls if <ulink 
8339                 url="nmbd.8.html">nmbd(8)</ulink> will respond to broadcast name 
8340                 queries on behalf of  other hosts. You may need to set this 
8341                 to <constant>yes</constant> for some older clients.</para>
8342
8343                 <para>Default: <command>wins proxy = no</command></para>
8344                 </listitem>
8345                 </varlistentry>
8346
8347
8348
8349
8350                 <varlistentry>
8351                 <term><anchor id="WINSSERVER">wins server (G)</term>
8352                 <listitem><para>This specifies the IP address (or DNS name: IP 
8353                 address for preference) of the WINS server that <ulink url="nmbd.8.html">
8354                 nmbd(8)</ulink> should register with. If you have a WINS server on 
8355                 your network then you should set this to the WINS server's IP.</para>
8356
8357                 <para>You should point this at your WINS server if you have a
8358                 multi-subnetted network.</para>
8359
8360                 <para><emphasis>NOTE</emphasis>. You need to set up Samba to point 
8361                 to a WINS server if you have multiple subnets and wish cross-subnet 
8362                 browsing to work correctly.</para>
8363
8364                 <para>See the documentation file <filename>BROWSING.txt</filename> 
8365                 in the docs/ directory of your Samba source distribution.</para>
8366
8367                 <para>Default: <emphasis>not enabled</emphasis></para>
8368                 <para>Example: <command>wins server = 192.9.200.1</command></para>
8369                 </listitem>
8370                 </varlistentry>
8371
8372
8373
8374                 <varlistentry>
8375                 <term><anchor id="WINSSUPPORT">wins support (G)</term>
8376                 <listitem><para>This boolean controls if the <ulink url="nmbd.8.html">          
8377                 nmbd(8)</ulink> process in Samba will act as a WINS server. You should 
8378                 not set this to <constant>yes</constant> unless you have a multi-subnetted network and 
8379                 you wish a particular <command>nmbd</command> to be your WINS server. 
8380                 Note that you should <emphasis>NEVER</emphasis> set this to <constant>yes</constant>
8381                 on more than one machine in your network.</para>
8382
8383                 <para>Default: <command>wins support = no</command></para>
8384                 </listitem>
8385                 </varlistentry>
8386
8387
8388
8389                 <varlistentry>
8390                 <term><anchor id="WORKGROUP">workgroup (G)</term>
8391                 <listitem><para>This controls what workgroup your server will 
8392                 appear to be in when queried by clients. Note that this parameter 
8393                 also controls the Domain name used with the <link 
8394                 linkend="SECURITYEQUALSDOMAIN"><command>security = domain</command></link>
8395                 setting.</para>
8396
8397                 <para>Default: <emphasis>set at compile time to WORKGROUP</emphasis></para>
8398                 <para>Example: <command>workgroup = MYGROUP</command></para>
8399                 </listitem>
8400                 </varlistentry>
8401
8402
8403
8404
8405                 <varlistentry>
8406                 <term><anchor id="WRITABLE">writable (S)</term>
8407                 <listitem><para>Synonym for <link linkend="WRITEABLE"><parameter>
8408                 writeable</parameter></link> for people who can't spell :-).</para>
8409                 </listitem>
8410                 </varlistentry>
8411
8412
8413
8414                 <varlistentry>
8415                 <term><anchor id="WRITECACHESIZE">write cache size (S)</term>
8416                 <listitem><para>If this integer parameter is set to non-zero value,
8417                 Samba will create an in-memory cache for each oplocked file 
8418                 (it does <emphasis>not</emphasis> do this for 
8419                 non-oplocked files). All writes that the client does not request 
8420                 to be flushed directly to disk will be stored in this cache if possible. 
8421                 The cache is flushed onto disk when a write comes in whose offset 
8422                 would not fit into the cache or when the file is closed by the client. 
8423                 Reads for the file are also served from this cache if the data is stored 
8424                 within it.</para>
8425
8426                 <para>This cache allows Samba to batch client writes into a more 
8427                 efficient write size for RAID disks (i.e. writes may be tuned to 
8428                 be the RAID stripe size) and can improve performance on systems 
8429                 where the disk subsystem is a bottleneck but there is free 
8430                 memory for userspace programs.</para>
8431
8432                 <para>The integer parameter specifies the size of this cache 
8433                 (per oplocked file) in bytes.</para>
8434
8435                 <para>Default: <command>write cache size = 0</command></para>
8436                 <para>Example: <command>write cache size = 262144</command></para>
8437
8438                 <para>for a 256k cache size per file.</para>
8439                 </listitem>
8440                 </varlistentry>
8441
8442
8443
8444
8445
8446                 <varlistentry>
8447                 <term><anchor id="WRITELIST">write list (S)</term>
8448                 <listitem><para>This is a list of users that are given read-write 
8449                 access to a service. If the connecting user is in this list then 
8450                 they will be given write access, no matter what the <link
8451                 linkend="READONLY"><parameter>read only</parameter></link>
8452                 option is set to. The list can include group names using the 
8453                 @group syntax.</para>
8454
8455                 <para>Note that if a user is in both the read list and the 
8456                 write list then they will be given write access.</para>
8457
8458                 <para>See also the <link linkend="READLIST"><parameter>read list
8459                 </parameter></link> option.</para>
8460
8461                 <para>Default: <command>write list = &lt;empty string&gt;
8462                 </command></para>
8463
8464                 <para>Example: <command>write list = admin, root, @staff
8465                 </command></para>
8466                 </listitem>
8467                 </varlistentry>
8468
8469
8470
8471                 <varlistentry>
8472                 <term><anchor id="WINSPARTNERS">wins partners (G)</term>
8473                 <listitem><para>A space separated list of partners' IP addresses for 
8474                 WINS replication. WINS partners are always defined as push/pull 
8475                 partners as defining only one way WINS replication is unreliable. 
8476                 WINS replication is currently experimental and unreliable between 
8477                 samba servers.
8478                 </para>
8479
8480                 <para>Default: <command>wins partners = </command></para>
8481
8482                 <para>Example: <command>wins partners = 192.168.0.1 172.16.1.2</command></para>
8483                 </listitem>
8484                 </varlistentry>
8485
8486
8487                 <varlistentry>
8488                 <term><anchor id="WRITEOK">write ok (S)</term>
8489                 <listitem><para>Inverted synonym for <link linkend="READONLY"><parameter>
8490                 read only</parameter></link>.</para>
8491                 </listitem>
8492                 </varlistentry>
8493
8494
8495
8496                 <varlistentry>
8497                 <term><anchor id="WRITERAW">write raw (G)</term>
8498                 <listitem><para>This parameter controls whether or not the server 
8499                 will support raw write SMB's when transferring data from clients. 
8500                 You should never need to change this parameter.</para>
8501
8502                 <para>Default: <command>write raw = yes</command></para>
8503                 </listitem>
8504                 </varlistentry>
8505
8506
8507
8508                 <varlistentry>
8509                 <term><anchor id="WRITEABLE">writeable (S)</term>
8510                 <listitem><para>Inverted synonym for <link linkend="READONLY"><parameter>
8511                 read only</parameter></link>.</para>
8512                 </listitem>
8513                 </varlistentry>
8514
8515
8516         </variablelist>
8517
8518 </refsect1>
8519
8520 <refsect1>
8521         <title>WARNINGS</title>
8522         
8523         <para>Although the configuration file permits service names 
8524         to contain spaces, your client software may not. Spaces will 
8525         be ignored in comparisons anyway, so it shouldn't be a 
8526         problem - but be aware of the possibility.</para>
8527
8528         <para>On a similar note, many clients - especially DOS clients - 
8529         limit service names to eight characters. <ulink url="smbd.8.html">smbd(8)
8530         </ulink> has no such limitation, but attempts to connect from such 
8531         clients will fail if they truncate the service names.  For this reason 
8532         you should probably keep your service names down to eight characters 
8533         in length.</para>
8534
8535         <para>Use of the [homes] and [printers] special sections make life 
8536         for an administrator easy, but the various combinations of default 
8537         attributes can be tricky. Take extreme care when designing these 
8538         sections. In particular, ensure that the permissions on spool 
8539         directories are correct.</para>
8540 </refsect1>
8541
8542 <refsect1>
8543         <title>VERSION</title>
8544
8545         <para>This man page is correct for version 3.0 of 
8546         the Samba suite.</para>
8547 </refsect1>
8548
8549 <refsect1>
8550         <title>SEE ALSO</title>
8551         <para><ulink url="samba.7.html">samba(7)</ulink>,
8552         <ulink url="smbpasswd.8.html"><command>smbpasswd(8)</command></ulink>,
8553         <ulink url="swat.8.html"><command>swat(8)</command></ulink>,
8554         <ulink url="smbd.8.html"><command>smbd(8)</command></ulink>, 
8555         <ulink url="nmbd.8.html"><command>nmbd(8)</command></ulink>, 
8556         <ulink url="smbclient.1.html"><command>smbclient(1)</command></ulink>, 
8557         <ulink url="nmblookup.1.html"><command>nmblookup(1)</command></ulink>,
8558         <ulink url="testparm.1.html"><command>testparm(1)</command></ulink>, 
8559         <ulink url="testprns.1.html"><command>testprns(1)</command></ulink>
8560         </para>
8561 </refsect1>
8562
8563 <refsect1>
8564         <title>AUTHOR</title>
8565         
8566         <para>The original Samba software and related utilities 
8567         were created by Andrew Tridgell. Samba is now developed
8568         by the Samba Team as an Open Source project similar 
8569         to the way the Linux kernel is developed.</para>
8570         
8571         <para>The original Samba man pages were written by Karl Auer. 
8572         The man page sources were converted to YODL format (another 
8573         excellent piece of Open Source software, available at
8574         <ulink url="ftp://ftp.icce.rug.nl/pub/unix/">
8575         ftp://ftp.icce.rug.nl/pub/unix/</ulink>) and updated for the Samba 2.0 
8576         release by Jeremy Allison.  The conversion to DocBook for 
8577         Samba 2.2 was done by Gerald Carter</para>
8578 </refsect1>
8579
8580 </refentry>