It is currently Thu, 20 Jan 2022 09:40:01 GMT

Author Message
 Linux Electronic Mail HOWTO
Archive-name: linux/howto/mail
Last-modified:  31 August 1993

The Linux Electronic Mail HOWTO
by Vince Skahan, <>
v1.1, Last Modified 31 August 1993

This document describes the setup and care+feeding of Electronic Mail
(e-mail) under Linux.

You need to read this if you plan to communicate locally or to remote sites
via electronic mail.

You probably do *not* need to read this document if don't exchange
electronic mail with other users on your system or with other sites.

0.  Introduction

        The intent of this document is to answer some of the questions and
        comments that appear to meet the definition of 'frequently asked
        questions' about e-mail software under Linux.

        This document and the corresponding UUCP and News 'HOWTO' documents
        collectively supersede the UUCP-NEWS-MAIL-FAQ that has previously
        been posted to comp.os.linux.announce.

0.1 New versions of this document

        New versions of this document will be periodically posted to
        comp.os.linux.announce, comp.answers, and news.answers.  They will
        also be added to the various anonymous ftp sites who archive such
        information including

0.2 Feedback

        I am interested in any feedback, positive or negative, regarding
        the content of this document via e-mail.  Definitely contact me if
        you find errors or obvious omissions.

        I read, but do not necessarily respond to, all e-mail I receive.
        Requests for enhancements will be considered and acted upon based on
        that day's combination of available time, merit of the request, and
        daily {*filter*} pressure :-)

         Flames will quietly go to /dev/null so don't bother.

        Feedback concerning the actual format of the document should go to
        the HOWTO coordinator - Matt Welsh (

0.3 Other sources of information

        comp.mail.elm           the ELM mail system.            The Rand Message Handling system.
        comp.mail.mime          Multipurpose Internet Mail Extensions.
        comp.mail.misc          General discussions about computer mail.
        comp.mail.multi-media   Multimedia Mail.
        comp.mail.mush          The Mail User's Shell (MUSH).
        comp.mail.sendmail      the BSD sendmail agent.
        comp.mail.uucp          Mail in the uucp environment.

        Mailing Lists:

        There is a smail-3.1 mailing list.  

        To join (or get off) the list, send mail to

        make sure that you include the address at which you want to receive
        mail in the text of the message.

        To send a message to the list, send it to


        The following is a non-inclusive set of books that will help...

        'Managing UUCP and USENET' from O'Reilly and Associates is in my
        opinion the best book out there for figuring out the programs and
        protocols involved in being a USENET site.

        'Unix Communications' from The Waite Group contains a nice
        description of all the pieces (and more) and how they fit together.

0.4 Where *NOT* to look for help

        There is nothing 'special' about configuring and running mail under
        Linux (any more).  Accordingly, you almost certainly do *NOT* want
        to be posting generic mail-related questions to the comp.os.linux.*

        Unless your posting is truly Linux-specific (ie, "please tell me
        what routers are already compiled into the SLS1.03 version of
        smail3.1.28") you should be asking your questions in one of the
        newsgroups or mailing lists referenced above.

1.0 Hardware Requirements

        There are no specific hardware requirements for mail under Linux.

        You'll need some sort of 'transport' software to connect to remote
        systems, which means either tcp-ip or uucp.   This could mean that
        you need a modem or ethernet card (depending on your setup).

2.0 Getting the software

        In general, I grab my sources from and the other fine
        archive sites on Internet.  In addition, Linux-specific binary ports
        are found in the SLS distrbution and on the usual Linux anonymous
        ftp sites ( and in particular).

        The newspak-1.7.tar.z distribution contains config files and readme
        files related to building uucp, news, and mail software under Linux
        from the various freely-available sources.  It can usually be found
        on in the directory /pub/Linux/system/Mail.

3.0 Mail 'Transport Agents'

        This section contains information related to 'transport agents',
        which means the underlying software that connects your local system
        to remote systems.

3.1 Smail v3.1

        Smail3.1 seems to be a de-facto standard transport agent for uucp-only
        sites and for some smtp sites.  It compiles without patching from
        the sources.  In addition, smail is provided in binary form in the
        SLS distribution of Linux.

        The newspak distribution contains config files for smail3.1.28 under
        Linux that you can use to start with.

        If you're building smail from sources, you need to have
        CASE_NO_NEWLINES=true in your os/linux file.

        For a uucp-only system that has a MX-record and that wants a
        domainized header (who goes through a smart-host for everything),
        these are the entire config files you'll need:

        replace 'subdomain.domain' with your domain name
        replace 'myhostname' with you un-domainized hostname
        replace 'my_uucp_neighbor' with the uucp name of your upstream site

        #-------- /usr/local/lib/smail/config -----------------
        # domains we belong to
        # who we're known as (fully-qualified-site-name)
        # who we go through
        #---------- /usr/local/lib/smail/paths --------------
        # we're a domainized site, make sure we accept mail to both names
        myhostname        %s
        myhostname.subdomain.domain      %s

        To run smail as a smtp daemon, add the following to /etc/inetd.conf:
                smtp stream tcp nowait  root  /usr/bin/smtpd smtpd

        Outgoing mail gets sent automatically, when using elm. If your
        internet link is down when you send mail, then the mail sits in
        '/usr/spool/smail/input'. When the link next comes up, 'runq' is
        run which causes the mail to be sent.

3.2 Sendmail+IDA

        There is a nice binary distribution of sendmail5.65c+IDA on sunsite
        in pub/Linux/system/Mail that I highly recommend.  I run a uucp-only
        site and use sendmail5.65c+IDA instead of smail3.1.28 due to the
        incredible ease of use.

   To install it...
        - you'll probably want to remove (or rename) all the files from
                smail (see the /install/installed directory if you are SLS)
                to be safe.
        - cd to / then 'gunzip -c sendmail5.65c+IDA.tpz | tar xvf -'
        - cd to /usr/local/src/sendmail5.65c+IDA/ida/cf and copy the example
                local.m4 file to 'yourhostname.m4'.  Edit out the distributed
                hostname, aliases, and smarthost and put in the correct one
                for your site.  The default file is for a uucp-only site
                who has domainized headers.  Then 'make'
                and move the resulting file to /etc/
        - if you are uucp-only, you do *NOT* need to create any of the
                tables mentioned in the README.linux file.  Just edit
                the .m4 file, make, and start testing it.
        - if you're uucp-only and you talk to sites in addition to your
                'smart-host', you'll need to add uucpxtable entries for
                each (or mail to them will also go through the smart host)
                and run dbm against the revised uucpxtable.
        - if you change your .cf file, be sure to refreeze your config
                with /usr/lib/sendmail -bz to make the changes take effect.

        Another nice thing is that if you have mail.debug set and you
        run syslogd, your incoming and outgoing mail messages will get
        logged.  See the /etc/syslog.conf file for details.

3.3 Other 'transport agents'

        The following also are known to run under Linux.  Consult
        'archie' for details regarding how to find them...

                smail2.5 - very simple UUCP-based smail
                sendmail8.5 - the newest non-IDA sendmail from Berkeley

4.0 Mail 'User Agents'

        This section contains information related to 'user agents', which
        means the software the user sees and uses.  This software relies on
        the 'transport agents' mentioned above.

4.1 Elm

        Elm compiles, installs, and runs flawlessly under Linux.  For more
        information, see the elm sources and installation instructions.

        The only thing to know is that Elm's Configure script incorrectly
        sets the 'ranlib' variable in  When Configure gives you
        the chance to edit before proceeding, please do so and
        set "ranlib='ranlib'" or the binaries will compile but not link.

        Elm and filter need to be mode 2755 (group mail) with
        /usr/spool/mail mode 775 and group mail.

        If you use a binary distribution like the one in SLS, you'll need
        to create a /usr/local/lib/elm/elm.rc file to override the compiled-in
        hostname and domain information:

        replace 'subdomain.domain' with your domain name
        replace 'myhostname' with you un-domainized hostname
        replace 'my_uucp_neighbor' with the uucp name of your upstream site

        #---------- /usr/local/lib/elm/elm.rc ------------------
        # this is the unqualified hostname
        hostname = myhostname
        # this is the local domain
        hostdomain = subdomain.domain
        # this is the fully qualified hostname
        hostfullname = myhostname.subdomain.domain

        One thing you want to be aware of is that if you have Elm compiled
        to be MIME-able, you need metamail installed and in your path or
        Elm will not be able to read MIME mail you've received.

4.2 Mailx

        There is a fine binary implementation of mailx located on the various
        Linux archive sites.  Make sure you grab version 5.3b or later since
        there are security problems in v5.3a.

        The only potential problem I'm aware of is that it seems to be
        compiled in a way that requires /usr/lib/smail rather than
        /usr/lib/sendmail as a transport agent.  You probably need a link
        if you run sendmail on your system.

        I strongly recommend removing the old 'edmail' stuff from SLS
        and replacing it with mailx.  This is rumored to be done already
        in the current SLS.

4.3 Other user agents

        The following also are known to run under Linux.  Consult
        'archie' for details regarding how to find them...

        Pine      - from the Univ. of Washington
        Metamail  - allows MIME support
        mh        - yet another way to handle mail
        deliver   - file/process mail based on rules
        procmail  - file/process mail based on rules
        Majordomo - manages e-mail lists
        Mserv     - provide files-by-mail

5.0 Acknowledgements

        The following people have helped in the assembly of the information
        (and experience) that helped make this document possible:

                Steve Robbins, Ian Kluft, Rich Braun, Ian Jackson,
                Syd Weinstein, Ralf Sauther, Martin White, Matt Welsh

        If I forgot anybody, my apologies...

Send submissions for comp.os.linux.announce to:

 Fri, 01 Mar 1996 08:31:12 GMT   
   [ 1 post ] 

Similar Threads

1. Linux Electronic Mail HOWTO (part 1/1)

2. Linux Electronic Mail HOWTO (part 1/1)

3. Linux Electronic Mail HOWTO

4. Linux Electronic Mail HOWTO

5. Linux Electronic Mail HOWTO

6. Linux Electronic Mail HOWTO

7. Linux Electronic Mail HOWTO

8. Linux Electronic Mail HOWTO

9. Linux Electronic Mail HOWTO

10. Linux Electronic Mail HOWTO

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software