<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hi</p>
    <p>Has anyone experienced this issue? I'm not able to debug it. <br>
    </p>
    <p>Config, users, permissions, etc are the same as in the previous
      version, where it worked without problems. <br>
    </p>
    <p>If anyone can help it would be appreciated, I don't know what
      else look.</p>
    <p>Thanks and best regards<br>
    </p>
    <div class="moz-cite-prefix">El 16/03/2021 a las 11:40, Gonzalo
      Palacios Goicolea escribió:<br>
    </div>
    <blockquote type="cite"
      cite="mid:18995d9f-e664-ffd8-4d37-1fe379d34e82@externo.uam.es">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <p>Hi All,</p>
      <p>Since upgrading to RHEL7 and dovecot-2.2.36-8.el7.x86_64 we're
        not able to get quota warnings work.</p>
      <p>We get the error "User initialization failed: Failed to
        initialize quota: Invalid quota root quota: Invalid rule
        *:bytes=: Invalid bytes limit:"</p>
      <p><i>mar 16 10:29:27 lda(user@domain): Quota: Executing warning:
          quota-warning 90 user@domain</i><i><br>
        </i><i>Mar 16 10:29:27 buzonn5 gonzalo: mar 16 10:29:27
          lda(user@domain): Quota: Executing warning: quota-warning 90
          user@domain</i><i><br>
        </i><i>Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug:
          Loading modules from directory: /usr/lib64/dovecot</i><i><br>
        </i><i>Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug:
          Module loaded: /usr/lib64/dovecot/lib10_quota_plugin.so</i><i><br>
        </i><i>Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug:
          Module loaded: /usr/lib64/dovecot/lib15_notify_plugin.so</i><i><br>
        </i><i>Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug:
          Module loaded: /usr/lib64/dovecot/lib20_mail_log_plugin.so</i><i><br>
        </i><i>Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug:
          Module loaded: /usr/lib64/dovecot/lib90_sieve_plugin.so</i><i><br>
        </i><i>Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug:
          auth USER input: user@domain
          home=/buzones/externos/4/215283255776546 uid=508 gid=503
          quota_rule=*:bytes=2147483648</i><i><br>
        </i><i>Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug:
          Ignoring overridden (-o) userdb setting: plugin/quota_rule</i><i><br>
        </i><i>Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug:
          Effective uid=508, gid=503,
          home=/buzones/externos/4/215283255776546</i><i><br>
        </i><i>Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug:
          Quota root: name=_backup backend=maildir args=ns=</i><i><br>
        </i><i>Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug:
          Quota rule: root=_backup mailbox=* bytes=0 messages=0</i><i><br>
        </i><i>Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Error:
          User initialization failed: Failed to initialize quota:
          Invalid quota root quota: Invalid rule *:bytes=: Invalid bytes
          limit:</i><i><br>
        </i><i>Mar 16 10:29:27 buzonn5 dovecot: lda: Fatal: Invalid user
          settings. Refer to server log for more information.</i><br>
        <br>
        This is the quota-warning script:<br>
        <br>
        <br>
        <i>#!/bin/sh</i><i><br>
        </i><i>#Variables</i><i><br>
        </i><i>PERCENT=$1</i><i><br>
        </i><i>USER=$2</i><i><br>
        </i><i>FECHA=`date '+%b %d %H:%M:%S'`</i><i><br>
        </i><i><br>
        </i><i>#Logueo del evento</i><i><br>
        </i><i>echo "$FECHA lda($USER): Quota: Executing warning:
          quota-warning $PERCENT $USER" >>
          /var/log/dovecot/dovecot.log</i><i><br>
        </i><i>logger -p local1.notice -f /var/log/dovecot/dovecot.log
          "$FECHA lda($USER): Quota: Executing warning: quota-warning
          $PERCENT $USER"</i><i><br>
        </i><i><br>
        </i><i>cat << EOF | /usr/libexec/dovecot/dovecot-lda -d
          $USER -o "plugin/quota_rule=*:bytes=%$"</i><i><br>
        </i><i>From: postmaster at domain</i><i><br>
        </i><i>Subject: Alerta de Capacidad</i><i><br>
        </i><i>Date: `date`</i><i><br>
        </i><i><br>
        </i><i>El espacio asignado para el almacenamiento de su correo
          ha superado el $PERCENT% de su capacidad total. Por ello, se
          recomienda que elimine correos y/o vacie la papelera para
          liberar espacio.</i><i><br>
        </i><i>Mensaje enviado desde `hostname`</i><i><br>
        </i><i><br>
        </i><i>Atentamente,</i><i><br>
        </i><i><br>
        </i><i>--</i><i><br>
        </i><i>Responsable correo </i><i><br>
        </i><i>postmaster at domain</i><i><br>
        </i><i><br>
        </i><i>EOF</i><i><br>
        </i><br>
        -----------------------------<br>
      </p>
      <p>This is 90-quota.conf<br>
        <br>
        <i>plugin {</i><i><br>
        </i><i>  quota = maildir:_backup:ns=</i><i><br>
        </i><i>}</i><i><br>
        </i><i><br>
        </i><i>plugin {</i><i><br>
        </i><i>  quota_exceeded_message = El espacio asignado para el
          almacenamiento del correo del destinatario ha superado su
          capacidad total. Por ello, el correo que usted intenta enviar
          no se puede entregar al destinatario.</i><i><br>
        </i><i>  quota_warning = storage=70%% quota-warning 70 %u</i><i><br>
        </i><i>  quota_warning1 = storage=90%% quota-warning 90 %u</i><i><br>
        </i><i>  quota_warning2 = storage=95%% quota-warning 95 %u</i><i><br>
        </i><i>  quota_warning3 = storage=99%% quota-warning 99 %u</i><i><br>
        </i><i>}</i><i><br>
        </i><i><br>
        </i><i>service quota-warning {</i><i><br>
        </i><i>  executable = script
          /etc/dovecot/scripts_notification_quota/quota-warning.sh</i><i><br>
        </i><i>  user = vmail</i><i><br>
        </i><i>  unix_listener quota-warning {</i><i><br>
        </i><i>    user = vmail</i><i><br>
        </i><i>  }</i><i><br>
        </i><i>}</i><br>
      </p>
      <p>Getting user attibutes and quota with doveadms works right:<br>
        <br>
        <i># doveadm user user@domain</i><i><br>
        </i><i>field   value</i><i><br>
        </i><i>uid     508</i><i><br>
        </i><i>gid     503</i><i><br>
        </i><i>home    /buzones/externos/4/215283255776546</i><i><br>
        </i><i>mail   
          maildir:/buzones/externos/4/215283255776546/Maildir</i><i><br>
        </i><i>quota_rule *:bytes=2147483648</i><i><br>
        </i><i># doveadm quota get -u user@domain</i><i><br>
        </i><i>Quota name Type      Value  
