Samba (Version 3.0.33)

Documentation & Online Help
What is SMB?
Which LinuX sites are running Samba?
How can I change/get a Samba password?
How to connect to a Samba share at Windows 2000 or XP

The Samba software suite is a collection of programs that implements the Server Message Block (commonly abbreviated as SMB) protocol for UNIX systems. This protocol is sometimes also referred to as the Common Internet File System (CIFS). For a more thorough description, see Samba also implements the NetBIOS protocol in nmbd.

The components of the suite are (in summary):

The smbd daemon provides the file and print services to SMB clients, such as Windows 95/98, Windows NT, Windows for Workgroups or LanManager. The configuration file for this daemon is described in smb.conf(5).
The nmbd daemon provides NetBIOS nameserving and browsing support. The configuration file for this daemon is described in smb.conf.
The smbclient program implements a simple ftp-like client. This is useful for accessing SMB shares on other compatible servers (such as Windows NT), and can also be used to allow a UNIX box to print to a printer attached to any SMB server (such as a PC running Windows NT).
The testparm utility is a simple syntax checker for Samba's smb.conf configuration file.
The testprns utility supports testing printer names defined in your printcap file used by Samba.
The smbstatus tool provides access to information about the current connections to smbd.
The nmblookup tools allows NetBIOS name queries to be made from a UNIX host.
The smbpasswd command is a tool for changing LanMan and Windows NT password hashes on Samba and Windows NT servers.
The smbcacls command is a tool to set ACL’s on remote CIFS servers.
The smbsh command is a program that allows you to run a unix shell with an overloaded VFS.
The smbtree command is a text-based network neighborhood tool.
The smbtar can make backups of data on CIFS/SMB servers.
smbspool is a helper utility for printing on printers connected to CIFS servers.
smbcontrol is a utility that can change the behaviour of running samba daemons.
rpcclient is a utility that can be used to execute RPC commands on remote CIFS servers.
The pdbedit command can be used to maintain the local user database on a samba server.
The findsmb command can be used to find SMB servers on the local network.
The net command is supposed to work similar to the DOS/Windows NET.EXE command
swat is a web-based interface to configuring smb.conf.
winbindd is a daemon that is used for integrating authentication and the user database into unix.
wbinfo is a utility that retrieves and stores information related to winbind.
editreg is a command-line utility that can edit windows registry files.
profiles is a command-line utility that can be used to replace all occurences of a certain SID with another SID.
log2pcap is a utility for generating pcap trace files from Samba log files.
vfstest is a utility that can be used to test vfs modules.
The ntlm_auth is a helper-utility for external programs wanting to do NTLM-authentication.
smbmount(8), smbumount(8), smbmnt(8)
smbmount, smbumount and smbmnt are commands that can be used to mount CIFS/SMB shares on Linux.
smbcquotas is a tool that can set remote QUOTA’s on server with NTFS 5.

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.

Documentation & Online Help

  • Man Pages: samba(7), smbd(8), nmbd(8), smbpasswd(5), smbstatus(1), smbcontrol(1), pdbedit(8), tdbbackup(8), tdbdump(8), swat(8);
    smbpasswd(8), smb.conf(5), net(8), lmhosts(5), smbcquotas(1), ntlm_auth(1), profiles(1), testparm(1), testprns(1), wbinfo(1), winbindd(8);
    findsmb(1), nmblookup(1), smbclient(1), rpcclient(1), smbacls(1), smbtar(1), smbtree(1), smbmnt(8), smbmount(8), smbumount(8) smbspool(8).

What is SMB

SMB, which stands for Server Message Block, is a "native" networking protocol used by MS-DOS based (in a very broad sense, including derivatives) clients for sharing files, printers, serial ports, and communications abstractions such as named pipes and mail slots between computers.

SMB is an important protocol because of the large number of PCs out there that already have client and server implementations running on them. All Windows for Workgroups, Windows 95 and Windows NT systems are (or are capable of) running SMB as either a client, a server, or both.

SMB is becoming very popular, mainly owing to these factors:

  • Windows 95 has dial-up access to PPP servers with an included service, and this service allows one to "browse" to public shares on the Internet.
  • Samba is "free" and this is a lot less expensive than Novell! (friendlier too!)
  • With Samba, Unix servers, well connected to a global network, can speak in a "native" protocol of clients. It is much simpler to maintain one more protocol on a capable server than teach new tricks to multiple clients which were never meant to do something else.
  • There is an established, well tested way of doing SMB over TCP/IP described in publicly available RFC 1001 and RFC 1002 documents. This means that SMB has a head start when it comes to Internet integration.

The Common Internet Filesystem (CIFS) is what the new SMB initiative is called. For details watch

Which LinuX sites are running Samba?

The "samba" server program is running on the two LinuX stations:

yeti (= Print Server "Yeti"!) (Version 3.0.33)
obiwan (= Print Server "Obiwan"!) (Version 3.0.33)

The name of the Workgroup of the two LinuX sites is "THEORIE". All home directories at the LinuX Cluster are shared via samba at yeti and obiwan, so that users with access to that directories can mount them from platforms running Windows 9x, 2000 and XP using the account name and its affiliated Samba password.

How can I change/get a Samba password?

This Samba version has been compiled with encrypted passwords. Thus you cannot use Samba until you have set your Samba password on the appropriate site of the LinuX cluster.

The program smbpasswd allows users to change their encrypted smb password which is stored in the smbpasswd file. (Note: The Samba password may not be identical to the UNIX password as they may not be identical at the different Samba servers!) Ordinary users can only run the command with no options. It will prompt them for their old smb password and then ask them for their new password twice, to ensure that the new password was typed correctly. No passwords will be echoed on the screen whilst being typed:

% smbpasswd
Old SMB password: <type old value here>
New SMB Password: <type new value>
Retype new SMB password: <re-type new value>

If the old value does not match the current value stored for that user, or the two new values do not match each other, then the smb password will not be changed.

smbpasswd is designed to work in the same way and be familiar to UNIX users who use the passwd or yppasswd commands.

Note: If you don't have a Samba account, please contact the system administrator.

How to connect to a Samba share at Windows 2000 or XP

To connect to a Samba share start the Windows Explorer or use the My Network Places icon on your desktop.

  1. Double-click the My Network Places icon on your desktop or from the Windows Explorer.
  2. The first icon on the list is Entire Network. Double-click this icon to see all of the Network providers or other domains and networks that are on your entire network.
  3. Double-click the Microsoft Windows Network icon to see a list of the Microsoft Windows Workgroups on your network.
  4. Choose the Theorie icon and select the computer name you want to connect to. (If the computer name is not listed, use the search computer item in your Windows Explorer to get it listed.)
  5. The Enter Network Password dialog box appears. By default, you are connected under the username you used to log on to your Windows site. If you want to connect under a different username, type it in the Connect As box.
  6. Type the password in the Password box and choose the OK button.