However, using the disk system to enforce mail quota's is inherently a hack, given that there will be, for a moment, two spools.
The more Right Answer is to have the LDA (procmail, mail.local, whatever) check the softquota and tempfail (75) if it's over and tempfail is $CurrentSize + $NewMessage would exceed hardquota. In a large IMAP server I use (file/message), there are settings for "allow one message over quota" to let in a message that happens to exceed quota. You also probably want a reporting method to alert users when they are over quota. POP, unfo, doesn't allow an "alert message" like IMAP. MOst GUI IMAP clients will pop-up a box with an alert. Alerts I've used include "Server will be down for maint from 9-11PM" (like a bulletin), but also jobs that run through, determine over quota and emit a "You are over quota and will not get new mail until you make some room." Can Eudora and friends handle something like this via POP? It wouldn't be too hard for qpopper to inject a (false) message, like a bulletin, PER USER based on factors like this. Heck, a per-user bulletin dir wouldn't be hard - deliver one message from outside the spool and then mark it read. An external process can create and delete those per-user alerts. The bulletin routines pretty much cover all the hooks for doing that. Quoting Chris Miller ([EMAIL PROTECTED]): > this sounds like a great idea on the surface, but this doesn't > prevent people from accumulating more than 10MB of mail, which will > ultimately cause this problem to happen at a higher increment of disk > space, right? > > On Wed, 5 Mar 2003, Chuck Yerkes wrote: > > Generally the hardquota should be AT LEAST 2x the softquota. > > This lets the box get copied and new messages to arrive. > > > > In these situations, I try to be sure that over-quota errors are > > TEMP FAIL e.g. 4xx. Quotae get fixed and you can keep it in queue > > for a little while. Nothing like bouncing someones' mail by sending > > them some large messages - great DOS. > > > > Quoting Matt Garretson ([EMAIL PROTECTED]): > > > Chris Miller wrote: > > > > what OS are you running? > > > > > > > > > AIX 4.3.3 + qpopper 4.0.4 + procmail 3.22 > > > > > > Thanks for sharing your recovery method. On my system, some > > > of the messages are in the temporary pop drop, and some are > > > still in the corrupted spool file. I do something like this: > > > > > > lockfile /var/spool/mail/user.lock > > > mv /var/spool/mail/user /tmp > > > mail -f /tmp/user (then just quit out of mail with "q") > > > cat /var/tmp/pop/.user.pop /tmp/user > /var/spool/mail/user > > > (at this point i either delete some old messages from the > > > user's spool file, or increase the user's quota) > > > chown user.mail /var/spool/mail/user > > > rm -f /var/spool/mail/user.lock > > > > > > Loading the spool file into "mail" seems to skip over the corrupted > > > beginning of the file, so when i quit out it gets saved without > > > the junk. Maybe next time i will try using tail like you do. > > > > > > -Matt > >
