allanswers.org - Filtering Mail FAQ

 Home >  Internetmail >

Filtering Mail FAQ

Section 1 of 2 - Prev - Next


Archive-name: mail/filtering-faq
Posting-frequency: approximately monthly
Last-modified: 4 October 1996
Copyright: See section 7.0
FAQ-launcher-URLs: http://www.jazzie.com/ii/faqs/archive/mail/filtering-faq/
                   http://www.best.com/~ii/faqs/archive/mail/filtering-faq/

 All current hypertext versions of this FAQ are accessible through either
 of the above two "FAQ Launcher" URLs.  If you want to link to this FAQ,
 please link to these launchers rather than to only one version of the FAQ
 (e.g., rather than linking to the version you are viewing right now!). 
 This will give your users a choice of which version they access, e.g., a
 single-file version or an index-plus-multiple-files version.  Also, please
 give links to both mirrors of the launcher since sometimes one or the
 other is down. 


           _____________________________________________________
  ________|                                                     |________
  \       |                  FILTERING MAIL FAQ                 |       /
   \      |    Copyright (c) 1994-96 Nancy McGough and others   |      /
   /      |_____________________________________________________|      \
  /___________)                                              (__________\


  TABLE OF CONTENTS

  0.0 Preliminaries
      0.1 Getting the Latest Version of this FAQ
          0.1.1 Hypertext
          0.1.2 Plain Text
      0.2 Terminology
      0.3 Notation
  1.0 Mail Folder Strategies
      1.1 Naming Incoming Mail Folders
      1.2 Reading Incoming Mail Folders
  2.0 Procmail
      2.1 Setting Up Procmail
          2.1.1 Is Procmail on Your System?
          2.1.2 Setting Up Procmail for Testing
          2.1.3 Testing
          2.1.4 Setting Up Procmail to Filter Mailing List Messages
      2.2 Troubleshooting Procmail
          2.2.1 General Strategies
          2.2.2 Alternate .forward files
      2.3 Explanation of Test Recipe
      2.4 Tracking Your Incoming Mail
      2.5 Procmail References
  3.0 Mailagent
      3.1 Setting Up Mailagent
      3.2 Tracking Your Incoming Mail
      3.3 How Safe Mailagent Processing Is?
      3.4 Locking Under Mailagent
      3.5 Folder Types Supported
      3.6 Mailagent References
  4.0 Filter
      4.1 Setting up Filter
      4.2 Tracking Your Incoming Mail
      4.3 Filter References
  5.0 Mailer and Newsreader References
  6.0 Contributors
      6.1 Acknowledgements
      6.2 Contributing to this FAQ
  7.0 Copyright Notice

----------------------------------------------------------------------

From: FAQ Editor 
Subject: 0.0 Preliminaries

Q: How can I have my incoming mailing-list messages automatically put
   into appropriate folders?

This is one of the most frequently asked questions about email.  This
FAQ provides basic instructions for Unix users to set up either
procmail, mailagent, or elm's filter to filter incoming mailing-list
messages.  If you have a choice, I recommend procmail which is
powerful, robust, and is actively developed and supported.

All these mail processors can also be set up to filter other types of
incoming messages, send automated replies, etc.  For instructions see
the relevant references listed below.

------------------------------

From: FAQ Editor 
Subject:     0.1 Getting the Latest Version of this FAQ

If this FAQ is over a couple months old, there may be an updated
version.  Please get the latest hypertext or plain text version from
one of the places listed below.

------------------------------

From: FAQ Editor 
Subject:         0.1.1 Hypertext

The best way to read this FAQ (and most other FAQs too) is to view
the hypertext version using a Web browser such as Cello, Lynx,
Mosaic, Netscape Navigator, Microsoft Internet Explorer, OmniWeb, 
SpiderWoman or WinWeb.  This will allow you to easily jump:
   * between subjects in the FAQ
   * to any Uniform Resource Locator (URL) in the FAQ
   * to an Internet Request For Comments document (RFC)
   * to some manual pages

This, and all FAQs that are crossposted to news.answers, are available at
the following hypertext FAQ archives:
 http://www.cs.ruu.nl/cgi-bin/faqwais/
 http://www.lib.ox.ac.uk/search/search_faqs.html
 http://www.smartpages.com/bngfaqs/top.html

All hypertext versions of this particular FAQ are accessible through
either of these "FAQ Launcher" URLs:
  http://www.jazzie.com/ii/faqs/archive/mail/filtering-faq/
  http://www.best.com/~ii/faqs/archive/mail/filtering-faq/

------------------------------

From: FAQ Editor 
Subject:         0.1.2 Plain Text

The plain text version is regularly posted to comp.mail.misc,
comp.mail.elm, comp.mail.mh, comp.mail.mush, comp.mail.pine,
comp.mail.zmail, comp.answers, and news.answers.  It's
in digest format which means that you may be able to use your
newsreader to easily move between digest items (e.g., nn uses G% to
burst a digest and trn uses ^G to jump to the next digest item).

The plain text FAQ is also available through:

Anonymous FTP:
 ftp://rtfm.mit.edu/pub/usenet/news.answers/mail/filtering-faq

Email:
 Send mail to:
    mail-server@rtfm.mit.edu 

 Containing the following in the body of the message:
    send usenet/news.answers/mail/filtering-faq

UUCP:
 uunet!/archive/usenet/news.answers/mail/filtering-faq

Hard Copy:
 A printed version of this FAQ is in Chapter 25 of the book 
 "Internet Secrets" by John R. Levine and Carol Baroudi; published 
 1995 by IDG Books; ISBN 1-56884-452-2.

------------------------------

From: FAQ Editor 
Subject:     0.2 Terminology

  Term               Meaning
  ====               =======
  mailer or MUA      Mail user agent such as pine or elm
  pico               PIne COmposer - a user friendly editor
  reader             Mailer, newsreader, or Web browser that can read 
                     mail folders
  regular expression Text that can include "wild cards" (such as . to
                     match any single character); used for searching
  ^x                 Press the Ctrl key and then, while holding down the 
                     Ctrl key, press the x key
  ~ or $HOME         Your home directory.  You can always get to your
                     home directory by typing `cd'.

------------------------------

From: FAQ Editor 
Subject:     0.3 Notation

Notation  Meaning
========  =======
TextName  placeholder; replace with appropriate text
    placeholder; replace with appropriate text without the angle brackets
`text'    text you type but without the quotes
"text"    text you type including the double quotes
'text'    text you type including the single quotes
[Key]     press the key, e.g., [Space], [Enter], or [Tab]

------------------------------

From: FAQ Editor 
Subject: 1.0 Mail Folder Strategies

It is a good idea to come up with a system for naming and reading
your mail folders.  With a good system, you will have an easier time
managing the hundreds (or thousands!) of messages you will receive.

------------------------------

From: FAQ Editor 
Subject:     1.1 Naming Incoming Mail Folders

For my incoming mail folders I use names that start with `IN'.  For
example, I put mail sent to the procmail mailing list into a folder
named IN.procmail.  This way when all my folders are listed
alphabetically the incoming folders are together and near the top.
They are near the top because Unix is case sensitive and upper case
letters come before lower case letters in an ascii sort.

Of course, you can use any names you like for your mail folders!

------------------------------

From: FAQ Editor 
Subject:     1.2 Reading Incoming Mail Folders

Here are some instructions for opening a mail folder that's in the
default folder directory for some mailers and newsreaders.

         Default Folder  
 Reader   Directory      Command line command  From within reader
 ======  ==============  ====================  ==================
 elm     ~/Mail          elm -f =folder        c =folder
 pine    ~/mail          pine -if folder       G folder
 mail    ~/mail          mail -f /path/folder
 nn      ~/News          nn +folder            G +folder
 
(Please send me information for other mailers and newsreaders.)

Pine has an incoming-folder variable which you can use to list your
incoming folders in a separate section of your folder list (to view
your folder list in Pine, type `L').  Setting this variable also
allows you to use the Tab key to step through all new messages in all
your incoming folders.  For more information see the question "How
can I filter messages into different incoming folders?" in the Pine
FAQ:

  http://www.cac.washington.edu/pine/QandA/FAQs.html#xtocid178164


IMPORTANT NOTE 
============== 
If you are going to be editing your incoming mail folder, e.g.,
deleting messages, then your filtering program and your folder reader
should use locking schemes that work together.  Otherwise, if mail is
delivered at the same time that you are deleting a message your
folder may be corrupted.  To learn more about locking see the
question "What is folder locking and how does it work?" in the Pine
FAQ.  This is useful to read even if you don't use Pine as your
mailer.

 http://www.cac.washington.edu/pine/QandA/sysadmins.html#xtocid7145

Most mailers, such as pine and elm, use lock a file named
`folder.lock' to lock the folder named `folder'.  Note that nn does
not lock folders so you probably don't want to use nn to delete
messages in a folder that is receiving incoming messages.  (Please
send me info about locking in other mailers and newsreaders.)

For more information about specific mailers and newsreaders, see the
relevant documentation, such as man pages and Web pages.  Some
pointers to documentation are listed in section 5.0.

------------------------------

From: FAQ Editor 
Subject: 2.0 Procmail

Procmail is a powerful mail processor that can be used to process your
mail messages either as they arrive or after they are in a mail folder.  
To find out how to process an existing mail folder see the NOTES section
of the procmail(1) man page.

------------------------------

From: FAQ Editor 
Subject:     2.1 Setting Up Procmail

To set up and test procmail, follow the ten steps given in sections
2.1.1 through 2.1.4 below.

------------------------------

From: FAQ Editor 
Subject:         2.1.1 Is Procmail on Your System?

1]  To find out if procmail is on your system and what the full path to 
    it is, type one of the following commands:

      Shell      Command
      =====      =======
      csh        which procmail
      sh or ksh  type procmail
      various    whereis procmail
      various    where procmail

    Make a note of the full path to procmail because this is needed in
    step 5b below.  You can find out the version by typing:

      procmail -v

   The latest released version, as of 15 April 1995, is 3.10.
   Version 3.11 should be out soon.  If your system doesn't have
   procmail or doesn't have the latest version, you may want to ask
   your system administrator to install it.  The procmail package of
   tools is at:

 ftp://ftp.informatik.rwth-aachen.de/pub/packages/procmail/procmail.tar.gz

   If your sys admin isn't able to do this, use a different mail
   processor like mailagent (described in section 3 of this FAQ) or
   filter (described in section 4).

------------------------------

From: FAQ Editor 
Subject:         2.1.2 Setting Up Procmail for Testing

2a] Create ~/.procmailrc.  

     cd
     pico .procmailrc

    NOTE: Throughout this article I use pico for editing files.
          Replace `pico' with your editor.

2b] Enter a modified version of the following in your ~/.procmailrc.
    Note that lines that begin with # are comments and are ignored by
    procmail.

     #Set on when debugging
     VERBOSE=off
 
     #Replace `mail' with your mail directory (Pine uses mail, Elm uses Mail)
     MAILDIR=$HOME/mail
     
     #Directory for storing procmail log and rc files
     PMDIR=$HOME/.procmail
     
     LOGFILE=$PMDIR/log
     INCLUDERC=$PMDIR/rc.testing
     INCLUDERC=$PMDIR/rc.maillists

3] Create the directory where you will store your procmail log and rc files 
   (this is $PMDIR that you set above).

     cd
     mkdir .procmail


4a] Create an rc (run commands) file for testing:

     cd .procmail
     pico rc.testing


4b] Enter the following in ~/.procmail/rc.testing:

      :0:
      * ^Subject:.*test
      IN.testing

    Note that the first line contains a zero (0), not the letter "oh".
    For now, don't worry about the meaning of this recipe.  It is
    explained in 2.3 "Explanation of Test Recipe."


