Re: [SPAM] Incorrect quota usage reported
Rick Romero <[email protected]>
| Newsgroups | gmane.mail.qmail.admin |
|---|---|
| Message-ID | <[email protected]> |
Quoting "Darek M." <[email protected]>: > On 5/13/2011 6:45 PM, Wade Rossmann wrote: >>> I would recommend upgrading vpopmail and qmailadmin. You'll >>> probably also want to switch to Dovecot from Courier-IMAP. >> The server is quite old and has a tenuous grasp on stability, we >> cannot have the server/service go down so we are hesitant to >> perform software upgrades. We've got new servers we're moving to >> that are based on Postfix/Dovecot, but we're trying to 'gently >> encourage' users to reduce their disk usage beforehand. The trouble >> is the quota reporting is telling them they are not over quota at >> all. >> >>>> Where does qmailadmin pull the quota usage numbers from? >>> vpopmail >> I am getting spotty results from 'vuserinfo', for the high-volume >> users will generally report 0% quota usage and rarely 100%. Does >> vpopmail rely on any sort of caching or internal db for these >> values? Could this be due to an integer overflow with such a large >> mailbox? >> >> As well, for users under quota usages have been reported >> differently between the OS/vpopmail and qmailadmin. Is there any >> caching taking place in qmailadmin? > > Try deleting the maildirsize file in a user's Maildir/ to force > vpopmail to regenerate it. If it works, you could put that in a > cron. I've been doing that for a while myself. > > I've made the move to postfix/postfixadmin/mysql/dovecot on a number > of systems and am quite happy. Dovecot can even report quota usage > directly to Thunderbird, which is neat. And there are server side > filters using sieve that don't require ftp or shell access. It's > all very nice and up to date. I randomly had maildirsize file issues (reporting wrong quota), and finally just decided to rebuild it regularly during delivery. I have atime off. So from procmail I call: TIMESTAMPRESULT=`/usr/local/vpopmail/domains/bin/calctimestamp.sh $DOMDIR $EXT@$HOST` where calctimestamp.sh = #!/bin/sh ###!/usr/local/bin/bash #Get current timestamp of file, delete and re-create if older than 1 day FILE=$1/Maildir/maildirsize NOW=`date +%s` echo "File is $FILE" if [ -f "$FILE" ] then FILEDATE=`stat -f %m $FILE` AGE=`expr $NOW - $FILEDATE` else AGE=0 fi echo "Now is $NOW" echo "Filedate is $FILEDATE" echo "Age is $AGE" if [ $AGE -gt 86400 ] then # Remove file, run vuserinfo to recalculate quota rm $FILE QUOTA=`/usr/local/vpopmail/bin/vuserinfo -Q $2` fi Rick !DSPAM:4dcddff932715874421618!