Hello,
I am testing quotas with the following configuration:
plugin { quota_rule = *:storage=1M quota_rule2 = INBOX.Trash:storage=+100M quota_grace = 10%% }
The 1M limit works perfectly but I had to prefix Trash with "INBOX." to get it to stop complaining about an unknown namespace. But now the quota_rule2 is ignored. Once the mailbox reaches 1M, even if it is all in INBOX.Trash, it will fail to deliver due to quota limit.
Dovecot: 2.3.13+dfsg1-2+deb11u1:amd64 Debian 11
auth_mechanisms = plain login disable_plaintext_auth = no mail_plugins = quota mail_privileged_group = mail namespace inbox { inbox = yes location = mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Junk { auto = subscribe special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox "Sent Messages" { auto = subscribe special_use = \Sent } mailbox Trash { auto = subscribe special_use = \Trash } prefix = INBOX. separator = . } passdb { args = /etc/dovecot/dovecot-sql.conf.ext driver = sql } plugin { mail_plugins = quota quota quota = maildir:User quota quota_grace = 10%% quota_rule = *:storage=1M quota_rule2 = INBOX.Trash:storage=+100M } protocols = " imap pop3" service anvil { unix_listener anvil-auth-penalty { group = vmail mode = 0660 user = vmail } } service auth { unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0666 user = postfix } unix_listener auth-client { mode = 0660 } } service imap-login { inet_listener imap { address = 172.16.0.1 } } service pop3-login { inet_listener pop3 { address = 172.16.0.1 } } service stats { unix_listener stats-reader { group = vmail mode = 0660 user = vmail } unix_listener stats-writer { group = vmail mode = 0660 user = vmail } } ssl = no ssl_client_ca_dir = /etc/ssl/certs ssl_dh = # hidden, use -P to show it userdb { args = /etc/dovecot/dovecot-sql.conf.ext driver = sql } protocol lmtp { mail_plugins = quota quota postmaster_address = dkoski@sutinen.com } protocol lda { mail_plugins = quota quota } protocol imap { mail_max_userip_connections = 14 mail_plugins = quota quota imap_quota } protocol pop3 { mail_plugins = quota quota }
Regards, David Koski dkoski@sutinen.com
On 19/04/2023 02:38 EEST David Koski dkoski@sutinen.com wrote:
Hello,
I am testing quotas with the following configuration:
plugin { quota_rule = *:storage=1M quota_rule2 = INBOX.Trash:storage=+100M quota_grace = 10%% }
The 1M limit works perfectly but I had to prefix Trash with "INBOX." to get it to stop complaining about an unknown namespace. But now the quota_rule2 is ignored. Once the mailbox reaches 1M, even if it is all in INBOX.Trash, it will fail to deliver due to quota limit.
Regards, David Koski dkoski@sutinen.com
Hi!
The quota rule setup you have, just says that you can save additional 100M to Trash. It does not mean that your total quota is increased. If your mailbox size is 100M due to mail being in Trash, you're still over the 1M quota for other mailboxes than Trash.
Aki
On 4/18/23 23:46, Aki Tuomi via dovecot wrote:
On 19/04/2023 02:38 EEST David Koski dkoski@sutinen.com wrote:
Hello,
I am testing quotas with the following configuration:
plugin { quota_rule = *:storage=1M quota_rule2 = INBOX.Trash:storage=+100M quota_grace = 10%% }
The 1M limit works perfectly but I had to prefix Trash with "INBOX." to get it to stop complaining about an unknown namespace. But now the quota_rule2 is ignored. Once the mailbox reaches 1M, even if it is all in INBOX.Trash, it will fail to deliver due to quota limit.
Regards, David Koski dkoski@sutinen.com
Hi!
The quota rule setup you have, just says that you can save additional 100M to Trash. It does not mean that your total quota is increased. If your mailbox size is 100M due to mail being in Trash, you're still over the 1M quota for other mailboxes than Trash.
Hello,
I must be missing something basic. If the 100M is not in addition to the 1M total, then what is it in additional to? How does it apply and to what?
Thank you! David Koski
Aki
dovecot mailing list -- dovecot@dovecot.org To unsubscribe send an email to dovecot-leave@dovecot.org
On 19/04/2023 18:15 EEST David Koski dkoski@sutinen.com wrote:
On 4/18/23 23:46, Aki Tuomi via dovecot wrote:
On 19/04/2023 02:38 EEST David Koski dkoski@sutinen.com wrote:
Hello,
I am testing quotas with the following configuration:
plugin { quota_rule = *:storage=1M quota_rule2 = INBOX.Trash:storage=+100M quota_grace = 10%% }
The 1M limit works perfectly but I had to prefix Trash with "INBOX." to get it to stop complaining about an unknown namespace. But now the quota_rule2 is ignored. Once the mailbox reaches 1M, even if it is all in INBOX.Trash, it will fail to deliver due to quota limit.
Regards, David Koski dkoski@sutinen.com
Hi!
The quota rule setup you have, just says that you can save additional 100M to Trash. It does not mean that your total quota is increased. If your mailbox size is 100M due to mail being in Trash, you're still over the 1M quota for other mailboxes than Trash.
Hello,
I must be missing something basic. If the 100M is not in addition to the 1M total, then what is it in additional to? How does it apply and to what?
It applies when you are storing mails to INBOX.Trash.
Thank you! David Koski
Aki
Aki
On 4/19/23 08:24, Aki Tuomi wrote:
On 19/04/2023 18:15 EEST David Koski dkoski@sutinen.com wrote:
On 4/18/23 23:46, Aki Tuomi via dovecot wrote:
On 19/04/2023 02:38 EEST David Koski dkoski@sutinen.com wrote:
Hello,
I am testing quotas with the following configuration:
plugin { quota_rule = *:storage=1M quota_rule2 = INBOX.Trash:storage=+100M quota_grace = 10%% }
The 1M limit works perfectly but I had to prefix Trash with "INBOX." to get it to stop complaining about an unknown namespace. But now the quota_rule2 is ignored. Once the mailbox reaches 1M, even if it is all in INBOX.Trash, it will fail to deliver due to quota limit.
Regards, David Koski dkoski@sutinen.com
Hi!
The quota rule setup you have, just says that you can save additional 100M to Trash. It does not mean that your total quota is increased. If your mailbox size is 100M due to mail being in Trash, you're still over the 1M quota for other mailboxes than Trash. Hello,
I must be missing something basic. If the 100M is not in addition to the 1M total, then what is it in additional to? How does it apply and to what?
It applies when you are storing mails to INBOX.Trash.
Re: "..just says that you can save additional 100M to Trash."
In addition to what? What would be a practical example? If it provides 100M additional to trash, what is the total?
Thanks! David
Thank you! David Koski
Aki Aki
David Koski skrev den 2023-04-19 18:19:
plugin { quota_rule = *:storage=1M quota_rule2 = INBOX.Trash:storage=+100M quota_grace = 10%% }
Re: "..just says that you can save additional 100M to Trash."
In addition to what? What would be a practical example? If it provides 100M additional to trash, what is the total?
in the above example trash can have totaly 101M, while other only in total can have 1M
On 4/19/23 09:48, Benny Pedersen wrote:
David Koski skrev den 2023-04-19 18:19:
plugin { quota_rule = *:storage=1M quota_rule2 = INBOX.Trash:storage=+100M quota_grace = 10%% }
Re: "..just says that you can save additional 100M to Trash."
In addition to what? What would be a practical example? If it provides 100M additional to trash, what is the total?
in the above example trash can have totaly 101M, while other only in total can have 1M
Thank you!
David
dovecot mailing list -- dovecot@dovecot.org To unsubscribe send an email to dovecot-leave@dovecot.org
On 4/19/23 09:48, Benny Pedersen wrote:
David Koski skrev den 2023-04-19 18:19:
plugin { quota_rule = *:storage=1M quota_rule2 = INBOX.Trash:storage=+100M quota_grace = 10%% }
Re: "..just says that you can save additional 100M to Trash."
In addition to what? What would be a practical example? If it provides 100M additional to trash, what is the total?
in the above example trash can have totaly 101M, while other only in total can have 1M
My observations differ using same plugin config as above. With folder usage:
4.0K ./Maildir/tmp 80K ./Maildir/.Sent 32K ./Maildir/.Sent Messages 920K ./Maildir/.Trash 28K ./Maildir/.Junk 28K ./Maildir/.Drafts 4.0K ./Maildir/new 20K ./Maildir/cur 1.3M ./Maildir 1.3M .
Sending an 172kB file to accoount fails due to over quota. Debug log:
Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: Debug: Quota root: name=User quota backend=maildir args= Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: Debug: Quota rule: root=User quota mailbox=* bytes=1048576 messages=0 Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: Debug: Quota rule: root=User quota mailbox=INBOX.Trash bytes=+104857600 messages=0 Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: Debug: Quota warning: bytes=996147 (95%) messages=0 reverse=no command=quota-warning 95 dkoski@example.com Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: Debug: Quota warning: bytes=838860 (80%) messages=0 reverse=no command=quota-warning 80 dkoski@example.com Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: Debug: Quota grace: root=User quota bytes=104857 (10%) Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: Debug: Namespace inbox: type=private, prefix=INBOX., sep=., inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:/var/lib/vmail/example.com/dkoski/Maildir Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: Debug: maildir++: root=/var/lib/vmail/example.com/dkoski/Maildir, index=, indexpvt=, control=, inbox=/var/lib/vmail/example.com/dkoski/Maildir, alt= Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: Debug: Namespace : type=private, prefix=, sep=, inbox=no, hidden=yes, list=no, subscriptions=no location=fail::LAYOUT=none Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: Debug: none: root=, index=, indexpvt=, control=, inbox=, alt= Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: Debug: quota: quota_over_flag check: quota_over_script unset - skipping Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: Debug: quota: quota_over_flag check: quota_over_script unset - skipping Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: Debug: Destination address: dkoski@example.com (source: user@hostname) Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: Debug: Mailbox INBOX: Mailbox opened because: lib-lda delivery Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: msgid=8f99bfe7-02e5-cbc4-9af3-112fbe27831d@mymail.com: save failed to INBOX: Quota exceeded (mailbox for user is full) Apr 21 14:52:15 examplemail dovecot: lda(dkoski@example.com)<2038><eZo1D48FQ2T2BwAAtQZAyw>: msgid=8f99bfe7-02e5-cbc4-9af3-112fbe27831d@mymail.com: rejected: Quota exceeded (mailbox for user is full)
Regards, David Koski dkoski@sutinen.com
dovecot mailing list -- dovecot@dovecot.org To unsubscribe send an email to dovecot-leave@dovecot.org
participants (3)
-
Aki Tuomi
-
Benny Pedersen
-
David Koski