Quota - frustrated trying to configure ...

Sami Ketola sami.ketola at dovecot.fi
Tue Sep 26 09:53:18 EEST 2017


> On 25 Sep 2017, at 21.51, Garry Glendown <garry at glendown.de> wrote:
> 
> 
> 
> On 25.09.2017 20:28, Sami Ketola wrote:
>>> On 25 Sep 2017, at 21.19, Garry Glendown <garry at glendown.de> wrote:
>>> 
>>> doveadm(root): Error: chdir(/root/) failed: Permission denied
>>> (euid=479(dovecot) egid=478(dovecot) missing +x perm: /root, dir owned
>>> by 0:0 mode=0700)
>>> doveadm(root): Error: chdir(/root) failed: Permission denied
>>> 
>>> It looks like dovecot doesn't actually attempt to look at the central
>>> maildir, but instead seems to attempt to enter the current user's
>>> homedir (which, in this case, is root).
>> 
>> 
>> what was the command line you used to test this? As this looks a lot like you
>> just tried to check root users quota.
> Actually no, I tried "doveadm quote recalc" without any parameters ... I
> found the command in the wiki, which - as with most other information -
> might be helpful if you already know what you are doing …

> 
> "If your quotas are out of sync, you can use doveadm quota recalc
> command to recalculate them. “


I agree that this might happen. We must remember that the wiki is written mostly by 
people that have been working with dovecot for many years. I think you referred to
this page: https://wiki2.dovecot.org/Quota so I fixed the syntax. The correct syntax
was in the https://wiki2.dovecot.org/Tools/Doveadm/Quota page already.

> I assumed it would recalculate all users' quotas ... using the -u
> argument with an account actually does seem to work, at least I do not
> get any errors. Also, the get command seems to be accurate from what I
> can tell. Further tests show that the system already checks the quota
> correctly ... and hard-rejects any mails to users with full quota ...
> 
> So with that part already working, I have new problems to solve:
> 
> * how do I keep mails from being rejected and kept in the local
> mailqueue instead? (which is the old system's behavior)?


you can change this setting:

plugin {
  quota_status_overquota = "552 5.2.2 Mailbox is full”
}

to give 4xx SMTP error code instead to force the MTA to retry for up to 48 hours as mandated
by the RFC.

> * what's the best (or simplest or recommended) way of setting up
> per-user-quotas in this setup?

you can also return quota_rules from usertb. The simplest way depends on what kind
if userdb setup you have. 

> * how can I get  an overview/list of all users and their quota usage? (I
> guess I just solved that - "doveadm quota get -A" seems to work)

User iteration must work in order for that command to work. Making user iteration to work
once again depends on what kind of userdb/passdb setup you have.

Sami




More information about the dovecot mailing list