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

getmail FAIL - lost email



Hi,

I run getmail4 with a cli configuration to check and download mail from
a bunch of POP accounts, like so:

/usr/bin/getmail -d -r pop1 -r pop2 -r pop3 ...

The mail is delivered to an mbox (mboxrd) mailbox, in
usr/spool/mail/username

Every now and then, something goes wrong (I have no idea what), and the
mbox file ends up corrupted: the corruption pattern I have seen is a
bunch of null characters preceding the actual mails. [Deleting the
trailing nulls seems to uncorrupt the file.]

On a recent getmail run, for example, all of pop1 was downloaded and
delivered fine, the first 7 of 10 messages of pop2 were also, and I then
had several dozen of the following errors (i.e., on the following
several dozen messages, across a bunch of POP accounts):

Delivery error (mboxrd delivery 17212 error (127, mbox delivery process
failed (not an mboxrd file (/var/spool/mail/username)))) msg  8/10 (6694
bytes), delivery error (mboxrd delivery 17212 error (127, mbox delivery
process failed (not an mboxrd file (/var/spool/mail/username))))

AFAICTL, all those mails were just lost (!)

Is there anything I can do to recover them? getmail is set to delete
messages on the server after successful retrieval, and it's apparently
doing so here, *even though the delivery is failing*!

This behavior is surely unacceptable. Is there a way to tell getmail to
wait to delete until successful delivery? How about a way to tell
getmail to abort if the mailbox is corrupt? What causes this corruption
(this is a laptop, no power failure or disk corruption AFAIK, etc.)?
How to prevent it? Is there a better MRA / MDA the list recommends? Has
anyone seen this sort of thing with either getmail or other MRAs / MDAs?

Sorry for the breathless rant, but losing, apparently permanently,
several dozen mails is just completely unacceptable.

Celejar


Reply to: