Hi All,
Since upgrading to RHEL7 and dovecot-2.2.36-8.el7.x86_64 we're not able
to get quota warnings work.
We get the error "User initialization failed: Failed to initialize
quota: Invalid quota root quota: Invalid rule *:bytes=: Invalid bytes
limit:"
/mar 16 10:29:27 lda(user@domain): Quota: Executing warning:
quota-warning 90 user@domain//
//Mar 16 10:29:27 buzonn5 gonzalo: mar 16 10:29:27 lda(user@domain):
Quota: Executing warning: quota-warning 90 user@domain//
//Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug: Loading
modules from directory: /usr/lib64/dovecot//
//Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug: Module
loaded: /usr/lib64/dovecot/lib10_quota_plugin.so//
//Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug: Module
loaded: /usr/lib64/dovecot/lib15_notify_plugin.so//
//Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug: Module
loaded: /usr/lib64/dovecot/lib20_mail_log_plugin.so//
//Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug: Module
loaded: /usr/lib64/dovecot/lib90_sieve_plugin.so//
//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//
//Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug: Ignoring
overridden (-o) userdb setting: plugin/quota_rule//
//Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug: Effective
uid=508, gid=503, home=/buzones/externos/4/215283255776546//
//Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug: Quota root:
name=_backup backend=maildir args=ns=//
//Mar 16 10:29:27 buzonn5 dovecot: lda(user@domain): Debug: Quota rule:
root=_backup mailbox=* bytes=0 messages=0//
//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://
//Mar 16 10:29:27 buzonn5 dovecot: lda: Fatal: Invalid user settings.
Refer to server log for more information./
This is the quota-warning script:
/#!/bin/sh//
//#Variables//
//PERCENT=$1//
//USER=$2//
//FECHA=`date '+%b %d %H:%M:%S'`//
//
//#Logueo del evento//
//echo "$FECHA lda($USER): Quota: Executing warning: quota-warning
$PERCENT $USER" >> /var/log/dovecot/dovecot.log//
//logger -p local1.notice -f /var/log/dovecot/dovecot.log "$FECHA
lda($USER): Quota: Executing warning: quota-warning $PERCENT $USER"//
//
//cat << EOF | /usr/libexec/dovecot/dovecot-lda -d $USER -o
"plugin/quota_rule=*:bytes=%$"//
//From: postmaster at domain//
//Subject: Alerta de Capacidad//
//Date: `date`//
//
//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.//
//Mensaje enviado desde `hostname`//
//
//Atentamente,//
//
//--//
//Responsable correo //
//postmaster at domain//
//
//EOF//
/
-----------------------------
This is 90-quota.conf
/plugin {//
// quota = maildir:_backup:ns=//
//}//
//
//plugin {//
// 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.//
// quota_warning = storage=70%% quota-warning 70 %u//
// quota_warning1 = storage=90%% quota-warning 90 %u//
// quota_warning2 = storage=95%% quota-warning 95 %u//
// quota_warning3 = storage=99%% quota-warning 99 %u//
//}//
//
//service quota-warning {//
// executable = script
/etc/dovecot/scripts_notification_quota/quota-warning.sh//
// user = vmail//
// unix_listener quota-warning {//
// user = vmail//
// }//
//}/
Getting user attibutes and quota with doveadms works right:
/# doveadm user user@domain//
//field value//
//uid 508//
//gid 503//
//home /buzones/externos/4/215283255776546//
//mail maildir:/buzones/externos/4/215283255776546/Maildir//
//quota_rule *:bytes=2147483648//
//# doveadm quota get -u user@domain//
//Quota name Type Value Limit %//
//_backup STORAGE 1153093 2097152 54//
//_backup MESSAGE 44347 - /
It also works fine with ldapsearch
/# 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//
//# extended LDIF//
//#//
//# LDAPv3//
//# base <dc=domain,dc=es> with scope subtree//
//# filter: mail=user@domain//
//# requesting: mailquotasize//
//#//
//
//# user@domain, users, domain.es//
//dn: cn=user@domain,cn=users,dc=domain,dc=es//
//mailquotasize: 2147483648/
I've been googling but I can't find where the problem may be. Can you
please help me?
This is the whole config:
/doveconf -n//
//# 2.2.36 (1f10bfa63): /etc/dovecot/dovecot.conf//
//# Pigeonhole version 0.4.24 (124e06aa)//
//# OS: Linux 3.10.0-1160.6.1.el7.x86_64 x86_64 Red Hat Enterprise Linux
Server release 7.9 (Maipo)//
//# Hostname: host.domain//
//auth_cache_negative_ttl = 5 mins//
//auth_cache_size = 500 M//
//auth_cache_ttl = 5 mins//
//auth_failure_delay = 5 secs//
//default_vsz_limit = 1 G//
//disable_plaintext_auth = no//
//hostname = host.domain//
//imap_logout_format = in(bytes read)=%i out(bytes sent)=%o//
//listen = *//
//lock_method = dotlock//
//mail_fsync = always//
//mail_location = maildir:%h/Maildir//
//mail_nfs_index = yes//
//mail_nfs_storage = yes//
//mail_plugins = " quota mail_log notify"//
//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 imapflags notify//
//mbox_write_locks = fcntl//
//mmap_disable = yes//
//namespace {//
// location = maildir:%h/Maildir/_backup//
// prefix = _backup.//
// separator = .//
// type = private//
//}//
//namespace inbox {//
// inbox = yes//
// location =//
// mailbox Drafts {//
// special_use = \Drafts//
// }//
// mailbox Junk {//
// special_use = \Junk//
// }//
// mailbox Sent {//
// special_use = \Sent//
// }//
// mailbox "Sent Messages" {//
// special_use = \Sent//
// }//
// mailbox Trash {//
// special_use = \Trash//
// }//
// prefix =//
//}//
//passdb {//
// args = /etc/dovecot/dovecot-ldap.conf.ext//
// driver = ldap//
//}//
//plugin {//
// mail_log_events = delete undelete expunge mailbox_delete
mailbox_rename mailbox_create save//
// mail_log_fields = uid box msgid from subject//
// quota = maildir:_backup:ns=//
// 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.//
// quota_warning = storage=70%% quota-warning 70 %u//
// quota_warning1 = storage=90%% quota-warning 90 %u//
// quota_warning2 = storage=95%% quota-warning 95 %u//
// quota_warning3 = storage=99%% quota-warning 99 %u//
// sieve = ~/.dovecot.sieve//
// sieve_dir = ~/Maildir/sieve//
// sieve_extensions = +notify +imapflags//
//}//
//postmaster_address = postmaster@domain//
//protocols = imap pop3 sieve//
//service auth {//
// unix_listener auth-userdb {//
// group = vmail//
// mode = 0777//
// user = vmail//
// }//
//}//
//service imap-login {//
// inet_listener imap {//
// port = 143//
// }//
// process_min_avail = 20//
//}//
//service imap {//
// process_limit = 2048//
//}//
//service managesieve-login {//
// inet_listener sieve {//
// port = 4190//
// }//
// inet_listener sieve_deprecated {//
// port = 2000//
// }//
// process_min_avail = 20//
//}//
//service pop3-login {//
// inet_listener pop3 {//
// port = 110//
// }//
// process_min_avail = 20//
//}//
//service pop3 {//
// process_limit = 2048//
//}//
//service quota-warning {//
// executable = script
/etc/dovecot/scripts_notification_quota/quota-warning.sh//
// unix_listener quota-warning {//
// user = vmail//
// }//
// user = vmail//
//}//
//ssl = no//
//ssl_cert = </etc/pki/dovecot/certs/dovecot.pem//
//ssl_key = # hidden, use -P to show it//
//submission_host = smtpi.domain:25//
//syslog_facility = local1//
//userdb {//
// args = /etc/dovecot/dovecot-ldap.conf.ext//
// driver = ldap//
//}//
//protocol lda {//
// mail_plugins = " quota mail_log notify sieve"//
//}//
//protocol imap {//
// mail_max_userip_connections = 10000//
// mail_plugins = " quota mail_log notify imap_quota"//
//}//
//protocol pop3 {//
// mail_max_userip_connections = 10//
//}/
Thanks and best regards
--
*Gonzalo Palacios Goicolea*
U.T de Infraestructura de Equipos Centrales
/Tecnologías de la Información/
Universidad Autónoma de Madrid • Campus de Cantoblanco
Antes de imprimir este correo piense si es necesario.Cuidemos el
medioambiente.