5a] Create a ~/.forward file by typing the following. (Pico's -w flag tells 
    pico not to auto wrap lines.)

     cd
     pico -w .forward



5b] Enter a modified version of the following in your ~/.forward:


     "|IFS=' ' && exec /usr/local/bin/procmail -f- || exit 75 #nancym"


    == IMPORTANT NOTES ==
    * Make sure you include all the quotes, both double (") and single (').
    * The vertical bar (|) is a pipe.
    * Replace /usr/local/bin with the correct path for procmail (see step 1).
    * Replace `nancym' with your userid.  You need to put your userid in 
      your .forward so that it will be different than any other .forward file 
      on your system.
   
    * Do NOT use ~ or environment variables, like $HOME, in your .forward
      file.  If procmail resides below your home directory write out the 
      *full* path.


5c] On many systems you need to make your .forward world 
    readable and your home directory world searchable in order for the
    mail transport agent to "see" it.  To do this type:
   
      cd
      chmod 644 .forward
      chmod a+x .

------------------------------

From: FAQ Editor 
Subject:         2.1.3 Testing

6] Send yourself two test messages: one with `test' in the subject
   and one without `test' in the subject.


7] Start your mailer (pine, elm, etc.) and check that the messages
   were delivered correctly.  The one with `test' in the subject
   should be in the folder $MAILDIR/IN.testing and the one without 
   `test' in the subject should be in your inbox.  

   If these were not delivered correctly, see section 2.2 on
   "Troubleshooting Procmail" section below.

------------------------------

From: FAQ Editor 
Subject:         2.1.4 Setting Up Procmail to Filter Mailing List Messages

8a] Once you have successfully tested procmail in steps 6 and 7, create 
     rc.maillists for filtering incoming mailing-list messages into mail 
     folders.
  
      cd
      cd .procmail
      pico rc.maillists


8b] In rc.maillists, create a recipe, like the two example recipes
    below, for each of your mailing lists.

     :0:
     * ^TOwww-talk
     IN.www-talk

     :0:
     * ^TOprocmail
     IN.procmail
     
     The first recipe filters the www-talk mailing list and the second 
     recipe filters the procmail mailing lists.  The meaning of the first 
     recipe is as follows:

     Notation      Meaning
     ========      =======
     :0            Begin a recipe
       :           Use a lock file
     *             Begin a condition 
       ^TO         Match ``To:'' ``Cc:'' or other synonyms for To at the
                   beginning of a line, followed by any or no characters,
                   followed by....
          www-talk  ``www-talk''
     IN.www-talk   If successful match, put in folder $MAILDIR/IN.www-talk

  
     IMPORTANT NOTES
     ===============
     * ^TO is not a normal regular expression; it is a special
       procmail expression that is designed to catch any destination
       specification.  For details, see the MISCELLANEOUS section of
       the procmailrc(5) man pages.

     * Do not put a space between the caret (^) and the word `TO' in
       `^TO'.

     * Do not put a space between the `^TO' and the text that you are
       matching on; it must be `^TOtext'.

     * Both letters in `TO' must be capitalized.
       

9]  Repeat steps 6 and 7 to make sure that things are still working.


