mirror of
https://github.com/samba-team/samba.git
synced 2025-01-12 09:18:10 +03:00
f7e07eafc8
- Fix db2latex (it depended on the $Id$ tags)
- Fix CUPS-Printing syntax
- Update instructions in docbook.txt
(This used to be commit 8d7c96a4e2
)
184 lines
17 KiB
HTML
184 lines
17 KiB
HTML
<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.60.1"></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><div></div></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><tt class="command">smbd</tt> [-D] [-F] [-S] [-i] [-h] [-V] [-b] [-d <debug level>] [-l <log directory>] [-p <port number>] [-O <socket option>] [-s <configuration file>]</p></div></div><div class="refsect1" lang="en"><h2>DESCRIPTION</h2><p>This program is part of the <a href="Samba.7.html"><span class="citerefentry"><span class="refentrytitle">Samba</span>(7)</span></a> suite.</p><p><b class="command">smbd</b> is the server daemon that
|
|
provides filesharing and printing services to Windows clients.
|
|
The server provides filespace and printer services to
|
|
clients using the SMB (or CIFS) protocol. This is compatible
|
|
with the LanManager protocol, and can service LanManager
|
|
clients. These include MSCLIENT 3.0 for DOS, Windows for
|
|
Workgroups, Windows 95/98/ME, Windows NT, Windows 2000,
|
|
OS/2, DAVE for Macintosh, and smbfs for Linux.</p><p>An extensive description of the services that the
|
|
server can provide is given in the man page for the
|
|
configuration file controlling the attributes of those
|
|
services (see <a href="smb.conf.5.html"><span class="citerefentry"><span class="refentrytitle">smb.conf</span>(5)</span></a>. This man page will not describe the
|
|
services, but will concentrate on the administrative aspects
|
|
of running the server.</p><p>Please note that there are significant security
|
|
implications to running this server, and the <a 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
|
|
proceeding with installation.</p><p>A session is created whenever a client requests one.
|
|
Each client gets a copy of the server for each session. This
|
|
copy then services all connections made by the client during
|
|
that session. When all connections from its client are closed,
|
|
the copy of the server for that client terminates.</p><p>The configuration file, and any files that it includes,
|
|
are automatically reloaded every minute, if they change. You
|
|
can force a reload by sending a SIGHUP to the server. Reloading
|
|
the configuration file will not affect connections to any service
|
|
that is already established. Either the user will have to
|
|
disconnect from the service, or <b class="command">smbd</b> killed and restarted.</p></div><div class="refsect1" lang="en"><h2>OPTIONS</h2><div class="variablelist"><dl><dt><span class="term">-D</span></dt><dd><p>If specified, this parameter causes
|
|
the server to operate as a daemon. That is, it detaches
|
|
itself and runs in the background, fielding requests
|
|
on the appropriate port. Operating the server as a
|
|
daemon is the recommended way of running <b class="command">smbd</b> for
|
|
servers that provide more than casual use file and
|
|
print services. This switch is assumed if <b class="command">smbd
|
|
</b> is executed on the command line of a shell.
|
|
</p></dd><dt><span class="term">-F</span></dt><dd><p>If specified, this parameter causes
|
|
the main <b class="command">smbd</b> process to not daemonize,
|
|
i.e. double-fork and disassociate with the terminal.
|
|
Child processes are still created as normal to service
|
|
each connection request, but the main process does not
|
|
exit. This operation mode is suitable for running
|
|
<b class="command">smbd</b> under process supervisors such
|
|
as <b class="command">supervise</b> and <b class="command">svscan</b>
|
|
from Daniel J. Bernstein's <b class="command">daemontools</b>
|
|
package, or the AIX process monitor.
|
|
</p></dd><dt><span class="term">-S</span></dt><dd><p>If specified, this parameter causes
|
|
<b class="command">smbd</b> to log to standard output rather
|
|
than a file.</p></dd><dt><span class="term">-i</span></dt><dd><p>If this parameter is specified it causes the
|
|
server to run "interactively", not as a daemon, even if the
|
|
server is executed on the command line of a shell. Setting this
|
|
parameter negates the implicit deamon mode when run from the
|
|
command line. <b class="command">smbd</b> also logs to standard
|
|
output, as if the <b class="command">-S</b> parameter had been
|
|
given.
|
|
</p></dd><dt><span class="term">-V</span></dt><dd><p>Prints the version number for
|
|
<b class="command">smbd</b>.</p></dd><dt><span class="term">-s <configuration file></span></dt><dd><p>The file specified contains the
|
|
configuration details required by the server. The
|
|
information in this file includes server-specific
|
|
information such as what printcap file to use, as well
|
|
as descriptions of all the services that the server is
|
|
to provide. See <a href="smb.conf.5.html" target="_top"><tt class="filename">
|
|
smb.conf(5)</tt></a> for more information.
|
|
The default configuration file name is determined at
|
|
compile time.</p></dd><dt><span class="term">-d|--debug=debuglevel</span></dt><dd><p><i class="replaceable"><tt>debuglevel</tt></i> is an integer
|
|
from 0 to 10. The default value if this parameter is
|
|
not specified is zero.</p><p>The higher this value, the more detail will be
|
|
logged to the log files about the activities of the
|
|
server. At level 0, only critical errors and serious
|
|
warnings will be logged. Level 1 is a reasonable level for
|
|
day to day running - it generates a small amount of
|
|
information about operations carried out.</p><p>Levels above 1 will generate considerable
|
|
amounts of log data, and should only be used when
|
|
investigating a problem. Levels above 3 are designed for
|
|
use only by developers and generate HUGE amounts of log
|
|
data, most of which is extremely cryptic.</p><p>Note that specifying this parameter here will
|
|
override the <a href="smb.conf.5.html#loglevel" target="_top">log
|
|
level</a> parameter in the <a href="smb.conf.5.html" target="_top">
|
|
<tt class="filename">smb.conf(5)</tt></a> file.</p></dd><dt><span class="term">-l|--logfile=logbasename</span></dt><dd><p>File name for log/debug files. The extension
|
|
<tt class="constant">".client"</tt> will be appended. The log file is
|
|
never removed by the client.
|
|
</p></dd><dt><span class="term">-h|--help</span></dt><dd><p>Print a summary of command line options.
|
|
</p></dd><dt><span class="term">-b</span></dt><dd><p>Prints information about how
|
|
Samba was built.</p></dd><dt><span class="term">-l <log directory></span></dt><dd><p>If specified,
|
|
<i class="replaceable"><tt>log directory</tt></i>
|
|
specifies a log directory into which the "log.smbd" log
|
|
file will be created for informational and debug
|
|
messages from the running server. The log
|
|
file generated is never removed by the server although
|
|
its size may be controlled by the <a href="smb.conf.5.html#maxlogsize" target="_top"><i class="parameter"><tt>max log size</tt></i></a>
|
|
option in the <a href="smb.conf.5.html"><span class="citerefentry"><span class="refentrytitle">smb.conf</span>(5)</span></a> file. <span class="emphasis"><em>Beware:</em></span>
|
|
If the directory specified does not exist, <b class="command">smbd</b>
|
|
will log to the default debug log location defined at compile time.
|
|
</p><p>The default log directory is specified at
|
|
compile time.</p></dd><dt><span class="term">-p <port number></span></dt><dd><p><i class="replaceable"><tt>port number</tt></i> is a positive integer
|
|
value. The default value if this parameter is not
|
|
specified is 139.</p><p>This number is the port number that will be
|
|
used when making connections to the server from client
|
|
software. The standard (well-known) port number for the
|
|
SMB over TCP is 139, hence the default. If you wish to
|
|
run the server as an ordinary user rather than
|
|
as root, most systems will require you to use a port
|
|
number greater than 1024 - ask your system administrator
|
|
for help if you are in this situation.</p><p>In order for the server to be useful by most
|
|
clients, should you configure it on a port other
|
|
than 139, you will require port redirection services
|
|
on port 139, details of which are outlined in rfc1002.txt
|
|
section 4.3.5.</p><p>This parameter is not normally specified except
|
|
in the above situation.</p></dd></dl></div></div><div class="refsect1" lang="en"><h2>FILES</h2><div class="variablelist"><dl><dt><span class="term"><tt class="filename">/etc/inetd.conf</tt></span></dt><dd><p>If the server is to be run by the
|
|
<b class="command">inetd</b> meta-daemon, this file
|
|
must contain suitable startup information for the
|
|
meta-daemon. See the <a href="install.html" target="_top">"How to Install and Test SAMBA"</a>
|
|
document for details.
|
|
</p></dd><dt><span class="term"><tt class="filename">/etc/rc</tt></span></dt><dd><p>or whatever initialization script your
|
|
system uses).</p><p>If running the server as a daemon at startup,
|
|
this file will need to contain an appropriate startup
|
|
sequence for the server. See the <a href="install.html" target="_top">"How to Install and Test SAMBA"</a>
|
|
document for details.</p></dd><dt><span class="term"><tt class="filename">/etc/services</tt></span></dt><dd><p>If running the server via the
|
|
meta-daemon <b class="command">inetd</b>, this file
|
|
must contain a mapping of service name (e.g., netbios-ssn)
|
|
to service port (e.g., 139) and protocol type (e.g., tcp).
|
|
See the <a href="install.html" target="_top">"How to Install and Test SAMBA"</a>
|
|
document for details.</p></dd><dt><span class="term"><tt class="filename">/usr/local/samba/lib/smb.conf</tt></span></dt><dd><p>This is the default location of the <a 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
|
|
install this file are <tt class="filename">/usr/samba/lib/smb.conf</tt>
|
|
and <tt class="filename">/etc/samba/smb.conf</tt>.</p><p>This file describes all the services the server
|
|
is to make available to clients. See <a 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"><h2>LIMITATIONS</h2><p>On some systems <b class="command">smbd</b> cannot change uid back
|
|
to root after a setuid() call. Such systems are called
|
|
trapdoor uid systems. If you have such a system,
|
|
you will be unable to connect from a client (such as a PC) as
|
|
two different users at once. Attempts to connect the
|
|
second user will result in access denied or
|
|
similar.</p></div><div class="refsect1" lang="en"><h2>ENVIRONMENT VARIABLES</h2><div class="variablelist"><dl><dt><span class="term"><tt class="envar">PRINTER</tt></span></dt><dd><p>If no printer name is specified to
|
|
printable services, most systems will use the value of
|
|
this variable (or <tt class="constant">lp</tt> if this variable is
|
|
not defined) as the name of the printer to use. This
|
|
is not specific to the server, however.</p></dd></dl></div></div><div class="refsect1" lang="en"><h2>PAM INTERACTION</h2><p>Samba uses PAM for authentication (when presented with a plaintext
|
|
password), for account checking (is this account disabled?) and for
|
|
session management. The degree too which samba supports PAM is restricted
|
|
by the limitations of the SMB protocol and the <a href="smb.conf.5.html#OBEYPAMRESRICTIONS" target="_top"><i class="parameter"><tt>obey
|
|
pam restricions</tt></i></a> <a 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:
|
|
</p><div class="itemizedlist"><ul type="disc"><li><p><span class="emphasis"><em>Account Validation</em></span>: All accesses to a
|
|
samba server are checked
|
|
against PAM to see if the account is vaild, not disabled and is permitted to
|
|
login at this time. This also applies to encrypted logins.
|
|
</p></li><li><p><span class="emphasis"><em>Session Management</em></span>: When not using share
|
|
level secuirty, users must pass PAM's session checks before access
|
|
is granted. Note however, that this is bypassed in share level secuirty.
|
|
Note also that some older pam configuration files may need a line
|
|
added for session support.
|
|
</p></li></ul></div></div><div class="refsect1" lang="en"><h2>VERSION</h2><p>This man page is correct for version 3.0 of
|
|
the Samba suite.</p></div><div class="refsect1" lang="en"><h2>DIAGNOSTICS</h2><p>Most diagnostics issued by the server are logged
|
|
in a specified log file. The log file name is specified
|
|
at compile time, but may be overridden on the command line.</p><p>The number and nature of diagnostics available depends
|
|
on the debug level used by the server. If you have problems, set
|
|
the debug level to 3 and peruse the log files.</p><p>Most messages are reasonably self-explanatory. Unfortunately,
|
|
at the time this man page was created, there are too many diagnostics
|
|
available in the source code to warrant describing each and every
|
|
diagnostic. At this stage your best bet is still to grep the
|
|
source code and inspect the conditions that gave rise to the
|
|
diagnostics you are seeing.</p></div><div class="refsect1" lang="en"><h2>SIGNALS</h2><p>Sending the <b class="command">smbd</b> a SIGHUP will cause it to
|
|
reload its <tt class="filename">smb.conf</tt> configuration
|
|
file within a short period of time.</p><p>To shut down a user's <b class="command">smbd</b> process it is recommended
|
|
that <b class="command">SIGKILL (-9)</b> <span class="emphasis"><em>NOT</em></span>
|
|
be used, except as a last resort, as this may leave the shared
|
|
memory area in an inconsistent state. The safe way to terminate
|
|
an <b class="command">smbd</b> is to send it a SIGTERM (-15) signal and wait for
|
|
it to die on its own.</p><p>The debug log level of <b class="command">smbd</b> may be raised
|
|
or lowered using <a href="smbcontrol.1.html"><span class="citerefentry"><span class="refentrytitle">smbcontrol</span>(1)</span></a> program (SIGUSR[1|2] signals are no longer
|
|
used since Samba 2.2). This is to allow transient problems to be diagnosed,
|
|
whilst still running at a normally low log level.</p><p>Note that as the signal handlers send a debug write,
|
|
they are not re-entrant in <b class="command">smbd</b>. This you should wait until
|
|
<b class="command">smbd</b> is in a state of waiting for an incoming SMB before
|
|
issuing them. It is possible to make the signal handlers safe
|
|
by un-blocking the signals before the select call and re-blocking
|
|
them after, however this would affect performance.</p></div><div class="refsect1" lang="en"><h2>SEE ALSO</h2><p><a href="hosts_access.5.html"><span class="citerefentry"><span class="refentrytitle">hosts_access</span>(5)</span></a>, <a href="inetd.8.html"><span class="citerefentry"><span class="refentrytitle">inetd</span>(8)</span></a>, <a href="nmbd.8.html"><span class="citerefentry"><span class="refentrytitle">nmbd</span>(8)</span></a>, <a href="smb.conf.5.html"><span class="citerefentry"><span class="refentrytitle">smb.conf</span>(5)</span></a>, <a href="smbclient.1.html"><span class="citerefentry"><span class="refentrytitle">smbclient</span>(1)</span></a>, <a href="testparm.1.html"><span class="citerefentry"><span class="refentrytitle">testparm</span>(1)</span></a>, <a href="testprns.1.html"><span class="citerefentry"><span class="refentrytitle">testprns</span>(1)</span></a>, and the
|
|
Internet RFC's <tt class="filename">rfc1001.txt</tt>, <tt class="filename">rfc1002.txt</tt>.
|
|
In addition the CIFS (formerly SMB) specification is available
|
|
as a link from the Web page <a href="http://samba.org/cifs/" target="_top">
|
|
http://samba.org/cifs/</a>.</p></div><div class="refsect1" lang="en"><h2>AUTHOR</h2><p>The original Samba software and related utilities
|
|
were created by Andrew Tridgell. Samba is now developed
|
|
by the Samba Team as an Open Source project similar
|
|
to the way the Linux kernel is developed.</p><p>The original Samba man pages were written by Karl Auer.
|
|
The man page sources were converted to YODL format (another
|
|
excellent piece of Open Source software, available at <a href="ftp://ftp.icce.rug.nl/pub/unix/" target="_top">
|
|
ftp://ftp.icce.rug.nl/pub/unix/</a>) and updated for the Samba 2.0
|
|
release by Jeremy Allison. The conversion to DocBook for
|
|
Samba 2.2 was done by Gerald Carter. The conversion to DocBook XML 4.2 for
|
|
Samba 3.0 was done by Alexander Bokovoy.</p></div></div></body></html>
|