[Postfixbuch-users] OT: Dovecot/MySQL und Quota-Problem

listacc at gmx.de listacc at gmx.de
Do Jun 18 17:23:49 CEST 2009


Hallo,

meine Frage hat zwar nichts mit Postfix zu tun, aber vielleicht habt ihr ja eine Idee:

Ich setze gerade einen IMAP-Server auf: openSuSE 11.1 mit dovecot 1.1.7 (Paket aus dem SuSE-Repository), maildir.

Die Userverwaltung (mit Quota) erfolgt mit Postfixadmin über eine MySQL-Datenbank.

Das funktioniert auch alles super, bis ich die Quota einrichten wollte...

Hier liest dovecot die Quotainformation anscheinend korrekt aus der Datenbank. Sobald der Speicherplatz voll ist, werden alle weiteren ankommenden Mails gebounced. Die eingestellte Quota wird nicht überschritten.

Möchte ich meinem User nun aber seinen Speicherplatz erhöhen, trägt Postfixadmin den neuen Quotawert korrekt in die Datenbank ein. Nun geschieht jedoch etwas sonderbares:

es werden wieder Mails angenommen. Allerdings wird dem Mailclient weiterhin die alte maximale Mailboxgröße angezeigt (Quota-Plugin in Thunderbird), und eine Postfachfüllung >100%. In der Datei "mailboxsize" im maildir des Users auf dem Server steht jedoch weiterhin der alte Wert. Auch wenn man den Inhalt von "mailboxsize" löscht, trägt dovecot dort umgehend wieder den alten Wert ein. Anscheinend schaut dovecot nicht mehr in die MySQL-Tabelle. Aber warum werden dann wieder Mails angenommen??

Versuche ich nun als User, Mails aus der Inbox zu löschen, wird dies mit einem "quota exceeded" abgelehnt, und man muß dies von Hand auf dem Server machen. Nicht gerade praxistauglich...

Kennt ihr ähnliche Probleme? 

Danke für jeden Hinweis!!

  Andreas

**********************************************************************

dovecot-sql.conf:
-----------------
(...)
password_query = SELECT username AS user, password, '/drbd/mail/vmail/%d/%n' AS userdb_home, 'maildir:/drbd/mail/vmail/%d/%n' AS userdb_mail, 5001 AS userdb_uid, 5001 AS userdb_gid FROM mailbox WHERE username = '%u' AND active = '1'
(..)
user_query = SELECT '/drbd/mail/vmail/%d/%n' AS home, 'maildir:/drbd/mail/vmail/%d/%n' AS mail, 5001 AS uid, 5001 AS gid, concat('*:storage=', quota, 'B') AS quota_rule FROM mailbox WHERE username = '%u' AND active = '1' 
(...)


dovecot.conf:
-------------

(...)

protocol imap {
  login_executable = /usr/lib/dovecot/imap-login
  mail_executable = /usr/lib/dovecot/imap
  imap_max_line_length = 65536
  mail_max_userip_connections = 30
  mail_plugins = quota imap_quota
  mail_plugin_dir = /usr/lib64/dovecot/modules/imap

(...)

protocol lda {
  postmaster_address = postmaster at unseredomain.de
  mail_plugins = cmusieve quota
  mail_plugin_dir = /usr/lib64/dovecot/modules/lda

  # If user is over quota, return with temporary failure instead of
  # bouncing the mail.
  #quota_full_tempfail = no

  sendmail_path = /usr/lib/sendmail
  rejection_reason = Your message to <%t> was automatically rejected:%n%r
  auth_socket_path = /var/run/dovecot/auth-master

}

(...)


dict {
  #quota = mysql:/etc/dovecot-dict-quota.conf 
}

# Path to Berkeley DB's configuration file. See doc/dovecot-db-example.conf
#dict_db_config = 


plugin {

  sieve = /drbd/mail/vmail/%d/%n/dovecot.sieve

  quota = maildir

(...)

 
-- 
GMX FreeDSL Komplettanschluss mit DSL 6.000 Flatrate und Telefonanschluss
für nur 17,95 Euro/mtl.!* http://portal.gmx.net/de/go/dsl02



Mehr Informationen über die Mailingliste Postfixbuch-users