[Dovecot] I need a quota expert

Tibby tibby at tibby.hu
Wed Oct 10 17:29:08 EEST 2012


I'm having problems with dovecot quota configuration.
If I Include the driver mysql in dovecot-sql.conf I'm getting this error:
dovecot: dict: Error in configuration file /etc/dovecot/dovecot-sql.conf line 1: Unknown setting: driver
dovecot: dict: Failed to initialize dictionary 'quotadict'

If I Don't include it:
dovecot: auth(default): Fatal: sql: driver not set in configuration file /etc/dovecot/dovecot-sql.conf
dovecot: auth(default): Fatal: sql: driver not set in configuration file /etc/dovecot/dovecot-sql.conf

Now What???
How Should I configure quota ?

My SQL has a mail db with a user table.
The table has email, password, quota_kb fields.

my dovecot.conf:
----------------
protocols = imap imaps pop3 pop3s
log_timestamp = "%Y-%m-%d %H:%M:%S "
mail_location = maildir:/home/vmail/%d/%n/Maildir
disable_plaintext_auth = no
ssl_cert_file = /etc/ssl/certs/dovecot.pem
ssl_key_file = /etc/ssl/private/dovecot.pem
namespace private {
    separator = .
    prefix = INBOX.
    inbox = yes
}
protocol imap {
  mail_plugins = quota imap_quota
}
protocol lda {
    log_path = /home/vmail/dovecot-deliver.log
    auth_socket_path = /var/run/dovecot/auth-master
    postmaster_address = postmaster at domain.tld
    mail_plugins = sieve quota
    global_script_path = /home/vmail/globalsieverc
    mail_plugin_dir = /usr/lib/dovecot/modules/lda
}
protocol pop3 {
    pop3_uidl_format = %08Xu%08Xv
    mail_plugins = quota
}
dict {
  quotadict = mysql:/etc/dovecot/dovecot-sql.conf
}
plugin {
  quota = dict:user::proxy::quotadict
  quota_rule = *:storage=10M:messages=1000
}
auth default {
    user = root
    passdb sql {
        args = /etc/dovecot/dovecot-sql.conf
    }
     userdb sql {
         args = /etc/dovecot/dovecot-sql.conf
     }
    socket listen {
        master {
            path = /var/run/dovecot/auth-master
            mode = 0600
            user = vmail
        }
        client {
            path = /var/spool/postfix/private/auth
            mode = 0660
            user = postfix
            group = postfix
        }
    }
}
mail_uid = 5000
mail_gid = 5000





my dovecot-sql.conf:
----------------
driver = mysql
connect = host=127.0.0.1 dbname=mail user=****** password=******
default_pass_scheme = CRYPT
password_query = SELECT email as user, password, concat('*:storage=', quota_kb) AS quota_rule FROM users WHERE email='%u';

user_query = SELECT CONCAT('/home/vmail/',CONCAT(SUBSTRING_INDEX(email,'@',-1),'/',SUBSTRING_INDEX(email,'@',1))) AS home, 5000 AS uid, 5000 AS gid, concat('*:storage=', quota_kb) AS quota_rule FROM users WHERE email='%u'

map {
  pattern = priv/quota/storage
  table = user
  username_field = user
  value_field = quota_kb
}


SOMEBODY PLEASE HELP ME!!! :)



More information about the dovecot mailing list