Microsoft developed its first file-sharing protocol, the Server Message Block (SMB), to enable network file and print services for all of Microsoft's operating systems. This protocol is sometimes referred to as LanManager or NetBIOS. After being reworked so it could be encapsulated in the more popular TCP/IP, it was renamed the Common Internet File System (CIFS). Samba is a collection of programs that implements SMB on Linux. Although the Samba suite consists of numerous programs, Samba's two primary components are smbd and nmbd.
smbd is the Samba Server Message Block Daemon, which provides all network file and print services to Windows operating systems. The /etc/smb.conf file describes the services smbd provides, and it must be configured appropriately for your network.
SMB clients request services through NetBIOS. The nmbd program picks up these requests and instructs the clients to use smbd's services. nmbd provides other features,
such as Microsoft Windows's Network Neighborhood and Microsoft WINS databases, to SMB clients.
Roll your mouse over the elements in the GUI to see a description of each feature.
Windows Internet Name Server (WINS): A Microsoft Windows NT component, a WINS server can dynamically update hostnames to IP addresses without requiring manual intervention from the system administrator.
The next lesson shows you how to install and configure a Samba server.
The Samba server software supports the Server Message Block (SMB) and Common Internet File System (CIFS) file- and printer-sharing protocols.
SMB and CIFS are most often used to share resources on local networks consisting of computers running Microsoft Windows. You would not typically share SMB/CIFS files and printers over a public network, such as the Internet. Samba services are off by default in Fedora and RHEL. To have Samba start automatically when you boot your computer, simply type chkconfig smb on as the root user. To start the service now, type service smb start. In order for Samba to be useful, edit the Samba configuration file,
A network protocol that allows hosts to have separate names--tied directly with their capabilities--that may be queried in real-time.