10]  Comment out the rc.testing line in you .procmailrc file so that it looks 
     like this:
          
       VERBOSE=off
       MAILDIR=$HOME/mail
       PMDIR=$HOME/.procmail
       LOGFILE=$PMDIR/log
       # INCLUDERC=$PMDIR/rc.testing
       INCLUDERC=$PMDIR/rc.maillists

     NOTE: Leaving the rc.testing line in your .procmailrc file is
           useful for future testing.

------------------------------

From: FAQ Editor 
Subject:     2.2 Troubleshooting Procmail

If messages are not delivered correctly, here are steps you can use to
try to solve the problem.

------------------------------

From: FAQ Editor 
Subject:         2.2.1 General Strategies

1]    Look at your $LOGFILE (~/.procmail/log) to see if you can
      determine what the problem is.

2]    Check these three files for typos:
        ~/.forward
        ~/.procmailrc
        ~/.procmail/rc.testing

3]    Check the file and directory permissions of your .forward (set in 
      5c in "Setting up Procmail for Testing" above).

      Type...          In order to...
      -------          --------------
      cd               Go to your home directory.
      
      ls -l .forward   Check the permission: it should say -rw-r--r--
      
      ls -ld .         Check permission of home dir: it should say drwx?-x?-x
                       The ?'s may be r's or hyphens or one of each (i.e.,
                       drwx--x--x, drwxr-xr-x, drwxr-x--x, drwx--xr-x are
                       each acceptable.)
      

