[imp] The oft-asked question, UW-IMAP w/ quotas...

Alain Fauconnet alain at ait.ac.th
Mon Aug 30 20:04:22 PDT 2004


Kyle,

On Mon, Aug 30, 2004 at 05:05:44AM -0400, Kyle Johnson wrote:
> All-
> 
> Sorry for beating a dead horse, but I keep seeing reference to this URL...
> 
> https://mail.ph.utexas.edu/patches/wu-imap-quotas/
> 
> Concerning getting quotas working w/ UW-IMAP, w/ local or NFS mounted mail
> stores, but unfortunately that link appears to be dead now.
> 
> I've copy/pasted/edited the configs I've found on usenet, and gotten to the
> point of "quota not available", but never quite gotten it to work...
> 
> Any recommendations? New links? I'm running mail store and IMP 3.2.5 on the
> same server, all mail using the ~/mbox storage.
> 
> Any assistance would be greatly appreciated.
> 
> Sorry for asking this question for the 80th time...

[A bit on the off-topic side I'm afraid ... my apologies]

Not  everyone  will  agree  with this, but I thought that I'd share my
opinion, based on quite a few years managing mail systems, that  using
Unix quotas to implement mail quotas is a lost cause. There  are  just
too many issues regarding the way various POP/IMAP  servers  and  mail
delivery agents (mis-)handle write errors due to overquota situations.
Also, getting current user quota & usage involves forking subprocesses
to run the 'quota' command, with all the nasty things that can happen,
including the the security concerns it brings. Not to mention to dirty
tricks with 'edquota' to alter user quotas from a web admin interface.

The  approach  I've  implemented  with great success on some very busy
mail servers (80,000+ mailboxes) is to roll out my own quota system: a
daemon that monitors POP and IMAP sessions, maintains disk usage/quota
figures   in   a   MySQL   database   and   manages   records   in   a
(sendmail/postfix/whatever) map so that mail sent to users over  quota
is bounced back with a proper error message.

I  have  such  a daemon written in Perl, called 'mailquotad'. It's not
available  from  a  web site because I've never had time to package it
properly, because most settings are hardcoded into the Perl code. It's
just not 'clean' enough. On the other hand  it's  quite  stable,  been
running for 2+ years now on a couple of large mail toasters.

If you're interested, I can send it to  you.  Please  understand  that
it's not 'plug and play' by far. A fair amount of work will be  needed
to  adapt  it  to  the environment of your mail servers. Some level of
Perl  expertise  is  definitely  needed.  I  also  have PHP code for a
web-based quota management. It's even less polished  (I  didn't  write
it),  but it's a good start. I also have the few lines to add to a IMP
template file to display a quota bar. It would be better  to  use  the
new   show   quota   API   in   IMP,   but  I  haven't  done  it   yet
(my hack dates from the early IMP 2.x days)

Greets,
_Alain_


More information about the imp mailing list