The following is a brief introduction to the individual Samba
daemons and services, as well as details on how to start and stop
Samba is comprised of three daemons (smbd, nmbd, and winbindd). Two services (smb and windbind) control
how the daemons are started, stopped, and other service-related
features. Each daemon is listed in detail, as well as which
specific service has control over it.
The smbd server daemon provides file
sharing and printing services to Windows clients. In addition, it
is responsible for user authentication, resource locking, and data
sharing through the SMB protocol. The default ports on which the
server listens for SMB traffic are TCP ports 139 and 445.
The smbd daemon is controlled by the
The nmbd server daemon understands and
replies to NetBIOS name service requests such as those produced by
SMB/CIFS in Windows-based systems. These systems include Windows
95/98/ME, Windows NT, Windows 2000, Windows XP, and LanManager
clients. It also participates in the browsing protocols that make
up the Windows Network Neighborhood view.
The default port that the server listens to for NMB traffic is UDP
The nmbd daemon is controlled by the
The winbind service resolves user and
group information on a Windows NT server and makes it
understandable by UNIX platforms. This is achieved by using
Microsoft RPC calls, Pluggable Authentication Modules (PAM), and
the Name Service Switch (NSS). This allows Windows NT domain users
to appear and operate as UNIX users on a UNIX machine. Though
bundled with the Samba distribution, the winbind service is controlled separately from the
The winbindd daemon is controlled by
the winbind service and does not require
the smb service to be started in order to
operate. Because winbind is a client-side
service used to connect to Windows NT based servers, further
discussion of winbind is beyond the scope
of this manual.
To start a Samba server, type the following command in a shell
prompt while logged in as root:
To set up a domain member server, you must first join the domain
or Active Directory using the net join
command before starting the smb service.
To stop the server, type the following command in a shell prompt
while logged in as root:
The restart option is a quick way of
stopping and then starting Samba. This is the most reliable way to
make configuration changes take effect after editing the
configuration file for Samba. Note that the restart option starts
the daemon even if it was not running originally.
To restart the server, type the following command in a shell
prompt while logged in as root:
/sbin/service smb restart
The condrestart (conditional restart) option only starts smb on the condition that it is currently running.
This option is useful for scripts, because it does not start the
daemon if it is not running.
When the smb.conf file is changed,
Samba automatically reloads it after a few minutes. Issuing a
manual restart or reload is just as affective.
To conditionally restart the server, type the following command
/sbin/service smb condrestart
A manual reload of the smb.conf file
can be useful in case of a failed automatic reload by the
smb service. To ensure that the Samba
server configuration file is reloaded without restarting the
service, type the following command as root:
By default, the smb service does
not start automatically at boot time. To
configure Samba to start at boot time, use an initscript utility,
such as /sbin/chkconfig, /sbin/ntsysv, or the Services
Configuration Tool program. Refer to the chapter titled
Controlling Access to Services in the
Red Hat Enterprise Linux System Administration
Guide for more information regarding these tools.