4]    If the above three steps do not locate the problem edit your 
      ~/.procmailrc so that it contains:

        VERBOSE=on

      Test procmail by following steps 6 and 7 again.  Look at your
      $LOGFILE (which will contain verbose messages) to see if you
      can now determine what the problem is.

      If you are still having problems see the next section on
      "Alternate .forward Files."  After you get procmail to work, 
      you probably will want to set VERBOSE back to off.

------------------------------

From: "Stephen R. van den Berg" 
Subject:         2.2.2 Alternate .forward files

If the .forward template in 5b above doesn't work the following alternatives 
might be helpful:

In a perfect world:
	"|exec /usr/local/bin/procmail #nancym"
In an almost perfect world:
	"|exec /usr/local/bin/procmail USER=nancym"
In another world:
	"|IFS=' ';exec /usr/local/bin/procmail #nancym"
In a different world:
	"|IFS=' ';exec /usr/local/bin/procmail USER=nancym"
In a smrsh world:
	"|/usr/local/bin/procmail #nancym"

These formats can be tried in different combinations, the leading "| can
be tried as |" instead, or vice versa.

NOTE
====
If your system uses procmail as its local delivery agent, you do not
need a .forward file; simply having a .procmailrc files suffices.  To
find out if procmail is the local delivery agent, ask your system
administrator.

------------------------------

From: FAQ Editor 
Subject:     2.3 Explanation of Test Recipe

The recipe you used for testing is:

:0:
* ^Subject:.*test
IN.testing


The meaning of this recipe is:

Notation            Meaning
========            =======
:0                  Begin a recipe
  :                 Use a lock file
*                   Begin a condition 
  ^                 Match the beginning of a line followed by....
   Subject:         ``Subject:'' followed by....
           .        any character (.) followed by....
            *       0 or more of preceding character (any character in this 
                       case) followed by....
              test  ``test''
IN.testing          If successful match, put in folder $MAILDIR/IN.testing

------------------------------

From: FAQ Editor 
Subject:     2.4 Tracking Your Incoming Mail

You can use mailstat, a useful script that is part of the procmail
package, to check your procmail log file. Check to see if it is 
on your system by typing either `which mailstat' or `type mailstat'.  
If it's on your system type:

  mailstat $HOME/.procmail/log

This displays a concise version of your log file and moves your log 
file to log.old.  You may want to put the above line in your .login so that 
each time you log in you will see a listing of how many messages you've
received since the last time you ran mailstat, and what folders these
messages were delivered to.

You can get a mailstat listing of log.old by using the -o flag:

  mailstat -o $HOME/.procmail/log


If mailstat is not on your system ask your system administrator to
install it.  The script is located with all the other procmail tools
(see 2.1.1 above for the ftp location).

------------------------------

From: FAQ Editor 
Subject:     2.5 Procmail References

Web Page: http://www.jazzie.com/ii/internet/procmail/
          http://www.best.com/~ii/internet/procmail/ (mirror of above URL)

Man Pages:    procmail(1)   - autonomous mail processor
              procmailrc(5) - procmail rc file
              procmailex(5) - procmail rc file examples
              procmailsc(5) - procmail weighted scoring techique
              egrep(1)      - search file for regular expression (procmail 
                              uses egrep-style regular exprssions along with 
                              some of its own expressions like ^TO)
              formail(1)    - mail reformatter
              sendmail(8)   - send mail over the internet

Newsgroup:    comp.mail.misc

