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

Re: Exim + POP3 + quota problems




Marcin Owsiany wrote:
> 
> Hi!
> 
> Here's my setup:
> 
>  - a potato box (sounds cool, doesn't it? :-)
>  - exim delivers mail to /var/mail/<user>
>  - qpopper is my POP3 server
>  - there is a user quota for /var partition
>  - /var/spool/pop is a symlink to /usr/local/pop
>  - there is no user quota for /usr/local partition
>  - all users use POP3 to fetch their mail
>  - also, a few users do read mail via local MUAs,
>    so disabling locking in qpopper is not possible
> 
> The problem is that from time to time the following thing
> happens:
>  - the size of a user's mailbox in blocks becomes equal to the user's
>    quota on /var
>  - because the user may not use any more blocks on that partition,
>    qpopper is unable to create a lockfile (/var/mail/<user>.lock)
>    and exits with
>    -ERR maillock: cannot lock '/var/mail/foo': 1
>  - because of that the user is unable to fetch her mail
> 
> How do you guys cope with that problem? The only solution I could come
> up with is switching to Maildir delivery, but might be painful...
> Maybe there's some solution I've overlooked?
> 

Argh... yes, use Maildir, have procmail deliver locally, drop qpopper
for courierpop, qmail's pop server, or any of the other Mailbox-aware
servers. You'll have a lot less trouble in the long run IMHO. The
changeover isn't really that painful either.

Been a while since I dealt with qpopper, but wasn't the lock actually
/var/spool/pop/<user>.pop (the temporary copy of the user's mailbox)?

If that's correct, mount /var/spool on a different partition from
/var/mail, and only enable quotas on /var/mail. If you've got any load
on the server, you'll want /var/spool, /var/log, and /var/mail on
seperate drives for performance anyhow.



-- 

_________________________________________________________
                         
Rich Puhek               
ETN Systems Inc.         
_________________________________________________________



Reply to: