That *
there is actually mailbox mask. You have to return an additional quota_ruleN from your userdb for that user.
You can do e.g.
userdb { .. result_success=continue-ok} }
userdb { driver = passwd args = /etc/dovecot/quota-overrides }
and put in there
username::::::::::quota_ruleX=... where X is the next rule number.
the count of : might be wrong.
Aki
On 06/10/2021 10:43 Stephane Magnier <steph.mag220@netcourrier.com> wrote:
Hi Again,
Juste another one...
The quota I've decided is 30Gb for everybody I would like to add an exception for the user AZT000 so here is my test :
I put 60 GB for AZT000, but apparently, this is not seen :-( No error message Is there a general syntax for a specific user ?
NB: I tried : quota_rule = azt000:storage=+60GB orquota_rule1 = azt000:storage=+60GB same results
plugin { quota = maildir:User quota quota_rule = *:storage=30GB quota_rule2 = Trash:storage=+100MB quota_rule3 = Spam:storage=+20%%
quota_rule = *:storage=70GB
quota_rule = *:storage=70GB
quota_rule = azt000:storage=+60GB
Le 06/10/2021 à 08:09, Stephane Magnier a écrit :
Great !! works fine..
I had in fact, twice the same déclaration of quotat and storage on the same file..... one of them was with an upper case "S" for Storage..
Thanks again
Le 06/10/2021 à 07:50, Aki Tuomi a écrit :
On 06/10/2021 08:38 Stephane Magnier <steph.mag220@netcourrier.com> wrote:
Le 06/10/2021 à 06:51, Aki Tuomi a écrit :
On 06/10/2021 07:30 Stephane Magnier <steph.mag220@netcourrier.com> wrote:
Le 06/10/2021 à 06:10, Stephane Magnier a écrit :
> Hi, > I am just running Dovecot v 2.3.8 .. seems to work fine. > I just add the quota plugin.. and.. I cannot see any differences.. I cannot see any information on Quota per user.. No specific info on Log file :-( >
> Any help please ? >
> Tahnks for your help >
> Here is my config : >
> > # 2.3.8 (9df20d2db): /etc/dovecot/dovecot.conf > # Pigeonhole version 0.5.8 (b7b03ba2) > # OS: Linux 4.18.0-305.12.1.el8_4.x86_64 x86_64 CentOS Linux release 8.4.2105 nfs4 > # Hostname: mbox1.intranet.office.itx > auth_cache_negative_ttl = 5 mins > auth_cache_ttl = 5 mins > auth_mechanisms = plain login > auth_username_format = %u > debug_log_path = /var/log/dovecot-debug.log > default_vsz_limit = 4 G > info_log_path = /var/log/dovecot-info.log > listen = * [::] > log_path = /var/log/dovecot.log > login_trusted_networks = 172.18.0.0/16 127.0.0.1 ::1 > mail_access_groups = dovecot > mail_fsync = always > mail_location = maildir:/var/spool2/mail/%u:LAYOUT=fs > mail_nfs_storage = yes > mail_plugins = " quota" > mail_privileged_group = mail > managesieve_notify_capability = mailto > managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date ihave > mbox_very_dirty_syncs = yes > mbox_write_locks = fcntl > mmap_disable = yes > namespace inbox { > disabled = no > ignore_on_failure = no > inbox = yes > list = yes > location = > mailbox Archive { > auto = no > comment = " All my Accepted/NON SPAM" > special_use = \Archive > } > mailbox Drafts { > auto = subscribe > special_use = \Drafts > } > mailbox Junk { > auto = subscribe > autoexpunge = 90 days > special_use = \Junk > } > mailbox Sent { > auto = subscribe > special_use = \Sent > } > mailbox Trash { > auto = no > autoexpunge = 60 days > special_use = \Trash > } > mailbox virtual/All { > auto = no > special_use = \All > } > prefix = > subscriptions = yes > type = private > } > passdb { > driver = pam > } > plugin { > quota_grace = 10%% > quota_max_mail_size = 100M > quota_rule = *:storage=10000M > quota_rule2 = Trash:Storage=+100M > quota_rule3 = Spam:storage=+20%% > quota_status_nouser = DUNNO > quota_status_overquota = 552 5.2.2 Mailbox is full > quota_status_success = DUNNO > quota_warning = storage=95%% quota-warning 95 %u > quota_warning2 = storage=80%% quota-warning 80 %u > quota_warning3 = -storage=100%% quota-warning below %u > sieve = file:~/sieve;active=~/.dovecot.sieve > } > pop3_uidl_format = %v-%u > service auth { > unix_listener auth-master { > mode = 0666 > } > unix_listener auth-userdb { > mode = 0600 > user = mail > } > } > service dict { > unix_listener dict { > mode = 0600 > user = mail > } > } > service imap-login { > inet_listener imap { > port = 143 > } > inet_listener imaps { > port = 993 > ssl = yes > } > process_min_avail = 4 > service_count = 0 > } > service lmtp { > inet_listener lmtp { > port = 24 > } > unix_listener /var/run/lmtp { > group = mail > mode = 0660 > user = mail > } > } > service pop3-login { > inet_listener pop3 { > address = * > port = 110 > } > inet_listener pop3s { > port = 995 > ssl = yes > } > } > service quota-warning { > executable = script /usr/local/bin/quota-warning.sh > unix_listener quota-warning { > user = mail > } > user = dovecot > } > service submission { > process_limit = 250 > } > ssl = required > ssl_ca = </etc/mail/ssl/ssl1/xxxxxp_net.ca-bundle > ssl_cert = </etc/mail/ssl/ssl1/xxxxxx_net.crt > ssl_cipher_list = HIGH:!aNULL:!ADH:!DH:!RC4:!MD5:!RSA > ssl_dh = # hidden, use -P to show it > ssl_key = # hidden, use -P to show it > userdb { > driver = passwd > } > verbose_proctitle = yes > protocol lmtp { > mail_fsync = optimized > mail_plugins = autocreate quota acl fts fts_solr zlib mail_log notify sieve > postmaster_address = it@intranet.office.itx > } > protocol lda { > mail_fsync = optimized > mail_plugins = " quota sieve quota" > } > protocol imap { > mail_max_userip_connections = 80 > mail_plugins = " quota quota imap_quota" > ssl_cert = </etc/mail/ssl/ssl1/STAR_aztgrp_net.crt > ssl_key = # hidden, use -P to show it > } > protocol pop3 { > mail_max_userip_connections = 10 > mail_plugins = " quota" > } > protocol submission { > mail_max_userip_connections = 10 > mail_plugins = " quota" > } > > > > Just for info[root@mbox1 xenia]# doveadm quota get -A |grep "STORAGE" Nothing at all ?? weird [root@mbox1 xenia]#
[root@mbox1 xenia]# doveadm quota get -u <user1> Quota name Type Value Limit % [root@mbox1 xenia]# => Absolutely nothing is displayed ????
normally, the size of the user1 email folder is about 21 Gb So..just modified the line :quota_rule = *:storage=100G But nothing has changed...
You are missing quota driver settings, the recommended settings are
plugin { quota = count quota_vsizes = yes }
Aki
Hi Aki, Thanks for your reply..
I just tryed to ad it.. but this can't connect anymore . Here is my exact declaration "90-quota.conf"
( based on : https://doc.dovecot.org/configuration_manual/quota/ )
plugin { quota = count quota_vsizes = yes #quota = maildir:User quota quota_rule = *:storage=100GB
quota_rule2 = Trash:storage=+100MB
quota_rule3 = Spam:storage=+20%%
20% of 100GB = 20GB
quota_status_success = DUNNO quota_status_nouser = DUNNO quota_status_overquota = "552 5.2.2 Mailbox is full" quota_warning = storage=95%% quota-warning 95 %u quota_warning2 = storage=80%% quota-warning 80 %u quota_warning3 = -storage=100%% quota-warning below %u
LDA/LMTP allows saving the last mail to bring user from under quota to
over quota, if the quota doesn't grow too high. Default is to allow as
long as quota will stay under 10% above the limit. Also allowed e.g. 10M.
quota_grace = 10%%
Quota plugin can also limit the maximum accepted mail size.
quota_max_mail_size = 100M }
The error message I have now is :
Oct 06 07:23:35 imap(azt000)<7381><3pAIWajNgdcgAUHQ/kJ8Aikr1PIAQmFL>: Error: Failed to initialize quota: Invalid quota root quota: Invalid rule Trash:Storage=+100M: Unknown rule limit name: Storage Oct 06 07:23:35 imap(azt000)<7382><jqwJWajNgtcgAUHQ/kJ8Aikr1PIAQmFL>: Error: Failed to initialize quota: Invalid quota root quota: Invalid rule Trash:Storage=+100M: Unknown rule limit name: Storage Oct 06 07:26:02 master: Warning: Killed with signal 15 (by pid=8420 uid=0 code=kill) Oct 06 07:26:10 imap(azt000)<8468><cDRLYqjNcsSsEgA3>: Error: Failed to initialize quota: Invalid quota root quota: Invalid rule Trash:Storage=+100M: Unknown rule limit name: Storage Oct 06 07:26:13 imap(azt000)<8469><mxN6YqjNdMSsEgA3>: Error: Failed to initialize quota: Invalid quota root quota: Invalid rule Trash:Storage=+100M: Unknown rule limit name: Storage
Then you can see that I've removed the 2 lines
quota_rule2 = Trash:storage=+100MB
quota_rule3 = Spam:storage=+20%%
but without any success
Effectively.. what is the Word "Storage" for Dovecot ?? no idea ... I just wrote what I saw :-)
For info : all the mailbox are placed on a NFS storage.. Don't know if this help to locate the problem.. Thanks and regards,
Did you try changing Storage => storage in your rule? It seems to be coming either from userdb or your config.
Try
doveadm user azt000
to if your userdb is providing these rules.Aki