nmbd - NetBIOS name server to provide NetBIOS over IP naming services to clients
nmbd [ -D ] [ -a ] [ -i ] [ -o ] [ -P ] [ -h ] [ -V ] [ -d <debug level> ] [ -H
<lmhosts file> ] [ -l <log directory> ] [ -n <primary netbios name> ] [ -p <port num-
ber> ] [ -s <configuration file> ]
This program is part of the Samba suite.
nmbd is a server that understands and can reply to NetBIOS over IP name service requests,
like those produced by SMB/CIFS clients such as Windows 95/98/ME, Windows NT, Windows
2000, and LanManager clients. It also participates in the browsing protocols which make up
the Windows "Network Neighborhood" view.
SMB/CIFS clients, when they start up, may wish to locate an SMB/CIFS server. That is, they
wish to know what IP number a specified host is using.
Amongst other services, nmbd will listen for such requests, and if its own NetBIOS name is
specified it will respond with the IP number of the host it is running on. Its "own Net-
BIOS name" is by default the primary DNS name of the host it is running on, but this can
be overridden with the -n option (see OPTIONS below). Thus nmbd will reply to broadcast
queries for its own name(s). Additional names for nmbd to respond on can be set via param-
eters in the smb.conf(5) configuration file.
nmbd can also be used as a WINS (Windows Internet Name Server) server. What this basically
means is that it will act as a WINS database server, creating a database from name regis-
tration requests that it receives and replying to queries from clients for these names.
In addition, nmbd can act as a WINS proxy, relaying broadcast queries from clients that do
not understand how to talk the WINS protocol to a WIN server.
-D If specified, this parameter causes nmbd to operate as a daemon. That is, it
detaches itself and runs in the background, fielding requests on the appropriate
port. By default, nmbd will operate as a daemon if launched from a command shell.
nmbd can also be operated from the inetd meta-daemon, although this is not recom-
-a If this parameter is specified, each new connection will append log messages to the
log file. This is the default.
-i 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.
-o If this parameter is specified, the log files will be overwritten when opened. By
default, smbd will append entries to the log files.
-h Prints the help information (usage) for nmbd.
NetBIOS lmhosts file. The lmhosts file is a list of NetBIOS names to IP addresses
that is loaded by the nmbd server and used via the name resolution mechanism name
resolve order described in smb.conf(5) to resolve any NetBIOS name queries needed
by the server. Note that the contents of this file are NOT used by nmbd to answer
any name queries. Adding a line to this file affects name NetBIOS resolution from
this host ONLY.
The default path to this file is compiled into Samba as part of the build process.
Common defaults are /usr/local/samba/lib/lmhosts, /usr/samba/lib/lmhosts or
/etc/lmhosts. See the lmhosts(5) man page for details on the contents of this
-V Prints the version number for nmbd.
-d <debug level>
debuglevel is an integer from 0 to 10. The default value if this parameter is not
specified is zero.
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.
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 cryp-
Note that specifying this parameter here will override the log level parameter in
the smb.conf file.
-l <log directory>
The -l parameter specifies a directory into which the "log.nmbd" log file will be
created for operational data from the running nmbd server. The default log direc-
tory is compiled into Samba as part of the build process. Common defaults are
/usr/local/samba/var/log.nmb, /usr/samba/var/log.nmb or /var/log/log.nmb. Beware:
If the directory specified does not exist, nmbd will log to the default debug log
location defined at compile time.
-n <primary NetBIOS name>
This option allows you to override the NetBIOS name that Samba uses for itself.
This is identical to setting the NetBIOS name parameter in the smb.conf file. How-
ever, a command line setting will take precedence over settings in smb.conf.
-p <UDP port number>
UDP port number is a positive integer value. This option changes the default UDP
port number (normally 137) that nmbd responds to name queries on. Don't use this
option unless you are an expert, in which case you won't need help!
-s <configuration file>
The default configuration file name is set at build time, typically as
/usr/local/samba/lib/smb.conf, but this may be changed when Samba is autoconfig-
The file specified contains the configuration details required by the server. See
smb.conf(5) for more information.
If the server is to be run by the inetd meta-daemon, this file must contain suit-
able startup information for the meta-daemon. See the UNIX_INSTALL.html document
or whatever initialization script your system uses).
If running the server as a daemon at startup, this file will need to contain an
appropriate startup sequence for the server. See the UNIX_INSTALL.html document for
If running the server via the meta-daemon inetd, 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 UNIX_INSTALL.html document for details.
This is the default location of the smb.conf server configuration file. Other com-
mon places that systems install this file are /usr/samba/lib/smb.conf and
When run as a WINS server (see the wins support parameter in the smb.conf(5) man
page), nmbd will store the WINS database in the file wins.dat in the var/locks
directory configured under wherever Samba was configured to install itself.
If nmbd is acting as a browse master (see the local master parameter in the
smb.conf(5) man page, nmbd will store the browsing database in the file browse.dat
in the var/locks directory configured under wherever Samba was configured to
To shut down an nmbd process it is recommended that SIGKILL (-9) NOT be used, except as a
last resort, as this may leave the name database in an inconsistent state. The correct
way to terminate nmbd is to send it a SIGTERM (-15) signal and wait for it to die on its
nmbd will accept SIGHUP, which will cause it to dump out its namelists into the file
namelist.debug in the /usr/local/samba/var/locks directory (or the var/locks directory
configured under wherever Samba was configured to install itself). This will also cause
nmbd to dump out its server database in the log.nmb file.
The debug log level of nmbd may be raised or lowered using smbcontrol(1)
(SIGUSR[1|2] signals are no longer used in Samba 2.2). This is to allow transient prob-
lems to be diagnosed, whilst still running at a normally low log level.
One of the common causes of difficulty when installing Samba and SWAT is the existsnece of
some type of firewall or port filtering software on the Samba server. Make sure that the
appropriate ports outlined in this man page are available on the server and are not cur-
rently being blocked by some type of security software such as iptables or "port sentry".
For more troubleshooting information, refer to the additional documentation included in
the Samba distribution.
This man page is correct for version 2.2 of the Samba suite.
inetd(8), smbd(8) smb.conf(5)
and the Internet RFC's rfc1001.txt, rfc1002.txt. In addition the CIFS (formerly SMB)
specification is available as a link from the Web page http://samba.org/cifs/
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.
The original Samba man pages were written by Karl Auer. The man page sources were con-
verted to YODL format (another excellent piece of Open Source software, available at
ftp://ftp.icce.rug.nl/pub/unix/ <URL:ftp://ftp.icce.rug.nl/pub/unix/>) and updated for the
Samba 2.0 release by Jeremy Allison. The conversion to DocBook for Samba 2.2 was done by
19 November 2002 NMBD(8)