1 | <html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>smbd</title><link rel="stylesheet" href="../samba.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.75.2"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" title="smbd"><a name="smbd.8"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>smbd — server to provide SMB/CIFS services to clients</p></div><div class="refsynopsisdiv" title="Synopsis"><h2>Synopsis</h2><div class="cmdsynopsis"><p><code class="literal">smbd</code> [-D] [-F] [-S] [-i] [-h] [-V] [-b] [-d <debug level>] [-l <log directory>] [-p <port number(s)>] [-P <profiling level>] [-O <socket option>] [-s <configuration file>]</p></div></div><div class="refsect1" title="DESCRIPTION"><a name="id266894"></a><h2>DESCRIPTION</h2><p>This program is part of the <a class="citerefentry" href="samba.7.html"><span class="citerefentry"><span class="refentrytitle">samba</span>(7)</span></a> suite.</p><p><code class="literal">smbd</code> is the server daemon that
|
---|
2 | provides filesharing and printing services to Windows clients.
|
---|
3 | The server provides filespace and printer services to
|
---|
4 | clients using the SMB (or CIFS) protocol. This is compatible
|
---|
5 | with the LanManager protocol, and can service LanManager
|
---|
6 | clients. These include MSCLIENT 3.0 for DOS, Windows for
|
---|
7 | Workgroups, Windows 95/98/ME, Windows NT, Windows 2000,
|
---|
8 | OS/2, DAVE for Macintosh, and smbfs for Linux.</p><p>An extensive description of the services that the
|
---|
9 | server can provide is given in the man page for the
|
---|
10 | configuration file controlling the attributes of those
|
---|
11 | services (see <a class="citerefentry" href="smb.conf.5.html"><span class="citerefentry"><span class="refentrytitle">smb.conf</span>(5)</span></a>. This man page will not describe the
|
---|
12 | services, but will concentrate on the administrative aspects
|
---|
13 | of running the server.</p><p>Please note that there are significant security
|
---|
14 | implications to running this server, and the <a class="citerefentry" href="smb.conf.5.html"><span class="citerefentry"><span class="refentrytitle">smb.conf</span>(5)</span></a> manual page should be regarded as mandatory reading before
|
---|
15 | proceeding with installation.</p><p>A session is created whenever a client requests one.
|
---|
16 | Each client gets a copy of the server for each session. This
|
---|
17 | copy then services all connections made by the client during
|
---|
18 | that session. When all connections from its client are closed,
|
---|
19 | the copy of the server for that client terminates.</p><p>The configuration file, and any files that it includes,
|
---|
20 | are automatically reloaded every minute, if they change. You
|
---|
21 | can force a reload by sending a SIGHUP to the server. Reloading
|
---|
22 | the configuration file will not affect connections to any service
|
---|
23 | that is already established. Either the user will have to
|
---|
24 | disconnect from the service, or <code class="literal">smbd</code> killed and restarted.</p></div><div class="refsect1" title="OPTIONS"><a name="id265771"></a><h2>OPTIONS</h2><div class="variablelist"><dl><dt><span class="term">-D</span></dt><dd><p>If specified, this parameter causes
|
---|
25 | the server to operate as a daemon. That is, it detaches
|
---|
26 | itself and runs in the background, fielding requests
|
---|
27 | on the appropriate port. Operating the server as a
|
---|
28 | daemon is the recommended way of running <code class="literal">smbd</code> for
|
---|
29 | servers that provide more than casual use file and
|
---|
30 | print services. This switch is assumed if <code class="literal">smbd
|
---|
31 | </code> is executed on the command line of a shell.
|
---|
32 | </p></dd><dt><span class="term">-F</span></dt><dd><p>If specified, this parameter causes
|
---|
33 | the main <code class="literal">smbd</code> process to not daemonize,
|
---|
34 | i.e. double-fork and disassociate with the terminal.
|
---|
35 | Child processes are still created as normal to service
|
---|
36 | each connection request, but the main process does not
|
---|
37 | exit. This operation mode is suitable for running
|
---|
38 | <code class="literal">smbd</code> under process supervisors such
|
---|
39 | as <code class="literal">supervise</code> and <code class="literal">svscan</code>
|
---|
40 | from Daniel J. Bernstein's <code class="literal">daemontools</code>
|
---|
41 | package, or the AIX process monitor.
|
---|
42 | </p></dd><dt><span class="term">-S</span></dt><dd><p>If specified, this parameter causes
|
---|
43 | <code class="literal">smbd</code> to log to standard output rather
|
---|
44 | than a file.</p></dd><dt><span class="term">-i</span></dt><dd><p>If this parameter is specified it causes the
|
---|
45 | server to run "interactively", not as a daemon, even if the
|
---|
46 | server is executed on the command line of a shell. Setting this
|
---|
47 | parameter negates the implicit daemon mode when run from the
|
---|
48 | command line. <code class="literal">smbd</code> also logs to standard
|
---|
49 | output, as if the <code class="literal">-S</code> parameter had been
|
---|
50 | given.
|
---|
51 | </p></dd><dt><span class="term">-d|--debuglevel=level</span></dt><dd><p><em class="replaceable"><code>level</code></em> is an integer
|
---|
52 | from 0 to 10. The default value if this parameter is
|
---|
53 | not specified is 0.</p><p>The higher this value, the more detail will be
|
---|
54 | logged to the log files about the activities of the
|
---|
55 | server. At level 0, only critical errors and serious
|
---|
56 | warnings will be logged. Level 1 is a reasonable level for
|
---|
57 | day-to-day running - it generates a small amount of
|
---|
58 | information about operations carried out.</p><p>Levels above 1 will generate considerable
|
---|
59 | amounts of log data, and should only be used when
|
---|
60 | investigating a problem. Levels above 3 are designed for
|
---|
61 | use only by developers and generate HUGE amounts of log
|
---|
62 | data, most of which is extremely cryptic.</p><p>Note that specifying this parameter here will
|
---|
63 | override the <a class="link" href="smb.conf.5.html#" target="_top"></a> parameter
|
---|
64 | in the <code class="filename">smb.conf</code> file.</p></dd><dt><span class="term">-V|--version</span></dt><dd><p>Prints the program version number.
|
---|
65 | </p></dd><dt><span class="term">-s|--configfile <configuration file></span></dt><dd><p>The file specified contains the
|
---|
66 | configuration details required by the server. The
|
---|
67 | information in this file includes server-specific
|
---|
68 | information such as what printcap file to use, as well
|
---|
69 | as descriptions of all the services that the server is
|
---|
70 | to provide. See <code class="filename">smb.conf</code> for more information.
|
---|
71 | The default configuration file name is determined at
|
---|
72 | compile time.</p></dd><dt><span class="term">-l|--log-basename=logdirectory</span></dt><dd><p>Base directory name for log/debug files. The extension
|
---|
73 | <code class="constant">".progname"</code> will be appended (e.g. log.smbclient,
|
---|
74 | log.smbd, etc...). The log file is never removed by the client.
|
---|
75 | </p></dd><dt><span class="term">-h|--help</span></dt><dd><p>Print a summary of command line options.
|
---|
76 | </p></dd><dt><span class="term">-b</span></dt><dd><p>Prints information about how
|
---|
77 | Samba was built.</p></dd><dt><span class="term">-p|--port<port number(s)></span></dt><dd><p><em class="replaceable"><code>port number(s)</code></em> is a
|
---|
78 | space or comma-separated list of TCP ports smbd should listen on.
|
---|
79 | The default value is taken from the <a class="link" href="smb.conf.5.html#PORTS" target="_top">ports</a> parameter in <code class="filename">smb.conf</code></p><p>The default ports are 139 (used for SMB over NetBIOS over TCP)
|
---|
80 | and port 445 (used for plain SMB over TCP).
|
---|
81 | </p></dd><dt><span class="term">-P|--profiling-level<profiling level></span></dt><dd><p><em class="replaceable"><code>profiling level</code></em> is a
|
---|
82 | number specifying the level of profiling data to be collected.
|
---|
83 | 0 turns off profiling, 1 turns on counter profiling only,
|
---|
84 | 2 turns on complete profiling, and 3 resets all profiling data.
|
---|
85 | </p></dd></dl></div></div><div class="refsect1" title="FILES"><a name="id307208"></a><h2>FILES</h2><div class="variablelist"><dl><dt><span class="term"><code class="filename">/etc/inetd.conf</code></span></dt><dd><p>If the server is to be run by the
|
---|
86 | <code class="literal">inetd</code> meta-daemon, this file
|
---|
87 | must contain suitable startup information for the
|
---|
88 | meta-daemon.
|
---|
89 | </p></dd><dt><span class="term"><code class="filename">/etc/rc</code></span></dt><dd><p>or whatever initialization script your
|
---|
90 | system uses).</p><p>If running the server as a daemon at startup,
|
---|
91 | this file will need to contain an appropriate startup
|
---|
92 | sequence for the server. </p></dd><dt><span class="term"><code class="filename">/etc/services</code></span></dt><dd><p>If running the server via the
|
---|
93 | meta-daemon <code class="literal">inetd</code>, this file
|
---|
94 | must contain a mapping of service name (e.g., netbios-ssn)
|
---|
95 | to service port (e.g., 139) and protocol type (e.g., tcp).
|
---|
96 | </p></dd><dt><span class="term"><code class="filename">/usr/local/samba/lib/smb.conf</code></span></dt><dd><p>This is the default location of the <a class="citerefentry" href="smb.conf.5.html"><span class="citerefentry"><span class="refentrytitle">smb.conf</span>(5)</span></a> server configuration file. Other common places that systems
|
---|
97 | install this file are <code class="filename">/usr/samba/lib/smb.conf</code>
|
---|
98 | and <code class="filename">/etc/samba/smb.conf</code>.</p><p>This file describes all the services the server
|
---|
99 | is to make available to clients. See <a class="citerefentry" href="smb.conf.5.html"><span class="citerefentry"><span class="refentrytitle">smb.conf</span>(5)</span></a> for more information.</p></dd></dl></div></div><div class="refsect1" title="LIMITATIONS"><a name="id307320"></a><h2>LIMITATIONS</h2><p>On some systems <code class="literal">smbd</code> cannot change uid back
|
---|
100 | to root after a setuid() call. Such systems are called
|
---|
101 | trapdoor uid systems. If you have such a system,
|
---|
102 | you will be unable to connect from a client (such as a PC) as
|
---|
103 | two different users at once. Attempts to connect the
|
---|
104 | second user will result in access denied or
|
---|
105 | similar.</p></div><div class="refsect1" title="ENVIRONMENT VARIABLES"><a name="id307338"></a><h2>ENVIRONMENT VARIABLES</h2><div class="variablelist"><dl><dt><span class="term"><code class="envar">PRINTER</code></span></dt><dd><p>If no printer name is specified to
|
---|
106 | printable services, most systems will use the value of
|
---|
107 | this variable (or <code class="constant">lp</code> if this variable is
|
---|
108 | not defined) as the name of the printer to use. This
|
---|
109 | is not specific to the server, however.</p></dd></dl></div></div><div class="refsect1" title="PAM INTERACTION"><a name="id307364"></a><h2>PAM INTERACTION</h2><p>Samba uses PAM for authentication (when presented with a plaintext
|
---|
110 | password), for account checking (is this account disabled?) and for
|
---|
111 | session management. The degree too which samba supports PAM is restricted
|
---|
112 | by the limitations of the SMB protocol and the <a class="link" href="smb.conf.5.html#OBEYPAMRESTRICTIONS" target="_top">obey pam restrictions</a> <a class="citerefentry" href="smb.conf.5.html"><span class="citerefentry"><span class="refentrytitle">smb.conf</span>(5)</span></a> parameter. When this is set, the following restrictions apply:
|
---|
113 | </p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><span class="emphasis"><em>Account Validation</em></span>: All accesses to a
|
---|
114 | samba server are checked
|
---|
115 | against PAM to see if the account is valid, not disabled and is permitted to
|
---|
116 | login at this time. This also applies to encrypted logins.
|
---|
117 | </p></li><li class="listitem"><p><span class="emphasis"><em>Session Management</em></span>: When not using share
|
---|
118 | level security, users must pass PAM's session checks before access
|
---|
119 | is granted. Note however, that this is bypassed in share level security.
|
---|
120 | Note also that some older pam configuration files may need a line
|
---|
121 | added for session support.
|
---|
122 | </p></li></ul></div></div><div class="refsect1" title="VERSION"><a name="id307412"></a><h2>VERSION</h2><p>This man page is correct for version 3 of
|
---|
123 | the Samba suite.</p></div><div class="refsect1" title="DIAGNOSTICS"><a name="id307421"></a><h2>DIAGNOSTICS</h2><p>Most diagnostics issued by the server are logged
|
---|
124 | in a specified log file. The log file name is specified
|
---|
125 | at compile time, but may be overridden on the command line.</p><p>The number and nature of diagnostics available depends
|
---|
126 | on the debug level used by the server. If you have problems, set
|
---|
127 | the debug level to 3 and peruse the log files.</p><p>Most messages are reasonably self-explanatory. Unfortunately,
|
---|
128 | at the time this man page was created, there are too many diagnostics
|
---|
129 | available in the source code to warrant describing each and every
|
---|
130 | diagnostic. At this stage your best bet is still to grep the
|
---|
131 | source code and inspect the conditions that gave rise to the
|
---|
132 | diagnostics you are seeing.</p></div><div class="refsect1" title="TDB FILES"><a name="id307444"></a><h2>TDB FILES</h2><p>Samba stores it's data in several TDB (Trivial Database) files, usually located in <code class="filename">/var/lib/samba</code>.</p><p>
|
---|
133 | (*) information persistent across restarts (but not
|
---|
134 | necessarily important to backup).
|
---|
135 | </p><div class="variablelist"><dl><dt><span class="term">account_policy.tdb*</span></dt><dd><p>NT account policy settings such as pw expiration, etc...</p></dd><dt><span class="term">brlock.tdb</span></dt><dd><p>byte range locks</p></dd><dt><span class="term">browse.dat</span></dt><dd><p>browse lists</p></dd><dt><span class="term">connections.tdb</span></dt><dd><p>share connections (used to enforce max connections, etc...)</p></dd><dt><span class="term">gencache.tdb</span></dt><dd><p>generic caching db</p></dd><dt><span class="term">group_mapping.tdb*</span></dt><dd><p>group mapping information</p></dd><dt><span class="term">locking.tdb</span></dt><dd><p>share modes & oplocks</p></dd><dt><span class="term">login_cache.tdb*</span></dt><dd><p>bad pw attempts</p></dd><dt><span class="term">messages.tdb</span></dt><dd><p>Samba messaging system</p></dd><dt><span class="term">netsamlogon_cache.tdb*</span></dt><dd><p>cache of user net_info_3 struct from net_samlogon() request (as a domain member)</p></dd><dt><span class="term">ntdrivers.tdb*</span></dt><dd><p>installed printer drivers</p></dd><dt><span class="term">ntforms.tdb*</span></dt><dd><p>installed printer forms</p></dd><dt><span class="term">ntprinters.tdb*</span></dt><dd><p>installed printer information</p></dd><dt><span class="term">printing/</span></dt><dd><p>directory containing tdb per print queue of cached lpq output</p></dd><dt><span class="term">registry.tdb</span></dt><dd><p>Windows registry skeleton (connect via regedit.exe)</p></dd><dt><span class="term">sessionid.tdb</span></dt><dd><p>session information (e.g. support for 'utmp = yes')</p></dd><dt><span class="term">share_info.tdb*</span></dt><dd><p>share acls</p></dd><dt><span class="term">winbindd_cache.tdb</span></dt><dd><p>winbindd's cache of user lists, etc...</p></dd><dt><span class="term">winbindd_idmap.tdb*</span></dt><dd><p>winbindd's local idmap db</p></dd><dt><span class="term">wins.dat*</span></dt><dd><p>wins database when 'wins support = yes'</p></dd></dl></div></div><div class="refsect1" title="SIGNALS"><a name="id307661"></a><h2>SIGNALS</h2><p>Sending the <code class="literal">smbd</code> a SIGHUP will cause it to
|
---|
136 | reload its <code class="filename">smb.conf</code> configuration
|
---|
137 | file within a short period of time.</p><p>To shut down a user's <code class="literal">smbd</code> process it is recommended
|
---|
138 | that <code class="literal">SIGKILL (-9)</code> <span class="emphasis"><em>NOT</em></span>
|
---|
139 | be used, except as a last resort, as this may leave the shared
|
---|
140 | memory area in an inconsistent state. The safe way to terminate
|
---|
141 | an <code class="literal">smbd</code> is to send it a SIGTERM (-15) signal and wait for
|
---|
142 | it to die on its own.</p><p>The debug log level of <code class="literal">smbd</code> may be raised
|
---|
143 | or lowered using <a class="citerefentry" href="smbcontrol.1.html"><span class="citerefentry"><span class="refentrytitle">smbcontrol</span>(1)</span></a> program (SIGUSR[1|2] signals are no longer
|
---|
144 | used since Samba 2.2). This is to allow transient problems to be diagnosed,
|
---|
145 | whilst still running at a normally low log level.</p><p>Note that as the signal handlers send a debug write,
|
---|
146 | they are not re-entrant in <code class="literal">smbd</code>. This you should wait until
|
---|
147 | <code class="literal">smbd</code> is in a state of waiting for an incoming SMB before
|
---|
148 | issuing them. It is possible to make the signal handlers safe
|
---|
149 | by un-blocking the signals before the select call and re-blocking
|
---|
150 | them after, however this would affect performance.</p></div><div class="refsect1" title="SEE ALSO"><a name="id307739"></a><h2>SEE ALSO</h2><p><a class="citerefentry" href="hosts_access.5.html"><span class="citerefentry"><span class="refentrytitle">hosts_access</span>(5)</span></a>, <a class="citerefentry" href="inetd.8.html"><span class="citerefentry"><span class="refentrytitle">inetd</span>(8)</span></a>, <a class="citerefentry" href="nmbd.8.html"><span class="citerefentry"><span class="refentrytitle">nmbd</span>(8)</span></a>, <a class="citerefentry" href="smb.conf.5.html"><span class="citerefentry"><span class="refentrytitle">smb.conf</span>(5)</span></a>, <a class="citerefentry" href="smbclient.1.html"><span class="citerefentry"><span class="refentrytitle">smbclient</span>(1)</span></a>, <a class="citerefentry" href="testparm.1.html"><span class="citerefentry"><span class="refentrytitle">testparm</span>(1)</span></a>, <a class="citerefentry" href="testprns.1.html"><span class="citerefentry"><span class="refentrytitle">testprns</span>(1)</span></a>, and the
|
---|
151 | Internet RFC's <code class="filename">rfc1001.txt</code>, <code class="filename">rfc1002.txt</code>.
|
---|
152 | In addition the CIFS (formerly SMB) specification is available
|
---|
153 | as a link from the Web page <a class="ulink" href="http://samba.org/cifs/" target="_top">
|
---|
154 | http://samba.org/cifs/</a>.</p></div><div class="refsect1" title="AUTHOR"><a name="id307818"></a><h2>AUTHOR</h2><p>The original Samba software and related utilities
|
---|
155 | were created by Andrew Tridgell. Samba is now developed
|
---|
156 | by the Samba Team as an Open Source project similar
|
---|
157 | to the way the Linux kernel is developed.</p><p>The original Samba man pages were written by Karl Auer.
|
---|
158 | The man page sources were converted to YODL format (another
|
---|
159 | excellent piece of Open Source software, available at <a class="ulink" href="ftp://ftp.icce.rug.nl/pub/unix/" target="_top">
|
---|
160 | ftp://ftp.icce.rug.nl/pub/unix/</a>) and updated for the Samba 2.0
|
---|
161 | release by Jeremy Allison. The conversion to DocBook for
|
---|
162 | Samba 2.2 was done by Gerald Carter. The conversion to DocBook XML 4.2 for
|
---|
163 | Samba 3.0 was done by Alexander Bokovoy.</p></div></div></body></html>
|
---|