1SMBD(8) System Administration tools SMBD(8)
2
3
4
6 smbd - server to provide SMB/CIFS services to clients
7
9 smbd [-D] [-F] [-S] [-i] [-h] [-V] [-b] [-d <debug level>]
10 [-l <log directory>] [-p <port number(s)>] [-P <profiling level>]
11 [-O <socket option>] [-s <configuration file>]
12
14 This program is part of the samba(7) suite.
15
16 smbd is the server daemon that provides filesharing and printing
17 services to Windows clients. The server provides filespace and printer
18 services to clients using the SMB (or CIFS) protocol. This is
19 compatible with the LanManager protocol, and can service LanManager
20 clients. These include MSCLIENT 3.0 for DOS, Windows for Workgroups,
21 Windows 95/98/ME, Windows NT, Windows 2000, OS/2, DAVE for Macintosh,
22 and smbfs for Linux.
23
24 An extensive description of the services that the server can provide is
25 given in the man page for the configuration file controlling the
26 attributes of those services (see smb.conf(5). This man page will not
27 describe the services, but will concentrate on the administrative
28 aspects of running the server.
29
30 Please note that there are significant security implications to running
31 this server, and the smb.conf(5) manual page should be regarded as
32 mandatory reading before proceeding with installation.
33
34 A session is created whenever a client requests one. Each client gets a
35 copy of the server for each session. This copy then services all
36 connections made by the client during that session. When all
37 connections from its client are closed, the copy of the server for that
38 client terminates.
39
40 The configuration file, and any files that it includes, are
41 automatically reloaded every minute, if they change. You can force a
42 reload by sending a SIGHUP to the server. Reloading the configuration
43 file will not affect connections to any service that is already
44 established. Either the user will have to disconnect from the service,
45 or smbd killed and restarted.
46
48 -D
49 If specified, this parameter causes the server to operate as a
50 daemon. That is, it detaches itself and runs in the background,
51 fielding requests on the appropriate port. Operating the server as
52 a daemon is the recommended way of running smbd for servers that
53 provide more than casual use file and print services. This switch
54 is assumed if smbd is executed on the command line of a shell.
55
56 -F
57 If specified, this parameter causes the main smbd process to not
58 daemonize, i.e. double-fork and disassociate with the terminal.
59 Child processes are still created as normal to service each
60 connection request, but the main process does not exit. This
61 operation mode is suitable for running smbd under process
62 supervisors such as supervise and svscan from Daniel J. Bernstein´s
63 daemontools package, or the AIX process monitor.
64
65 -S
66 If specified, this parameter causes smbd to log to standard output
67 rather than a file.
68
69 -i
70 If this parameter is specified it causes the server to run
71 "interactively", not as a daemon, even if the server is executed on
72 the command line of a shell. Setting this parameter negates the
73 implicit daemon mode when run from the command line. smbd also
74 logs to standard output, as if the -S parameter had been given.
75
76 -d|--debuglevel=level
77 level is an integer from 0 to 10. The default value if this
78 parameter is not specified is 0.
79
80 The higher this value, the more detail will be logged to the log
81 files about the activities of the server. At level 0, only critical
82 errors and serious warnings will be logged. Level 1 is a reasonable
83 level for day-to-day running - it generates a small amount of
84 information about operations carried out.
85
86 Levels above 1 will generate considerable amounts of log data, and
87 should only be used when investigating a problem. Levels above 3
88 are designed for use only by developers and generate HUGE amounts
89 of log data, most of which is extremely cryptic.
90
91 Note that specifying this parameter here will override the
92 smb.conf.5.html# parameter in the smb.conf file.
93
94 -V|--version
95 Prints the program version number.
96
97 -s|--configfile <configuration file>
98 The file specified contains the configuration details required by
99 the server. The information in this file includes server-specific
100 information such as what printcap file to use, as well as
101 descriptions of all the services that the server is to provide. See
102 smb.conf for more information. The default configuration file name
103 is determined at compile time.
104
105 -l|--log-basename=logdirectory
106 Base directory name for log/debug files. The extension ".progname"
107 will be appended (e.g. log.smbclient, log.smbd, etc...). The log
108 file is never removed by the client.
109
110 -h|--help
111 Print a summary of command line options.
112
113 -b
114 Prints information about how Samba was built.
115
116 -p|--port<port number(s)>
117 port number(s) is a space or comma-separated list of TCP ports smbd
118 should listen on. The default value is taken from the ports
119 parameter in smb.conf
120
121 The default ports are 139 (used for SMB over NetBIOS over TCP) and
122 port 445 (used for plain SMB over TCP).
123
124 -P|--profiling-level<profiling level>
125 profiling level is a number specifying the level of profiling data
126 to be collected. 0 turns off profiling, 1 turns on counter
127 profiling only, 2 turns on complete profiling, and 3 resets all
128 profiling data.
129
131 /etc/inetd.conf
132 If the server is to be run by the inetd meta-daemon, this file must
133 contain suitable startup information for the meta-daemon.
134
135 /etc/rc
136 or whatever initialization script your system uses).
137
138 If running the server as a daemon at startup, this file will need
139 to contain an appropriate startup sequence for the server.
140
141 /etc/services
142 If running the server via the meta-daemon inetd, this file must
143 contain a mapping of service name (e.g., netbios-ssn) to service
144 port (e.g., 139) and protocol type (e.g., tcp).
145
146 /usr/local/samba/lib/smb.conf
147 This is the default location of the smb.conf(5) server
148 configuration file. Other common places that systems install this
149 file are /usr/samba/lib/smb.conf and /etc/samba/smb.conf.
150
151 This file describes all the services the server is to make
152 available to clients. See smb.conf(5) for more information.
153
155 On some systems smbd cannot change uid back to root after a setuid()
156 call. Such systems are called trapdoor uid systems. If you have such a
157 system, you will be unable to connect from a client (such as a PC) as
158 two different users at once. Attempts to connect the second user will
159 result in access denied or similar.
160
162 PRINTER
163 If no printer name is specified to printable services, most systems
164 will use the value of this variable (or lp if this variable is not
165 defined) as the name of the printer to use. This is not specific to
166 the server, however.
167
169 Samba uses PAM for authentication (when presented with a plaintext
170 password), for account checking (is this account disabled?) and for
171 session management. The degree too which samba supports PAM is
172 restricted by the limitations of the SMB protocol and the obey pam
173 restrictions smb.conf(5) paramater. When this is set, the following
174 restrictions apply:
175
176 · Account Validation: All accesses to a samba server are checked
177 against PAM to see if the account is vaild, not disabled and is
178 permitted to login at this time. This also applies to encrypted
179 logins.
180
181 · Session Management: When not using share level secuirty, users must
182 pass PAM´s session checks before access is granted. Note however,
183 that this is bypassed in share level secuirty. Note also that some
184 older pam configuration files may need a line added for session
185 support.
186
188 This man page is correct for version 3 of the Samba suite.
189
191 Most diagnostics issued by the server are logged in a specified log
192 file. The log file name is specified at compile time, but may be
193 overridden on the command line.
194
195 The number and nature of diagnostics available depends on the debug
196 level used by the server. If you have problems, set the debug level to
197 3 and peruse the log files.
198
199 Most messages are reasonably self-explanatory. Unfortunately, at the
200 time this man page was created, there are too many diagnostics
201 available in the source code to warrant describing each and every
202 diagnostic. At this stage your best bet is still to grep the source
203 code and inspect the conditions that gave rise to the diagnostics you
204 are seeing.
205
207 Samba stores it´s data in several TDB (Trivial Database) files, usually
208 located in /var/lib/samba.
209
210 (*) information persistent across restarts (but not necessarily
211 important to backup).
212
213 account_policy.tdb*
214 NT account policy settings such as pw expiration, etc...
215
216 brlock.tdb
217 byte range locks
218
219 browse.dat
220 browse lists
221
222 connections.tdb
223 share connections (used to enforce max connections, etc...)
224
225 gencache.tdb
226 generic caching db
227
228 group_mapping.tdb*
229 group mapping information
230
231 locking.tdb
232 share modes & oplocks
233
234 login_cache.tdb*
235 bad pw attempts
236
237 messages.tdb
238 Samba messaging system
239
240 netsamlogon_cache.tdb*
241 cache of user net_info_3 struct from net_samlogon() request (as a
242 domain member)
243
244 ntdrivers.tdb*
245 installed printer drivers
246
247 ntforms.tdb*
248 installed printer forms
249
250 ntprinters.tdb*
251 installed printer information
252
253 printing/
254 directory containing tdb per print queue of cached lpq output
255
256 registry.tdb
257 Windows registry skeleton (connect via regedit.exe)
258
259 sessionid.tdb
260 session information (e.g. support for ´utmp = yes´)
261
262 share_info.tdb*
263 share acls
264
265 winbindd_cache.tdb
266 winbindd´s cache of user lists, etc...
267
268 winbindd_idmap.tdb*
269 winbindd´s local idmap db
270
271 wins.dat*
272 wins database when ´wins support = yes´
273
275 Sending the smbd a SIGHUP will cause it to reload its smb.conf
276 configuration file within a short period of time.
277
278 To shut down a user´s smbd process it is recommended that SIGKILL (-9)
279 NOT be used, except as a last resort, as this may leave the shared
280 memory area in an inconsistent state. The safe way to terminate an smbd
281 is to send it a SIGTERM (-15) signal and wait for it to die on its own.
282
283 The debug log level of smbd may be raised or lowered using
284 smbcontrol(1) program (SIGUSR[1|2] signals are no longer used since
285 Samba 2.2). This is to allow transient problems to be diagnosed, whilst
286 still running at a normally low log level.
287
288 Note that as the signal handlers send a debug write, they are not
289 re-entrant in smbd. This you should wait until smbd is in a state of
290 waiting for an incoming SMB before issuing them. It is possible to make
291 the signal handlers safe by un-blocking the signals before the select
292 call and re-blocking them after, however this would affect performance.
293
295 hosts_access(5), inetd(8), nmbd(8), smb.conf(5), smbclient(1),
296 testparm(1), testprns(1), and the Internet RFC´s rfc1001.txt,
297 rfc1002.txt. In addition the CIFS (formerly SMB) specification is
298 available as a link from the Web page http://samba.org/cifs/.
299
301 The original Samba software and related utilities were created by
302 Andrew Tridgell. Samba is now developed by the Samba Team as an Open
303 Source project similar to the way the Linux kernel is developed.
304
305 The original Samba man pages were written by Karl Auer. The man page
306 sources were converted to YODL format (another excellent piece of Open
307 Source software, available at ftp://ftp.icce.rug.nl/pub/unix/) and
308 updated for the Samba 2.0 release by Jeremy Allison. The conversion to
309 DocBook for Samba 2.2 was done by Gerald Carter. The conversion to
310 DocBook XML 4.2 for Samba 3.0 was done by Alexander Bokovoy.
311
312
313
314Samba 3.5 08/02/2011 SMBD(8)