In the beginning, Samba servers were managed solely by a text configuration file named smb.conf. Today settings are mixed between the smb.conf file and local database files in /usr/local/samba/var/locks (or the location specified by the lock directory setting in smb.conf). The database (tdb) files are normally managed through command-line tools such as pdbedit or net and Windows management tools such as User Manager or MMC plug-ins. There are several editing tools for smb.conf, such as SWAT, but most administrators still prefer to fire up their favorite text editor.
In previous chapters, we introduced some of the basic smb.conf settings, yet we have so far barely scratched the surface. At last count, there are more than 360 configuration options defined in the Samba source code. Though this sounds intimidating, approximately 90 percent of installations require less than one-quarter of the available options (or parameters; we use these terms interchangeably). Consider how much functionality we were able to obtain with fewer than a dozen in Chapter 2. For this reason, we do not discuss every option. Rather, our approach is present the common and necessary parameters in the context of a working server. If you require a full reference, the smb.conf manpage, available both in the documentation and on the Samba web site, contains an alphabetical index of all the configuration options and their meanings.
In this chapter, we introduce the structure of the Samba configuration file and show you how to use options to create and modify disk shares. In subsequent chapters, we discuss browsing, how to configure users, security, printing, and other topics related to implementing Samba on your network.