Limit                                                                                                   
          %</i><i><br>
        </i><i>_backup    STORAGE 1153093
2097152                                                                                                  
          54</i><i><br>
        </i><i>_backup    MESSAGE   44347       -   </i><br>
        <br>
      </p>
      <p>It also works fine with ldapsearch<br>
      </p>
      <p><br>
        <i># ldapsearch -x -D "cn=mail_admin,cn=users,dc=domain,dc=es"
          -w ********** -b "dc=domain,dc=es" -h ldap.host
          mail=user@domain mailquotasize</i><i><br>
        </i><i># extended LDIF</i><i><br>
        </i><i>#</i><i><br>
        </i><i># LDAPv3</i><i><br>
        </i><i># base <dc=domain,dc=es> with scope subtree</i><i><br>
        </i><i># filter: mail=user@domain</i><i><br>
        </i><i># requesting: mailquotasize</i><i><br>
        </i><i>#</i><i><br>
        </i><i><br>
        </i><i># user@domain, users, domain.es</i><i><br>
        </i><i>dn: cn=user@domain,cn=users,dc=domain,dc=es</i><i><br>
        </i><i>mailquotasize: 2147483648</i><br>
      </p>
      <p><br>
      </p>
      <p>I've been googling but I can't find where the problem may be.
        Can you please help me?<br>
      </p>
      <p>This is the whole config:</p>
      <p><i>doveconf -n</i><i><br>
        </i><i># 2.2.36 (1f10bfa63): /etc/dovecot/dovecot.conf</i><i><br>
        </i><i># Pigeonhole version 0.4.24 (124e06aa)</i><i><br>
        </i><i># OS: Linux 3.10.0-1160.6.1.el7.x86_64 x86_64 Red Hat
          Enterprise Linux Server release 7.9 (Maipo)</i><i><br>
        </i><i># Hostname: host.domain</i><i><br>
        </i><i>auth_cache_negative_ttl = 5 mins</i><i><br>
        </i><i>auth_cache_size = 500 M</i><i><br>
        </i><i>auth_cache_ttl = 5 mins</i><i><br>
        </i><i>auth_failure_delay = 5 secs</i><i><br>
        </i><i>default_vsz_limit = 1 G</i><i><br>
        </i><i>disable_plaintext_auth = no</i><i><br>
        </i><i>hostname = host.domain</i><i><br>
        </i><i>imap_logout_format = in(bytes read)=%i out(bytes sent)=%o</i><i><br>
        </i><i>listen = *</i><i><br>
        </i><i>lock_method = dotlock</i><i><br>
        </i><i>mail_fsync = always</i><i><br>
        </i><i>mail_location = maildir:%h/Maildir</i><i><br>
        </i><i>mail_nfs_index = yes</i><i><br>
        </i><i>mail_nfs_storage = yes</i><i><br>
        </i><i>mail_plugins = " quota mail_log notify"</i><i><br>
        </i><i>managesieve_notify_capability = mailto</i><i><br>
        </i><i>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 imapflags notify</i><i><br>
        </i><i>mbox_write_locks = fcntl</i><i><br>
        </i><i>mmap_disable = yes</i><i><br>
        </i><i>namespace {</i><i><br>
        </i><i>  location = maildir:%h/Maildir/_backup</i><i><br>
        </i><i>  prefix = _backup.</i><i><br>
        </i><i>  separator = .</i><i><br>
        </i><i>  type = private</i><i><br>
        </i><i>}</i><i><br>
        </i><i>namespace inbox {</i><i><br>
        </i><i>  inbox = yes</i><i><br>
        </i><i>  location =</i><i><br>
        </i><i>  mailbox Drafts {</i><i><br>
        </i><i>    special_use = \Drafts</i><i><br>
        </i><i>  }</i><i><br>
        </i><i>  mailbox Junk {</i><i><br>
        </i><i>    special_use = \Junk</i><i><br>
        </i><i>  }</i><i><br>
        </i><i>  mailbox Sent {</i><i><br>
        </i><i>    special_use = \Sent</i><i><br>
        </i><i>  }</i><i><br>
        </i><i>  mailbox "Sent Messages" {</i><i><br>
        </i><i>    special_use = \Sent</i><i><br>
        </i><i>  }</i><i><br>
        </i><i>  mailbox Trash {</i><i><br>
        </i><i>    special_use = \Trash</i><i><br>
        </i><i>  }</i><i><br>
        </i><i>  prefix =</i><i><br>
        </i><i>}</i><i><br>
        </i><i>passdb {</i><i><br>
        </i><i>  args = /etc/dovecot/dovecot-ldap.conf.ext</i><i><br>
        </i><i>  driver = ldap</i><i><br>
        </i><i>}</i><i><br>
        </i><i>plugin {</i><i><br>
        </i><i>  mail_log_events = delete undelete expunge
          mailbox_delete mailbox_rename mailbox_create save</i><i><br>
        </i><i>  mail_log_fields = uid box msgid from subject</i><i><br>
        </i><i>  quota = maildir:_backup:ns=</i><i><br>
        </i><i>  quota_exceeded_message = El espacio asignado para el
          almacenamiento del correo del destinatario ha superado su
          capacidad total. Por ello, el correo que usted intenta enviar
          no se puede entregar al destinatario.</i><i><br>
        </i><i>  quota_warning = storage=70%% quota-warning 70 %u</i><i><br>
        </i><i>  quota_warning1 = storage=90%% quota-warning 90 %u</i><i><br>
        </i><i>  quota_warning2 = storage=95%% quota-warning 95 %u</i><i><br>
        </i><i>  quota_warning3 = storage=99%% quota-warning 99 %u</i><i><br>
        </i><i>  sieve = ~/.dovecot.sieve</i><i><br>
        </i><i>  sieve_dir = ~/Maildir/sieve</i><i><br>
        </i><i>  sieve_extensions = +notify +imapflags</i><i><br>
        </i><i>}</i><i><br>
        </i><i>postmaster_address = postmaster@domain</i><i><br>
        </i><i>protocols = imap pop3 sieve</i><i><br>
        </i><i>service auth {</i><i><br>
        </i><i>  unix_listener auth-userdb {</i><i><br>
        </i><i>    group = vmail</i><i><br>
        </i><i>    mode = 0777</i><i><br>
        </i><i>    user = vmail</i><i><br>
        </i><i>  }</i><i><br>
        </i><i>}</i><i><br>
        </i><i>service imap-login {</i><i><br>
        </i><i>  inet_listener imap {</i><i><br>
        </i><i>    port = 143</i><i><br>
        </i><i>  }</i><i><br>
        </i><i>  process_min_avail = 20</i><i><br>
        </i><i>}</i><i><br>
        </i><i>service imap {</i><i><br>
        </i><i>  process_limit = 2048</i><i><br>
        </i><i>}</i><i><br>
        </i><i>service managesieve-login {</i><i><br>
        </i><i>  inet_listener sieve {</i><i><br>
        </i><i>    port = 4190</i><i><br>
        </i><i>  }</i><i><br>
        </i><i>  inet_listener sieve_deprecated {</i><i><br>
        </i><i>    port = 2000</i><i><br>
        </i><i>  }</i><i><br>
        </i><i>  process_min_avail = 20</i><i><br>
        </i><i>}</i><i><br>
        </i><i>service pop3-login {</i><i><br>
        </i><i>  inet_listener pop3 {</i><i><br>
        </i><i>    port = 110</i><i><br>
        </i><i>  }</i><i><br>
        </i><i>  process_min_avail = 20</i><i><br>
        </i><i>}</i><i><br>
        </i><i>service pop3 {</i><i><br>
        </i><i>  process_limit = 2048</i><i><br>
        </i><i>}</i><i><br>
        </i><i>service quota-warning {</i><i><br>
        </i><i>  executable = script
          /etc/dovecot/scripts_notification_quota/quota-warning.sh</i><i><br>
        </i><i>  unix_listener quota-warning {</i><i><br>
        </i><i>    user = vmail</i><i><br>
        </i><i>  }</i><i><br>
        </i><i>  user = vmail</i><i><br>
        </i><i>}</i><i><br>
        </i><i>ssl = no</i><i><br>
        </i><i>ssl_cert = </etc/pki/dovecot/certs/dovecot.pem</i><i><br>
        </i><i>ssl_key =  # hidden, use -P to show it</i><i><br>
        </i><i>submission_host = smtpi.domain:25</i><i><br>
        </i><i>syslog_facility = local1</i><i><br>
        </i><i>userdb {</i><i><br>
        </i><i>  args = /etc/dovecot/dovecot-ldap.conf.ext</i><i><br>
        </i><i>  driver = ldap</i><i><br>
        </i><i>}</i><i><br>
        </i><i>protocol lda {</i><i><br>
        </i><i>  mail_plugins = " quota mail_log notify sieve"</i><i><br>
        </i><i>}</i><i><br>
        </i><i>protocol imap {</i><i><br>
        </i><i>  mail_max_userip_connections = 10000</i><i><br>
        </i><i>  mail_plugins = " quota mail_log notify imap_quota"</i><i><br>
        </i><i>}</i><i><br>
        </i><i>protocol pop3 {</i><i><br>
        </i><i>  mail_max_userip_connections = 10</i><i><br>
        </i><i>}</i></p>
      <p><br>
      </p>
      <p>Thanks and best regards<br>
      </p>
      <div class="moz-signature">-- <br>
        <p class="3DMsoListParagraph"
          style="3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:"
auto;mso-add-space:auto;text-indent:-18.0pt;line-height:22.5pt;mso-list:l0=""
          level1="" lfo1;="" tab-stops:list="" 36.0pt'=""> <b><span
              style="3D'font-size:10.5pt;font-family:"Arial"
              narrow",sans-serif;mso-fareast-font-family:"times=""
              new="" roman";mso-bidi-font-family:"times=""
              roman";color:#4d4d4d;="" mso-fareast-language:es'="">Gonzalo
              Palacios Goicolea</span></b><span
            style="3D'font-size:10.5pt;font-family:"Arial"
            narrow",sans-serif;mso-fareast-font-family:="" "times=""
            new="" roman";mso-bidi-font-family:"times=""
            roman";color:#4d4d4d;="" mso-fareast-language:es'=""><br>
            U.T de Infraestructura de Equipos Centrales<br>
          </span><i><span
              style="3D'font-size:10.5pt;font-family:"Arial"
              narrow",sans-serif;="" mso-fareast-font-family:"times=""
              new="" roman";mso-bidi-font-family:"times="" roman";=""
              color:#00abe4;mso-fareast-language:es'="">Tecnologías de
              la Información</span></i><span
            style="3D'font-size:10.5pt;font-family:"Arial"
            narrow",sans-serif;mso-fareast-font-family:="" "times=""
            new="" roman";mso-bidi-font-family:"times=""
            roman";color:#00abe4;="" mso-fareast-language:es'=""><br>
          </span><span style="3D'font:7.0pt" "times="" new="" roman"'="">Universidad
            Autónoma de Madrid • Campus de <span class="3DSpellE">Cantoblanco</span><br>
          </span><span
            style="3D'font-size:9.0pt;font-family:"Arial"
            narrow",sans-serif;mso-fareast-font-family:="" "times=""
            new="" roman";mso-bidi-font-family:"times=""
            roman";color:#95c11f;mso-fareast-language:es'="">Antes de
            imprimir este correo piense si es necesario.Cuidemos el
            medioambiente. </span> </p>
      </div>
    </blockquote>
    <div class="moz-signature">-- <br>
      <p class="3DMsoListParagraph"
        style="3D'mso-margin-top-alt:auto;mso-margin-bottom-alt:"
auto;mso-add-space:auto;text-indent:-18.0pt;line-height:22.5pt;mso-list:l0=""
        level1="" lfo1;="" tab-stops:list="" 36.0pt'="">
        <b><span style="3D'font-size:10.5pt;font-family:"Arial"
            narrow",sans-serif;mso-fareast-font-family:"times="" new=""
            roman";mso-bidi-font-family:"times=""
            roman";color:#4d4d4d;="" mso-fareast-language:es'="">Gonzalo
            Palacios Goicolea</span></b><span
          style="3D'font-size:10.5pt;font-family:"Arial"
          narrow",sans-serif;mso-fareast-font-family:="" "times=""
          new="" roman";mso-bidi-font-family:"times=""
          roman";color:#4d4d4d;="" mso-fareast-language:es'=""><br>
          U.T de Infraestructura de Equipos Centrales<br>
        </span><i><span
            style="3D'font-size:10.5pt;font-family:"Arial"
            narrow",sans-serif;="" mso-fareast-font-family:"times=""
            new="" roman";mso-bidi-font-family:"times="" roman";=""
            color:#00abe4;mso-fareast-language:es'="">Tecnologías de la
            Información</span></i><span
          style="3D'font-size:10.5pt;font-family:"Arial"
          narrow",sans-serif;mso-fareast-font-family:="" "times=""
          new="" roman";mso-bidi-font-family:"times=""
          roman";color:#00abe4;="" mso-fareast-language:es'=""><br>
        </span><span style="3D'font:7.0pt" "times="" new="" roman"'="">Universidad
          Autónoma de Madrid • Campus
          de <span class="3DSpellE">Cantoblanco</span><br>
        </span><span style="3D'font-size:9.0pt;font-family:"Arial"
          narrow",sans-serif;mso-fareast-font-family:="" "times=""
          new="" roman";mso-bidi-font-family:"times=""
          roman";color:#95c11f;mso-fareast-language:es'="">Antes de
          imprimir este correo piense si es necesario.Cuidemos el
          medioambiente. </span>
      </p>
    </div>
  </body>
</html>