Shared folders and quota

Fabian Kuran fabian at eideo.de
Tue Feb 20 11:24:23 EET 2018


Hi all,

does no one has any information? 


> Am 09.02.2018 um 09:46 schrieb Fabian Kuran <fabian at eideo.de>:
> 
> Hi all,
> 
> we are able to observe a very strange behaviour:
> User A wants to copy a mail to a shared mailbox of user B. This works like a 
> charme if the quota of user A is lower than the used space of user B. But is the 
> used space of user B higher than the quota size of User A, "User A" is not longer 
> able to copy the message to the shared folder of user B. His IMAP Client says 
> something like "NO OVERQUOTA". 
> 
> # doveadm quota get -u UserA
> Quota name   Type    Value Limit    %
> User quota   STORAGE 20085 25600   78
> User quota   MESSAGE    68     -    0
> 
> # doveadm quota get -u UserB
> Quota name   Type    Value  Limit   %
> User quota   STORAGE 39963 122880  32
> User quota   MESSAGE   160      -   0
> 
> 
> Is this a known behaviour of dovecot? Is there a way to "disable" quota-handling
> for shared folders?
> 
> 
> 
> This is my doveconf -n":
> # 2.2.30.2 (c0c463e): /etc/dovecot/dovecot.conf
> # Pigeonhole version 0.4.18 (29cc74d)
> # OS: SLES12SP3
> auth_debug = yes
> auth_master_user_separator = *
> auth_mechanisms = plain login
> auth_verbose = yes
> debug_log_path = /var/log/dovecot.debug
> dict {
>  sqlquota = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext
> }
> disable_plaintext_auth = no
> first_valid_uid = 480
> lmtp_save_to_detail_mailbox = yes
> mail_debug = yes
> mail_gid = vmail
> mail_location = maildir:/var/spool/mail/user/%n/Maildir:LAYOUT=fs
> mail_plugins = acl quota stats listescape notify virtual
> mail_privileged_group = vmail
> mail_uid = dovecot
> 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 index ihave duplicate mime foreverypart extracttext
> namespace {
>  hidden = yes
>  inbox = yes
>  list = no
>  location = 
>  prefix = 
>  separator = /
>  subscriptions = yes
> }
> namespace {
>  list = children
>  location = maildir:%%h/Maildir:INDEXPVT=~/shared/%%u:LAYOUT=fs
>  prefix = user/%%n/
>  separator = /
>  subscriptions = no
>  type = shared
> }
> namespace Public {
>  list = children
>  location = maildir:/var/mail/%d/public:INDEXPVT=~/public:LAYOUT=fs
>  prefix = Public/
>  separator = /
>  subscriptions = no
>  type = public
> }
> namespace inbox {
>  inbox = no
>  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" {
>    special_use = \Sent
>  }
>  mailbox Trash {
>    auto = subscribe
>    special_use = \Trash
>  }
>  prefix = INBOX/
>  separator = /
>  subscriptions = no
>  type = private
> }
> passdb {
>  args = /etc/dovecot/dovecot-ldap.conf.ext
>  driver = ldap
> }
> passdb {
>  args = /etc/dovecot/masteruser.%s
>  driver = passwd-file
>  master = yes
>  pass = yes
> }
> plugin {
>  acl = vfile
>  acl_anyone = allow
>  acl_shared_dict = file:/var/spool/mail/%d/shared-mailboxes.db
>  quota = dict:User quota::proxy::sqlquota
>  quota_rule = *:storage=4G
>  quota_rule2 = INBOX/Trash:storage=+100M
>  quota_status_nouser = DUNNO
>  quota_status_overquota = 552 5.2.2 Mailbox is over quota / Mailbox ist voll
>  quota_status_success = DUNNO
>  quota_warning = storage=95%% quota-warning 95 %u
>  quota_warning2 = storage=90%% quota-warning 90 %u
>  sieve = ~/.dovecot.sieve
>  sieve_before = /var/spool/mail/globalsieve/duplicate.sieve
>  sieve_dir = ~/sieve
>  sieve_duplicate_max_period = 5m
>  stats_refresh = 30 secs
>  stats_track_cmds = yes
> }
> postmaster_address = postmaster at domain.de
> protocols = imap pop3 lmtp sieve
> service auth-worker {
>  user = dovecot
> }
> service auth {
>  unix_listener /var/spool/postfix/private/auth {
>    group = postfix
>    mode = 0660
>    user = postfix
>  }
>  unix_listener auth-userdb {
>    mode = 0666
>  }
> }
> service dict {
>  unix_listener dict {
>    group = vmail
>    mode = 0660
>    user = dovecot
>  }
> }
> service imap-postlogin {
>  executable = script-login /var/mail/imapafter.sh
>  user = $default_internal_user
> }
> service imap {
>  executable = imap
> }
> service lmtp {
>  unix_listener /var/spool/postfix/private/dovecot-lmtp {
>    group = postfix
>    mode = 0600
>    user = postfix
>  }
> }
> service managesieve-login {
>  inet_listener sieve {
>    port = 4190
>  }
> }
> service quota-status {
>  client_limit = 1
>  executable = quota-status -p postfix
>  inet_listener {
>    address = 127.0.0.1
>    port = 10000
>  }
> }
> service quota-warning {
>  executable = script /usr/local/bin/quota-warning.sh
>  group = vmail
>  unix_listener quota-warning {
>    group = vmail
>    user = dovecot
>  }
>  user = dovecot
> }
> service stats {
>  fifo_listener stats-mail {
>    mode = 0600
>    user = dovecot
>  }
> }
> ssl_cert = </etc/ssl/certs/domain.de.pem
> ssl_key =  # hidden, use -P to show it
> userdb {
>  args = /etc/dovecot/dovecot-sql.conf.ext
>  driver = sql
> }
> protocol lmtp {
>  mail_plugins = acl quota stats listescape notify virtual acl quota sieve
>  quota_full_tempfail = yes
> }
> protocol lda {
>  mail_plugins = acl quota stats listescape notify virtual acl sieve
> }
> protocol imap {
>  mail_plugins = acl quota stats listescape notify virtual imap_quota imap_acl imap_stats
> }
> 
> 
> -- 
> Kind regards,
> Fabian



More information about the dovecot mailing list