[mdlug] Quotas. How do they work?

Mark Montague markmont at umich.edu
Tue Mar 29 10:42:19 EDT 2011


  On March 29, 2011 10:16 , "Robert Adkins II" <radkins at impelind.com> wrote:
> I am seeking to force certain users into trimming back the size of their
> email stored on the IMAP server. Much of the data itself doesn't need to be
> stored in email long term, as it is replicated elsewhere on the network.
>
> The problem is, if I just toss in a quota I am concerned that there will be
> no warning, just suddenly they will be unable to send/receive email. Nothing
> I am seeing the in the tools for enabling quotas suggests that the users
> will receive any form of warning.
>
> Is this true?

Are you sure you want to impose quotas?  At the University of Michigan 
(for example), adding another drive to an IMAP server's RAID array (or 
upgrading the drives to higher capacity ones, if possible) is cheaper 
than imposing and managing quotas, and then paying for the resulting end 
user support.  Plenty of people have 5 GB, 10 GB, even 20 GB mailboxes, 
and the very rare problem cases can usually be addressed by having a 
chat with the offending user.  (If this sounds radical, keep in mind 
that as of today, Google is providing 7.6 GB per user at no cost, with 
extra space available very cheaply).

Alternatively, have a script that runs daily that sends annoying nags to 
people who are using more space than you would like.  "You have more 
than 10 GB of email on the server; please be a good citizen and free up 
some space.  Call 555-1234 if you'd like assistance with downloading 
some of it to your desktop, or otherwise archiving it."    You may also 
want this script to look for and notify the user about common problems 
-- such as a Trash or Junk Mail folder that has lots of things in it 
(hundreds of megabytes).

But, assuming you really do want to use quotas:

- Use IMAP quotas rather than Unix filesystem quotas, if at all 
possible.  This will give you much more "intelligence", nicer failure 
modes, and hopefully better control.

- Configure your SMTP / LMTP server to hold messages for up to 7 days if 
they cannot be delivered due to a mailbox being over quota.  Only bounce 
(or discard) the message after that time, if the user has not freed up 
space in their quota.  Test this regularly to be sure that messages only 
get delayed, not lost, if a user goes over quota but then frees up space 
within a week.

- Provide a web interface where people can check their current quota usage.

- Keep in mind that if the user uses a client that uses a Trash folder, 
this can sometimes complicate things.  See the question "Why can't I 
delete any messages from my over-quota mailbox?" at 
http://www.cyrusimap.org/docs/cyrus-imapd/2.4.6/faq.php

- Run a script such as the one described above that warns people when 
they get close to their quota so that they are not surprised.


I hope this helps.

--
   Mark Montague
   mark at catseye.org




--
   Mark Montague
   mark at catseye.org



More information about the mdlug mailing list