version 2, including all changes.
.
| Rev |
Author |
# |
Line |
| 1 |
perry |
1 |
SMBD |
| |
|
2 |
!!!SMBD |
| |
|
3 |
NAME |
| |
|
4 |
SYNOPSIS |
| |
|
5 |
DESCRIPTION |
| |
|
6 |
OPTIONS |
| |
|
7 |
FILES |
| |
|
8 |
LIMITATIONS |
| |
|
9 |
ENVIRONMENT VARIABLES |
| |
|
10 |
PAM INTERACTION |
| |
|
11 |
VERSION |
| |
|
12 |
DIAGNOSTICS |
| |
|
13 |
SIGNALS |
| |
|
14 |
SEE ALSO |
| |
|
15 |
AUTHOR |
| |
|
16 |
---- |
| |
|
17 |
!!NAME |
| |
|
18 |
|
| |
|
19 |
|
| |
|
20 |
smbd - server to provide SMB/CIFS services to clients |
| |
|
21 |
!!SYNOPSIS |
| |
|
22 |
|
| |
|
23 |
|
| |
|
24 |
__smbd__ [[ __-D__ ] [[ __-a__ ] [[ __-i__ ] [[ |
| |
|
25 |
__-o__ ] [[ __-P__ ] [[ __-h__ ] [[ __-V__ ] [[ |
| |
|
26 |
__-d __ ] [[ __-l |
| |
|
27 |
__ ] [[ __-p __ ] [[ |
| |
|
28 |
__-O __ ] [[ __-s |
| |
|
29 |
__ ] |
| |
|
30 |
!!DESCRIPTION |
| |
|
31 |
|
| |
|
32 |
|
| |
|
33 |
This program is part of the Samba suite. |
| |
|
34 |
|
| |
|
35 |
|
| |
|
36 |
__smbd__ is the server daemon that provides filesharing |
| |
|
37 |
and printing services to Windows clients. The server |
| |
|
38 |
provides filespace and printer services to clients using the |
| |
|
39 |
SMB (or CIFS) protocol. This is compatible with the |
| 2 |
perry |
40 |
!LanManager protocol, and can service !LanManager clients. |
| 1 |
perry |
41 |
These include MSCLIENT 3.0 for DOS, Windows for Workgroups, |
| |
|
42 |
Windows 95/98/ME, Windows NT, Windows 2000, OS/2, DAVE for |
| |
|
43 |
Macintosh, and smbfs for Linux. |
| |
|
44 |
|
| |
|
45 |
|
| |
|
46 |
An extensive description of the services that the server can |
| |
|
47 |
provide is given in the man page for the configuration file |
| |
|
48 |
controlling the attributes of those services (see |
| |
|
49 |
''smb.conf(5)'' services, but will concentrate on the |
| |
|
50 |
administrative aspects of running the server. |
| |
|
51 |
|
| |
|
52 |
|
| |
|
53 |
Please note that there are significant security implications |
| |
|
54 |
to running this server, and the ''smb.conf(5)'' manpage |
| |
|
55 |
should be regarded as mandatory reading before proceeding |
| |
|
56 |
with installation. |
| |
|
57 |
|
| |
|
58 |
|
| |
|
59 |
A session is created whenever a client requests one. Each |
| |
|
60 |
client gets a copy of the server for each session. This copy |
| |
|
61 |
then services all connections made by the client during that |
| |
|
62 |
session. When all connections from its client are closed, |
| |
|
63 |
the copy of the server for that client |
| |
|
64 |
terminates. |
| |
|
65 |
|
| |
|
66 |
|
| |
|
67 |
The configuration file, and any files that it includes, are |
| |
|
68 |
automatically reloaded every minute, if they change. You can |
| |
|
69 |
force a reload by sending a SIGHUP to the server. Reloading |
| |
|
70 |
the configuration file will not affect connections to any |
| |
|
71 |
service that is already established. Either the user will |
| |
|
72 |
have to disconnect from the service, or __smbd__ killed |
| |
|
73 |
and restarted. |
| |
|
74 |
!!OPTIONS |
| |
|
75 |
|
| |
|
76 |
|
| |
|
77 |
__-D__ |
| |
|
78 |
|
| |
|
79 |
|
| |
|
80 |
If specified, this parameter causes the server to operate as |
| |
|
81 |
a daemon. That is, it detaches itself and runs in the |
| |
|
82 |
background, fielding requests on the appropriate port. |
| |
|
83 |
Operating the server as a daemon is the recommended way of |
| |
|
84 |
running __smbd__ for servers that provide more than |
| |
|
85 |
casual use file and print services. This switch is assumed |
| |
|
86 |
if __smbd__ is executed on the command line of a |
| |
|
87 |
shell. |
| |
|
88 |
|
| |
|
89 |
|
| |
|
90 |
__-a__ |
| |
|
91 |
|
| |
|
92 |
|
| |
|
93 |
If this parameter is specified, each new connection will |
| |
|
94 |
append log messages to the log file. This is the |
| |
|
95 |
default. |
| |
|
96 |
|
| |
|
97 |
|
| |
|
98 |
__-i__ |
| |
|
99 |
|
| |
|
100 |
|
| |
|
101 |
If this parameter is specified it causes the server to run |
| |
|
102 |
|
| |
|
103 |
|
| |
|
104 |
__-o__ |
| |
|
105 |
|
| |
|
106 |
|
| |
|
107 |
If this parameter is specified, the log files will be |
| |
|
108 |
overwritten when opened. By default, __smbd__ will append |
| |
|
109 |
entries to the log files. |
| |
|
110 |
|
| |
|
111 |
|
| |
|
112 |
__-P__ |
| |
|
113 |
|
| |
|
114 |
|
| |
|
115 |
Passive option. Causes __smbd__ not to send any network |
| |
|
116 |
traffic out. Used for debugging by the developers |
| |
|
117 |
only. |
| |
|
118 |
|
| |
|
119 |
|
| |
|
120 |
__-h__ |
| |
|
121 |
|
| |
|
122 |
|
| |
|
123 |
Prints the help information (usage) for |
| |
|
124 |
__smbd__. |
| |
|
125 |
|
| |
|
126 |
|
| |
|
127 |
__-v__ |
| |
|
128 |
|
| |
|
129 |
|
| |
|
130 |
Prints the version number for __smbd__. |
| |
|
131 |
|
| |
|
132 |
|
| |
|
133 |
__-d __ |
| |
|
134 |
|
| |
|
135 |
|
| |
|
136 |
''debuglevel'' is an integer from 0 to 10. The default |
| |
|
137 |
value if this parameter is not specified is |
| |
|
138 |
zero. |
| |
|
139 |
|
| |
|
140 |
|
| |
|
141 |
The higher this value, the more detail will be logged to the |
| |
|
142 |
log files about the activities of the server. At level 0, |
| |
|
143 |
only critical errors and serious warnings will be logged. |
| |
|
144 |
Level 1 is a reasonable level for day to day running - it |
| |
|
145 |
generates a small amount of information about operations |
| |
|
146 |
carried out. |
| |
|
147 |
|
| |
|
148 |
|
| |
|
149 |
Levels above 1 will generate considerable amounts of log |
| |
|
150 |
data, and should only be used when investigating a problem. |
| |
|
151 |
Levels above 3 are designed for use only by developers and |
| |
|
152 |
generate HUGE amounts of log data, most of which is |
| |
|
153 |
extremely cryptic. |
| |
|
154 |
|
| |
|
155 |
|
| |
|
156 |
Note that specifying this parameter here will override the |
| |
|
157 |
log levelfile. |
| |
|
158 |
|
| |
|
159 |
|
| |
|
160 |
__-l __ |
| |
|
161 |
|
| |
|
162 |
|
| |
|
163 |
If specified, ''log directory'' specifies a log directory |
| |
|
164 |
into which the |
| |
|
165 |
''smb.conf(5)''file. |
| |
|
166 |
|
| |
|
167 |
|
| |
|
168 |
The default log directory is specified at compile |
| |
|
169 |
time. |
| |
|
170 |
|
| |
|
171 |
|
| |
|
172 |
__-O __ |
| |
|
173 |
|
| |
|
174 |
|
| |
|
175 |
See the socket options parameter in the ''smb.conf(5)'' |
| |
|
176 |
file for details. |
| |
|
177 |
|
| |
|
178 |
|
| |
|
179 |
__-p __ |
| |
|
180 |
|
| |
|
181 |
|
| |
|
182 |
''port number'' is a positive integer value. The default |
| |
|
183 |
value if this parameter is not specified is |
| |
|
184 |
139. |
| |
|
185 |
|
| |
|
186 |
|
| |
|
187 |
This number is the port number that will be used when making |
| |
|
188 |
connections to the server from client software. The standard |
| |
|
189 |
(well-known) port number for the SMB over TCP is 139, hence |
| |
|
190 |
the default. If you wish to run the server as an ordinary |
| |
|
191 |
user rather than as root, most systems will require you to |
| |
|
192 |
use a port number greater than 1024 - ask your system |
| |
|
193 |
administrator for help if you are in this |
| |
|
194 |
situation. |
| |
|
195 |
|
| |
|
196 |
|
| |
|
197 |
In order for the server to be useful by most clients, should |
| |
|
198 |
you configure it on a port other than 139, you will require |
| |
|
199 |
port redirection services on port 139, details of which are |
| |
|
200 |
outlined in rfc1002.txt section 4.3.5. |
| |
|
201 |
|
| |
|
202 |
|
| |
|
203 |
This parameter is not normally specified except in the above |
| |
|
204 |
situation. |
| |
|
205 |
|
| |
|
206 |
|
| |
|
207 |
__-s __ |
| |
|
208 |
|
| |
|
209 |
|
| |
|
210 |
The file specified contains the configuration details |
| |
|
211 |
required by the server. The information in this file |
| |
|
212 |
includes server-specific information such as what printcap |
| |
|
213 |
file to use, as well as descriptions of all the services |
| |
|
214 |
that the server is to provide. See ''smb.conf(5)''for |
| |
|
215 |
more information. The default configuration file name is |
| |
|
216 |
determined at compile time. |
| |
|
217 |
!!FILES |
| |
|
218 |
|
| |
|
219 |
|
| |
|
220 |
''/etc/inetd.conf'' |
| |
|
221 |
|
| |
|
222 |
|
| |
|
223 |
If the server is to be run by the __inetd__ meta-daemon, |
| |
|
224 |
this file must contain suitable startup information for the |
| |
|
225 |
meta-daemon. See the UNIX_INSTALL.html document for |
| |
|
226 |
details. |
| |
|
227 |
|
| |
|
228 |
|
| |
|
229 |
''/etc/rc'' |
| |
|
230 |
|
| |
|
231 |
|
| |
|
232 |
or whatever initialization script your system |
| |
|
233 |
uses). |
| |
|
234 |
|
| |
|
235 |
|
| |
|
236 |
If running the server as a daemon at startup, this file will |
| |
|
237 |
need to contain an appropriate startup sequence for the |
| |
|
238 |
server. See the UNIX_INSTALL.html document for |
| |
|
239 |
details. |
| |
|
240 |
|
| |
|
241 |
|
| |
|
242 |
''/etc/services'' |
| |
|
243 |
|
| |
|
244 |
|
| |
|
245 |
If running the server via the meta-daemon __inetd__, this |
| |
|
246 |
file must contain a mapping of service name (e.g., |
| |
|
247 |
netbios-ssn) to service port (e.g., 139) and protocol type |
| |
|
248 |
(e.g., tcp). See the UNIX_INSTALL.html document for |
| |
|
249 |
details. |
| |
|
250 |
|
| |
|
251 |
|
| |
|
252 |
''/usr/local/samba/lib/smb.conf'' |
| |
|
253 |
|
| |
|
254 |
|
| |
|
255 |
This is the default location of the ''smb.conf'' server |
| |
|
256 |
configuration file. Other common places that systems install |
| |
|
257 |
this file are ''/usr/samba/lib/smb.conf'' and |
| |
|
258 |
''/etc/smb.conf''. |
| |
|
259 |
|
| |
|
260 |
|
| |
|
261 |
This file describes all the services the server is to make |
| |
|
262 |
available to clients. See ''smb.conf(5)''for more |
| |
|
263 |
information. |
| |
|
264 |
!!LIMITATIONS |
| |
|
265 |
|
| |
|
266 |
|
| |
|
267 |
On some systems __smbd__ cannot change uid back to root |
| |
|
268 |
after a setuid() call. Such systems are called trapdoor uid |
| |
|
269 |
systems. If you have such a system, you will be unable to |
| |
|
270 |
connect from a client (such as a PC) as two different users |
| |
|
271 |
at once. Attempts to connect the second user will result in |
| |
|
272 |
access denied or similar. |
| |
|
273 |
!!ENVIRONMENT VARIABLES |
| |
|
274 |
|
| |
|
275 |
|
| |
|
276 |
__PRINTER__ |
| |
|
277 |
|
| |
|
278 |
|
| |
|
279 |
If no printer name is specified to printable services, most |
| |
|
280 |
systems will use the value of this variable (or lp if this |
| |
|
281 |
variable is not defined) as the name of the printer to use. |
| |
|
282 |
This is not specific to the server, however. |
| |
|
283 |
!!PAM INTERACTION |
| |
|
284 |
|
| |
|
285 |
|
| |
|
286 |
Samba uses PAM for authentication (when presented with a |
| |
|
287 |
plaintext password), for account checking (is this account |
| |
|
288 |
disabled?) and for session management. The degree too which |
| |
|
289 |
samba supports PAM is restricted by the limitations of the |
| |
|
290 |
SMB protocol and the obey pam restricions smb.conf |
| |
|
291 |
paramater. When this is set, the following restrictions |
| |
|
292 |
apply: |
| |
|
293 |
|
| |
|
294 |
|
| |
|
295 |
__Account Validation__: All acccesses to a samba server |
| |
|
296 |
are checked against PAM to see if the account is vaild, not |
| |
|
297 |
disabled and is permitted to login at this time. This also |
| |
|
298 |
applies to encrypted logins. |
| |
|
299 |
|
| |
|
300 |
|
| |
|
301 |
__Session Management__: When not using share level |
| |
|
302 |
secuirty, users must pass PAM's session checks before access |
| |
|
303 |
is granted. Note however, that this is bypassed in share |
| |
|
304 |
level secuirty. Note also that some older pam configuration |
| |
|
305 |
files may need a line added for session |
| |
|
306 |
support. |
| |
|
307 |
!!VERSION |
| |
|
308 |
|
| |
|
309 |
|
| |
|
310 |
This man page is correct for version 2.2 of the Samba |
| |
|
311 |
suite. |
| |
|
312 |
!!DIAGNOSTICS |
| |
|
313 |
|
| |
|
314 |
|
| |
|
315 |
Most diagnostics issued by the server are logged in a |
| |
|
316 |
specified log file. The log file name is specified at |
| |
|
317 |
compile time, but may be overridden on the command |
| |
|
318 |
line. |
| |
|
319 |
|
| |
|
320 |
|
| |
|
321 |
The number and nature of diagnostics available depends on |
| |
|
322 |
the debug level used by the server. If you have problems, |
| |
|
323 |
set the debug level to 3 and peruse the log |
| |
|
324 |
files. |
| |
|
325 |
|
| |
|
326 |
|
| |
|
327 |
Most messages are reasonably self-explanatory. |
| |
|
328 |
Unfortunately, at the time this man page was created, there |
| |
|
329 |
are too many diagnostics available in the source code to |
| |
|
330 |
warrant describing each and every diagnostic. At this stage |
| |
|
331 |
your best bet is still to grep the source code and inspect |
| |
|
332 |
the conditions that gave rise to the diagnostics you are |
| |
|
333 |
seeing. |
| |
|
334 |
!!SIGNALS |
| |
|
335 |
|
| |
|
336 |
|
| |
|
337 |
Sending the __smbd__ a SIGHUP will cause it to reload its |
| |
|
338 |
''smb.conf'' configuration file within a short period of |
| |
|
339 |
time. |
| |
|
340 |
|
| |
|
341 |
|
| |
|
342 |
To shut down a user's __smbd__ process it is recommended |
| |
|
343 |
that __SIGKILL (-9) NOT__ be used, except as a last |
| |
|
344 |
resort, as this may leave the shared memory area in an |
| |
|
345 |
inconsistent state. The safe way to terminate an __smbd__ |
| |
|
346 |
is to send it a SIGTERM (-15) signal and wait for it to die |
| |
|
347 |
on its own. |
| |
|
348 |
|
| |
|
349 |
|
| |
|
350 |
The debug log level of __smbd__ may be raised or lowered |
| |
|
351 |
using __smbcontrol(1)__ program (SIGUSR[[1|2] signals are |
| |
|
352 |
no longer used in Samba 2.2). This is to allow transient |
| |
|
353 |
problems to be diagnosed, whilst still running at a normally |
| |
|
354 |
low log level. |
| |
|
355 |
|
| |
|
356 |
|
| |
|
357 |
Note that as the signal handlers send a debug write, they |
| |
|
358 |
are not re-entrant in __smbd__. This you should wait |
| |
|
359 |
until __smbd__ is in a state of waiting for an incoming |
| |
|
360 |
SMB before issuing them. It is possible to make the signal |
| |
|
361 |
handlers safe by un-blocking the signals before the select |
| |
|
362 |
call and re-blocking them after, however this would affect |
| |
|
363 |
performance. |
| |
|
364 |
!!SEE ALSO |
| |
|
365 |
|
| |
|
366 |
|
| |
|
367 |
hosts_access(5), __inetd(8)__, __nmbd(8)__, |
| |
|
368 |
''smb.conf(5)'' , __smbclient(1)__ , and the Internet |
| |
|
369 |
RFC's ''rfc1001.txt'', ''rfc1002.txt''. In addition |
| |
|
370 |
the CIFS (formerly SMB) specification is available as a link |
| |
|
371 |
from the Web page http://samba.org/cifs/ |
| |
|
372 |
'' |
| |
|
373 |
!!AUTHOR |
| |
|
374 |
|
| |
|
375 |
|
| |
|
376 |
The original Samba software and related utilities were |
| |
|
377 |
created by Andrew Tridgell. Samba is now developed by the |
| |
|
378 |
Samba Team as an Open Source project similar to the way the |
| |
|
379 |
Linux kernel is developed. |
| |
|
380 |
|
| |
|
381 |
|
| |
|
382 |
The original Samba man pages were written by Karl Auer. The |
| |
|
383 |
man page sources were converted to YODL format (another |
| |
|
384 |
excellent piece of Open Source software, available at |
| |
|
385 |
ftp://ftp.icce.rug.nl/pub/unix/ |
| |
|
386 |
---- |