Mailing List: procmail@informatik.rwth-aachen.de
           Subscribe to the procmail mailing list by sending mail:
             To: procmail-request@informatik.rwth-aachen.de 
             Subject: subscribe

Procmail Archives:
           Get a list of files available at the procmail mail server by 
           sending mail:
             To: procmail-request@informatik.rwth-aachen.de 
             Subject: archive ls

           Get Best of the Procmail mailing list by sending mail (you'll 
           need gzip and a MIME-decoder to unpack it):
             To: procmail-request@informatik.rwth-aachen.de 
             Subject: archive get best_of_procmail_list*

------------------------------

From: Raphael Manfredi 
Subject: 3.0 Mailagent

Mailagent is a powerful mail processing package that can be used to
process your mail messages, either at arrival time via a .forward hook
or later on while they are already saved in a mail folder.

Mailagent is written in Perl and hence has all the advantages of being
interpreted, i.e. it is easy to enhance dynamically and to customize.

This version of the FAQ describes the basics of setting up mailagent to
process incoming mail messages from within a .forward. To find out about
the more advanced features of mailagent, please refer to the mailagent(1)
manual page.

------------------------------

From: Raphael Manfredi 
Subject:     3.1 Setting Up Mailagent

1] First, make sure mailagent is available on your system. The easiest
   way to do this is to run:

    mailagent -V

   which will print the mailagent version if it is available, or the shell
   will issue an error message "mailagent: not found" or something like it.

2a] Now you need to understand the MTA (Mail Transport Agent, the program
    that delivers the mail; usually, sendmail) will NOT deliver to mailagent
    directly, rather to an intermediate (small) filter program. Two versions
    are available: shell or C -- refer to the mailagent(1) manpage to choose,
    but I recommend you use the C version first, and move to the shell
    version if you can't run a binary from your .forward file.

2b] Locate the filter program (it will be filter or filter.sh depending on
    whether you choose the C or the shell version respectively) under some
    directory like /usr/local/lib/mailagent. From now on, we'll assume we
    use the C filter and that it is located under /usr/local/lib/mailagent.

3] Copy the file /usr/local/lib/mailagent/mailagent.cf as ~/.mailagent and
   edit it to configure your system correctly. You will see two distinct
   sections in that file and you need to set-up properly the first one, the
   "Configuration section".

   If you have a version of mailagent that is recent enough (at least 3.0 PL32)
   then you can create an initial configuration very easily and quickly by
   running the following command:

    mailagent -I

   which will set-up an almost ready-to-use ~/.mailagent file. All you
   need to do at this point is go through its configuration section
   to make sure mailagent made the right choices...

   The minimal set of variables that MUST be correctly set (i.e. for which
   you cannot rely on the default set in the file) are (# introduces comment
   in a shell-like manner, which run up to the end of the line):

    home:  # Your HOME directory, as reported by "echo $HOME", usually.
    path:  # Path to be used to locate mailagent and perl, at least.
    p_xxx: # Path to be appended to "path" above when running on machine "xxx".
    user:  # Your login name.
    name:  # Your name.
    level: # Logging level. I recommend you raise it to 20 for testing.

   The mail folder directory is ~/Mail by default, but it can be changed
   only from within your rule file by putting

    maildir = ~/mail;

   at its top, for instance, to make it ~/mail. The rule file is defined as
   the "rules" parameter, and is set to ~/.rules by default.

4] Ensure the directories configured in your ~/.mailagent under "logdir" and
   "spool" and "queue" do exist. If you use the standard setting, this
   requires the following commands:

    cd
    mkdir var
    cd var
    mkdir log mailagent
    cd mailagent
    mkdir queue

5a] Create a rule file (named ~/.rules by default) for testing:

    cd
    vi .rules

5b] Enter the following in ~/.rules

    Subject: /test/     { SAVE testing };

    The meaning of that rule should be pretty obvious: If we receive a mail
    whose subject line contains the word "test", then we save that mail in
    a folder named "testing", under the default folder directory (~/Mail).

