The sendmail daemon can be run in either of two ways. One way is to have to have it run from the inetd daemon; the alternative, and more commonly used method is to run sendmail as a standalone daemon. It is also common for mailer programs to invoke sendmail as a user command to accept locally generated mail for delivery.
When running sendmail in standalone mode, place the command in an rc file so it starts at boot time. The syntax used is commonly:
/usr/sbin/sendmail -bd -q10m |
To run sendmail from the inetd network daemon, you'd use an entry like:
smtp stream tcp nowait nobody /usr/sbin/sendmail -bs |
The runq command is usually a symlink to the sendmail binary and is a more convenient form of:
# sendmail -q |
When sendmail is invoked this way, it processes any mail waiting in the queue to be transmitted. When running sendmail from inetd you must also create a cron job that runs the runq command periodically to ensure that the mail spool is serviced periodically.
A suitable cron table entry would be similar to:
# Run the mail spool every fifteen minutes 0,15,30,45 * * * * /usr/bin/runq |
In most installations sendmail processes the queue every 15 minutes as shown in our crontab example, attempting to transmit any messages there.