qmail-upgrade(7)

NAME
qmail-upgrade - user-visible differences between qmail and sendmail

INTRODUCTION
You will notice some differences when the system switches from sendmail to qmail.

1.  qmail-local sends incoming mail to ~you/Mailbox by default, not /usr/spool/mail/you. Your system administrator has changed your MAIL environment variable so that your mail reader looks for ~you/Mailbox. (/usr/spool/mail is a massive security problem.)

2.  qmail-local pays no attention to .forward. It has a much better mechanism, .qmail, so that you can handle not only forwarding but even your own mailing lists. See below for more details.

3.  qmail-local pays no attention to /etc/aliases. Your system administrator can use the .qmail mechanism instead. See below.

4.  qmail does not support the \you mechanism for ignoring aliases. The .qmail mechanism is much more flexible; see below.

5.  qmail-inject has a completely different philosophy from sendmail on interpreting non-fully-qualified host names. It uses fixed rules, not DNS. Some examples at UIC:
             russet -> russet.math.uic.edu
             newton -> newton.math.uic.edu
             ut.ee  -> ut.ee  (a host in Estonia)
             ut.ee+ -> ut.ee.uic.edu
             uicvm+ -> uicvm.uic.edu
    Here the default domain name (for hosts without dots) is math.uic.edu, and the plus domain name is uic.edu.

6.  Unlike sendmail, qmail-inject doesn't replace host names with canonical names. Example: qmail-inject won't change postmaster@ftp.cs.berkeley.edu in your header to postmaster@kohler.cs.berkeley.edu.

7.  qmail-local adds a new field, Delivered-To, before every delivery. It uses the contents of Delivered-To to prevent mail forwarding loops.

8.  If you send a message with only Bcc recipients, qmail-inject will add Cc: recipient list not shown:;, rather than sendmail's privacy-invading Apparently-To header field.

QMAIL MAILING LISTS
sendmail deals with aliases, forwarding, and mailing lists at the very heart of the mail system. qmail takes a radically different approach. It gives you the power to set up your own mailing lists without pestering your system administrator. Under qmail, you are in charge of all addresses of the form youBREAKanything. The delivery of youBREAKanything is controlled by ~you/.qmail-anything, a file in your home directory. For example, if you want to set up a bug-of-the-month-club mailing list, you can put a list of addresses into ~you/.qmail-botmc. Any mail to youBREAKbotmc will be forwarded to all of those addresses. Mail directly to you is controlled by ~you/.qmail. You can even set up a catch-all, ~you/.qmail-default, to handle unknown youBREAK addresses. Your .qmail files, like your old .forward, may list files, forwarding addresses, or other programs to run. (But beware that the syntax is a bit different; see dot-qmail(5) for more details.) qmail-local automatically detects forwarding loops the instant they occur, even if they happen indirectly through other hosts. As a helpful special case, if a .qmail file is empty, it refers to ~you/Mailbox. For example, if you touch ~you/.qmail-direct, mail for youBREAKdirect will act like \you did under sendmail. Addresses that don't contain a username are handled by the alias user. For example, your system administrator has set up ~alias/.qmail-postmaster to handle mail for Postmaster. (Note to administrators: ~alias doesn't apply to addresses that start with a user name, with certain exceptions.)

SEE ALSO
addresses(5), dot-qmail(5), envelopes(5), qmail-header(8), qmail-inject(8)