[Dovecot] Dovecot + Vpopmail quota issues

qmail at top-consulting.net qmail at top-consulting.net
Tue Jul 19 22:57:51 EEST 2011


I made a bit of headway but not too much.

I discovered that the order of the namespaces is very important.

The reason why dovecot was updating the maildirsize file under Archive  
was because the Archive namespace was defined first.

I now define the root inbox first and Archive second and dovecot  
properly updates the same maildirsize file as vpopmail in  
domain.com/user/Maildir/maildirsize

However, there are two key differences still:

1. Vpopmail does not calculate the storage under  
domain.com/user/Maildir/Archive when it updates the maildirsize file.  
This is exactly what I want. Vpopmail reports the proper size.

2. Dovecot DOES calculate the storage taken up by:  
domain.com/user/Maildir/Archive  despite the fact that '/' is not my  
default separator.

I think vpopmail acts properly and calculates the file sizes in  
properly formatted maildirs.

For some reason dovecot does not .. or am I wrong ?

I've tried many configs to get dovecot to ignore the Archive folder  
but none of them works. The only thing that works is if I specifically  
write the name of each folder in the quota ignore definitions.

If my structure is as follows:

domain.com/user/Maildir/Archive/.Folder1/cur
domain.com/user/Maildir/Archive/.Folder1/new
domain.com/user/Maildir/Archive/.Folder1/tmp

Folder1 is a proper maildir and Archive is a \NoSelect folder.

I want dovecot quota to ignore ALL the possible folders under Archive  
without mentioning them one by one.

This works for example:

quota = maildir
quota_rule = ?:storage=0
quota_rule2 = Folder1:ignore

This does not:

quota = maildir
quota_rule = ?:storage=0
quota_rule2 = Archive:ignore

How can I get dovecot to ignore the quota for all the possible folders  
under Archive ?








is different fr
Quoting qmail at top-consulting.net:

> I can't get dovecot to ignore a certain directory/namespace when  
> calculating quotas.
>
>
> I am running dovecot 1.2.16 with vpopmail configured for quotas.
>
> I use the dot (.) as my separator and my user structure is as follows:
>
> ../domain.com/user/Maildir  for all the user directories
>
> I also have for each user:
>
> ../domain.com/user/Maildir/Archive   which is a symlink to a NFS  
> mounted partition that holds read-only archives
>
> In dovecot.conf I have defined them as follows:
>
>
> mail_location = maildir:~/Maildir
>
> namespace private {
>   separator = .
>   prefix = ARCHIVE.
>   inbox = no
>   hidden = yes
>   list = yes
>   location = maildir:~/Maildir/Archive
> }
>
> namespace private {
>   separator = .
>   prefix =
>   inbox = yes
> }
>
> This works very well, in as much as I see the Archive namespace and  
> its folders.
>
> The problem arises in the fact that Dovecot insists on calculating  
> the 'Archive' namespace/directory storage towards the total storage  
> used.
>
> My Quota configuration is as follows:
>
> auth default {
>   mechanisms = plain login digest-md5 cram-md5
>
>   passdb vpopmail {
>     args = webmail=192.168.1.12
>   }
>
>   userdb vpopmail {
>     args = quota_template=quota_rule3=*:backend=%q
>   }
> ...
> }
>
> plugin {
> quota = maildir
> quota_rule = ?:storage=0
> quota_rule2 = Archive:ignore
> quota_rule3 = ARCHIVE:ignore
> }
>
> From what I've read, this is supposed to use the maildirsize file  
> when available or otherwise return no quota. It worked just fine  
> before this new Archive namespace.
>
> For a certain user, vpopmail writes the 'maildirsize' file in  
> ../domain.com/user/Maildir/maildirsize and it contains the correct  
> value ( without the /Archive directory ).
>
> The problem is that for some reason, something ( I suspect dovecot )  
> writes a new maildirsize file in  
> ../domain.com/user/Maildir/Archive/maildirsize which also contains  
> the size of Archive. Subsequently, Dovecot adds the two of them up  
> and usually throws me over quota.
>
> To test, I have emptied the maildirsize file under Archive and  
> changed its owner to root (perms are 755 ) so that nobody but root  
> can write to it. Dovecot complained right away about it:
>
> Jul 19 12:55:21 pop1 dovecot: IMAP(user at domain.com):  
> open(/home/vpopmail/domains/B/domain.com/user/Maildir/Archive/maildirsize)  
> failed: Permission denied
>
> Despite passing the quota responsibility to vpopmail it seems that  
> Dovecot still tries to update that file.
>
> And finally the question... How do I get dovecot to not calculate a  
> quota for that directory/namespace ?
>
>
>
>






More information about the dovecot mailing list