5c] Create a ~/.forward file as follows:

    "|exec /usr/local/lib/mailagent/filter >> /export/home/ram/.bak 2>&1"

    The meaning of that line is the following: every mail should be piped
    (hence the leading "|" character) onto the filter program, and any
    output from that program (i.e. errors) are appended to some file in
    your home directory, with stderr following stdout (2>&1) in traditional
    sh syntax.

    == IMPORTANT NOTES ==
    * Your .forward is always processed by sh, regardless of your login shell.
    * Replace /export/home/ram with your proper login directory full path.
      That's a part that makes your .forward unique (for zealous optimizing
      sendmail that are dead wrong about optimizing!) and that can save
      you a lot of trouble if anything goes wrong! Just look at your ~/.bak!
    * Replace /usr/local/lib/mailagent/filter with the proper filter path
      on your machine.

5d] Note that on many systems, you need to ensure your .forward will be
    readable by everybody, and that your home directory has the "x" bit set
    for everybody (i.e. can be part of a lookup path) so that sendmail can see
    and parse your .forward file. To ensure this, type:

        cd
        chmod a+r .forward
        chmod a+x .

6] Send yourself two test messages: one with "test" in the subject, and one
   without "test" in the subject.

7a] Checkout your ~/.bak file: it should be empty!

7b] Checkout your ~/var/log/agentlog file to see what really happened to your
    messages. Watch out for any ERROR or WARNING logs. This assumes you have
    left at least the default logging level (9) in the ~/.mailagent file (the
    "level" variable). But for testing, that level should be raised to 20 to
    help you diagnose what's going on.

7c] Look out in ~/Mail/testing. You should find there the message whose Subject
    line contained the word "test". Then make sure the other message has been
    delivered to your regular mailbox. (Since no match occurred in your rule
    file, the mail is left in your mailbox by default).

7d] TROUBLESHOOTING
    * If your mail was not properly delivered, please make sure your rule file
      and configuration file are correct by issuing the following command:

        mailagent -d

    * If the previous command does not output the single rule you should have
      put in ~/.rules, then please make sure step 3 and 4 above were correctly
      performed (those being the crucial steps ensuring a proper configuration).
    
    * Check the ~/.bak file for error messages.

    * Check for typos in any of these files:
        ~/.forward
        ~/.mailagent
        ~/.rules
    
    * Check the file and directory permissions of your .forward (set in step
      5c above).

      Type...          In order to...
      -------          --------------
      cd               Go to your home directory.
      
      ls -l .forward   Check the permission: it should say -rw-r--r--
      
      ls -ld .         Check permission of home dir: it should say drwx?-x?-x
                       The ?'s may be r's or hyphens or one of each (i.e.,
                       drwx--x--x, drwxr-xr-x, drwxr-x--x, drwx--xr-x).
      
    * If none of the previous hints helped you identify problem, and you can't
      figure it out from the output in ~/.bak or in the ~/var/log/agentlog file
      (or whatever file you have configured for logging within your ~/.mailagent
      file, variables "log" and "logdir"), then make sure your mail is not
      waiting in the MTA's queue: this might be the case if the agentlog file
      is empty. If you are using sendmail as MTA, you can run:

        /usr/lib/sendmail -bp
    
      to print out the queue.
    
    * As a last resort, please look at the mailagent(1) manual page under
      the section "Testing Your Installation" for more tips and things
      to look at.

8] Once you have successfully tested mailagent in steps 6 and 7 above,
   you're on! Mailagent is ready to process your mail. All you have to
   do is extend the ~/.rules file to add more rules.

   For instance:

   To Cc: www-talk      { SAVE www-talk };
   To Cc: agent-users   { SAVE agent-users };

   Those two rules filter the two mailing lists www-talk and agent-users into
   their respective folders, whether the mailing list address appear in the To
   OR Cc header.

   Since rules are not qualified as a pattern match (contrary to our test
   above), they match on logins in the address, i.e. they will match things

Section 1 of 2 - Prev - Next

Back to category mail - Use Smart Search
Home - Smart Search - About the project - Feedback

© allanswers.org | Terms of use

LiveInternet