This chapter will give you a quick introduction to setting up smail, and an overview of the functionality it provides. Although smail is largely compatible with sendmail in its behaviour, their configuration files are completely different.
The main configuration file is the /usr/lib/smail /config. You always have to edit this file to reflect values specific to your site. If you are only a UUCP leaf site, you will have relatively little else to do, ever. Other files that configure routing and transport options may also be used; they will be dealt with briefly, too.
By default, smail processes and delivers all incoming mail immediately. If you have relatively high traffic, you may instead have smail collect all messages in the so-called queue, and process it at regular intervals only.
When handling mail within a TCP/IP network, smail is frequently run in daemon mode: at system boot time, it is invoked from rc.inet2, and puts itself in the background where it waits for incoming TCP connections on the SMTP port (usually port 25). This is very beneficial whenever you expect to have a significant amount of traffic, because smail isn't started up separately for every incoming connection. The alternative would be to have inetd manage the SMTP port, and have it spawn smail whenever there is a connection on this port.
smail has a lot a flags that control it behavior; describing them in detail here wouldn't make help you much. Fortunately, smail supports a number of standard modes of operation that are enabled when you invoke it by a special command name, like rmail, or smtpd. Usually, these aliases are symbolic links to the smail binary itself. We will encounter most of them when discussing the various features of smail.
There are two links to smail you should have under all circumstances; namely /usr/bin/rmail and /usr/sbin/sendmail. When you compose and send a mail message with a user agent like elm, the message will be piped into rmail for delivery, with the recipient list given to it on the command line. The same happens with mail coming in via UUCP. Some versions of elm, however, invoke /usr/sbin/sendmail instead of rmail, so you need both of them. For example, if you keep smail in /usr/local/bin, type the following at the shell prompt:
If you want to dig further into the details of configuring smail, please refer to the manual pages smail(1) and smail(5). If it isn't included in your favorite distribution, you can get it from the source to smail.