> On 25 Sep 2017, at 21.51, Garry Glendown <ga...@glendown.de> wrote: > > > > On 25.09.2017 20:28, Sami Ketola wrote: >>> On 25 Sep 2017, at 21.19, Garry Glendown <ga...@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