| 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.74.0"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en"><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"><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" lang="en"><a name="id2483378"></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" lang="en"><a name="id2483589"></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" lang="en"><a name="id2481674"></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" lang="en"><a name="id2481800"></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" lang="en"><a name="id2481821"></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" lang="en"><a name="id2481850"></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> paramater. When this is set, the following restrictions apply:
|
|---|
| 113 | </p><div class="itemizedlist"><ul type="disc"><li><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 vaild, not disabled and is permitted to
|
|---|
| 116 | login at this time. This also applies to encrypted logins.
|
|---|
| 117 | </p></li><li><p><span class="emphasis"><em>Session Management</em></span>: When not using share
|
|---|
| 118 | level secuirty, users must pass PAM's session checks before access
|
|---|
| 119 | is granted. Note however, that this is bypassed in share level secuirty.
|
|---|
| 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" lang="en"><a name="id2481909"></a><h2>VERSION</h2><p>This man page is correct for version 3 of
|
|---|
| 123 | the Samba suite.</p></div><div class="refsect1" lang="en"><a name="id2481920"></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" lang="en"><a name="id2481948"></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" lang="en"><a name="id2532643"></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" lang="en"><a name="id2532730"></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" lang="en"><a name="id2532810"></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>
|
|---|