[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Mutt displays mail twice... :-s



On Mon, Oct 27, 2003 at 11:23:35PM +0100, Tom wrote:

| However, the longer this takes, the more I'm beginning to feel a little
| nervous, since it undoubtedly has to do with some misconfiguration of
| mine.

Don't be so nervous, you just get duplicate mails.  It's not the worst
that could happen :-).

| Diff for the two messages of the above example spits out this:
| 
|  2c2
|  <       ([127.0.0.1] helo=localhost ident=tom)
|  ---
|  >       ([127.0.0.1] helo=localhost ident=fetchmail)
|  4,5c4,5
|  <       id 1AEFQo-0006UD-00
|  <       for <tom@localhost>; Mon, 27 Oct 2003 23:01:46 +0100
|  ---
|  >       id 1AEFP1-0006St-00
|  >       for <tom@localhost>; Mon, 27 Oct 2003 22:59:55 +0100
|  9c9
|  <       for tom@localhost (single-drop); Mon, 27 Oct 2003 23:01:46 +0100
|  (CET)
|  ---
|  >       for tom@localhost (single-drop); Mon, 27 Oct 2003 22:59:55 +0100
|  >       (CET)
| 
| One of the messages seems to be delivered about a minute later than the
| other, and it's obviously treated as a different message (exim-id's
| differ). Me and my newbie-ness suspect it has something to do with the
| first difference (ident=tom <-> ident=fetchmail). Could someone
| enlighten me...?

Can you post the entire headers for both of those messages?  The first
step will be to trace the Received: headers to see when and where the
messages travelled.  As you've noted, the problem isn't in mutt or
procmail.  The duplication happens before either of those programs
becomes involved.  I suspect you are using fetchmail and for some
reason it is handing the message to exim twice, thus you get two
copies.  Its also conceivable that the problem lies even earlier than
that with your mail provider, but we'll find out one step at a time.

Hmm, actually, now that I think about it, I know what the problem is.
(How nice of exim to log 'ident' information, and how nice of your
system to provide it!  :-D).  'ident', btw, is a mechanism whereby a
network host can ask another one what user owns the process that has
the socket open.  In this case it really helps identify and solve the
problem (next paragraph ...).

You have fetchmail running twice -- once as user 'fetchmail' and once
as user 'tom'.  Both instances are grabbing the mail from your POP box
and passing it on to exim.  You have fetchmail set to not remove
messages from the server, and POP has limited capability of
identifying "read" messages, so each fetchmail ends up fetching each
message.

The solution is to clear out your /etc/fetchmailrc.  (IMO running
fetchmail from your user's own crontab is better than running it as a
system-wide daemon, so I recommend keeping your ~/.fetchmailrc and
emptying /etc/fetchmailrc.)

-D

-- 
In my Father's house are many rooms; if it were not so, I would have
told you.  I am going there to prepare a place for you.  And if I go and
prepare a place for you, I will come and take you to be with me that you
also may be where I am.
        John 14:2-3
 
http://dman13.dyndns.org/~dman/

Attachment: pgpxdnteXxmdj.pgp
Description: PGP signature


Reply to: