O'Reilly logo

qmail by John Levine

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 8. Delivering and Routing Local Mail

Mail isn’t very useful unless it’s delivered successfully. This chapter looks at delivering mail addressed to local mailboxes, both for local delivery and for redelivery elsewhere.

Mail to Local Login Users

Local login users usually receive mail in mbox format in ~/Mailbox and ~/.mail.[1] Or they receive mail in Maildir format in ~/Maildir/.

Local Delivery .qmail Files and Default Delivery Rules

In the simplest case, a user’s .qmail file needs to contain only a single line to specify the user’s mailbox, either the mbox format mailbox:

# deliver into $HOME/Mailbox
./Mailbox

or the Maildir:

# deliver into a file in $HOME/Maildir/
./Maildir/

I suggest that every shell user should have a .qmail file (add it to the set of skeleton files that your adduser procedure creates), but for users who don’t, be sure to set a reasonable default as the argument to qmail-start in /service/qmail/run, as described in Chapter 3.

Maildirs and Mail Clients

Although Maildirs have all sorts of advantages over mboxes, they are not supported in many mail clients. For the popular elm and pine clients, qmail provides small scripts, elq and pinq, which move mail from the Maildir into an mbox, then run the client. These use the maildir2mbox utility, which requires three environment variables to be set. MAIL is the mbox file, usually $HOME/Mailbox. MAILTMP is the name of a temporary file used to hold a copy of the updated mbox, which must be on the same filesystem as $MAIL, ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required