Dovecot 2 and Expire plugins : doesn't have records in db
Hide Details
FROM:
* San San
TO:
* Â dovecot(a)dovecot.org
Message flagged
Tuesday, May 24, 2011 1:09 PM
Dear Dovecot
I have already config dovecot server with 2.0.13, and I need to enable expire plugins (in dovecot1 I have already used)
but I see in my db doesn't have any record how about to debug or trace to solve this problem
doveconf -n :
auth_verbose = yes
default_internal_user = vmail
dict {
 expire = mysql:/usr/local/etc/dovecot/dovecot-dict-expire.conf
}
disable_plaintext_auth = no
first_valid_gid = 200
first_valid_uid = 200
last_valid_gid = 200
last_valid_uid = 200
login_greeting = mail ready.
mail_gid = vmail
mail_location = maildir:~/Maildir
mail_nfs_storage = yes
mail_plugins = expire
mail_uid = vmail
maildir_very_dirty_syncs = yes
namespace {
 hidden = no
 inbox = yes
 list = yes
 location =Â
 prefix = INBOX.
 separator =Â
 subscriptions = yes
 type = private
}
passdb {
 args = /usr/local/etc/dovecot/dovecot-ldap.conf
 driver = ldap
}
plugin {
 autocreate = INBOX.Drafts
 autocreate2 = INBOX.Sent
 autocreate3 = INBOX.Trash
 autocreate4 = INBOX.Spam
 autosubscribe = INBOX.Drafts
 autosubscribe2 = INBOX.Sent
 autosubscribe3 = INBOX.Trash
 autosubscribe4 = INBOX.Spam
 expire = INBOX.Trash 15d
 expire2 = INBOX.Spam 30d
 expire_dict = proxy::expire
 quota = maildir
 quota_rule = INBOX.Trash:storage=+200M
}
protocols = imap
service anvil {
 chroot = empty
 client_limit = 0
 drop_priv_before_exec = no
 executable = anvil
 extra_groups =Â
 group =Â
 idle_kill = 4294967295 secs
 privileged_group =Â
 process_limit = 1
 process_min_avail = 1
 protocol =Â
 service_count = 0
 type = anvil
 unix_listener anvil-auth-penalty {
  group =Â
  mode = 0600
  user =Â
 }
 unix_listener anvil {
  group =Â
  mode = 0600
  user =Â
 }
 user = $default_internal_user
 vsz_limit = 18446744073709551615 B
}
service auth-worker {
 chroot =Â
 client_limit = 1
 drop_priv_before_exec = no
 executable = auth -w
 extra_groups =Â
 group =Â
 idle_kill = 0
 privileged_group =Â
 process_limit = 0
 process_min_avail = 0
 protocol =Â
 service_count = 1
 type =Â
 unix_listener auth-worker {
  group =Â
  mode = 0600
  user = $default_internal_user
 }
 user =Â
 vsz_limit = 18446744073709551615 B
}
service auth {
 chroot =Â
 client_limit = 4096
 drop_priv_before_exec = no
 executable = auth
 extra_groups =Â
 group =Â
 idle_kill = 0
 privileged_group =Â
 process_limit = 1
 process_min_avail = 0
 protocol =Â
 service_count = 0
 type =Â
 unix_listener auth-client {
  group =Â
  mode = 0600
  user =Â
 }
 unix_listener auth-login {
  group =Â
  mode = 0600
  user = $default_internal_user
 }
 unix_listener auth-master {
  group = vmail
  mode = 0600
  user = vmail
 }
 unix_listener auth-userdb {
  group =Â
  mode = 0600
  user =Â
 }
 unix_listener login/login {
  group =Â
  mode = 0666
  user =Â
 }
 user = root
 vsz_limit = 18446744073709551615 B
}
service config {
 chroot =Â
 client_limit = 0
 drop_priv_before_exec = no
 executable = config
 extra_groups =Â
 group =Â
 idle_kill = 0
 privileged_group =Â
 process_limit = 0
 process_min_avail = 0
 protocol =Â
 service_count = 0
 type = config
 unix_listener config {
  group =Â
  mode = 0600
  user =Â
 }
 user =Â
 vsz_limit = 18446744073709551615 B
}
service dict {
 chroot =Â
 client_limit = 1
 drop_priv_before_exec = no
 executable = dict
 extra_groups =Â
 group =Â
 idle_kill = 0
 privileged_group =Â
 process_limit = 0
 process_min_avail = 0
 protocol =Â
 service_count = 0
 type =Â
 unix_listener dict {
  group =Â
  mode = 0600
  user = vmail
 }
 user = $default_internal_user
 vsz_limit = 64 M
}
service director {
 chroot =Â
 client_limit = 0
 drop_priv_before_exec = no
 executable = director
 extra_groups =Â
 fifo_listener login/proxy-notify {
  group =Â
  mode = 00
  user =Â
 }
 group =Â
 idle_kill = 4294967295 secs
 privileged_group =Â
 process_limit = 1
 process_min_avail = 0
 protocol =Â
 service_count = 0
 type =Â
 unix_listener director-admin {
  group =Â
  mode = 0600
  user =Â
 }
 unix_listener login/director {
  group =Â
  mode = 00
  user =Â
 }
 user = $default_internal_user
 vsz_limit = 18446744073709551615 B
}
service dns_client {
 chroot =Â
 client_limit = 1
 drop_priv_before_exec = no
 executable = dns-client
 extra_groups =Â
 group =Â
 idle_kill = 0
 privileged_group =Â
 process_limit = 0
 process_min_avail = 0
 protocol =Â
 service_count = 0
 type =Â
 unix_listener dns-client {
  group =Â
  mode = 0666
  user =Â
 }
 unix_listener login/dns-client {
  group =Â
  mode = 0666
  user =Â
 }
 user = $default_internal_user
 vsz_limit = 18446744073709551615 B
}
service doveadm {
 chroot =Â
 client_limit = 1
 drop_priv_before_exec = no
 executable = doveadm-server
 extra_groups =Â
 group =Â
 idle_kill = 0
 privileged_group =Â
 process_limit = 0
 process_min_avail = 0
 protocol =Â
 service_count = 1
 type =Â
 unix_listener doveadm-server {
  group =Â
  mode = 0600
  user =Â
 }
 user =Â
 vsz_limit = 64 M
}
service imap-login {
 chroot = login
 client_limit = 800
 drop_priv_before_exec = no
 executable = imap-login
 extra_groups =Â
 group =Â
 idle_kill = 0
 inet_listener imap {
  address =Â
  port = 143
  ssl = no
 }
 inet_listener imaps {
  address =Â
  port = 993
  ssl = yes
 }
 privileged_group =Â
 process_limit = 255
 process_min_avail = 10
 protocol = imap
 service_count = 0
 type = login
 user = nobody
 vsz_limit = 64 M
}
service imap {
 chroot =Â
 client_limit = 1024
 drop_priv_before_exec = no
 executable = imap
 extra_groups =Â
 group =Â
 idle_kill = 0
 privileged_group =Â
 process_limit = 1024
 process_min_avail = 8
 protocol = imap
 service_count = 1
 type =Â
 unix_listener login/imap {
  group =Â
  mode = 0666
  user =Â
 }
 user =Â
 vsz_limit = 64 M
}
service lmtp {
 chroot =Â
 client_limit = 0
 drop_priv_before_exec = no
 executable = lmtp
 extra_groups =Â
 group =Â
 idle_kill = 0
 privileged_group =Â
 process_limit = 0
 process_min_avail = 0
 protocol = lmtp
 service_count = 0
 type =Â
 unix_listener lmtp {
  group =Â
  mode = 0666
  user =Â
 }
 user =Â
 vsz_limit = 0
}
service log {
 chroot =Â
 client_limit = 0
 drop_priv_before_exec = no
 executable = log
 extra_groups =Â
 group =Â
 idle_kill = 0
 privileged_group =Â
 process_limit = 1
 process_min_avail = 0
 protocol =Â
 service_count = 0
 type = log
 user =Â
 vsz_limit = 18446744073709551615 B
}
service pop3-login {
 chroot = login
 client_limit = 255
 drop_priv_before_exec = no
 executable = pop3-login
 extra_groups =Â
 group =Â
 idle_kill = 0
 inet_listener pop3 {
  address =Â
  port = 110
  ssl = no
 }
 inet_listener pop3s {
  address =Â
  port = 995
  ssl = yes
 }
 privileged_group =Â
 process_limit = 255
 process_min_avail = 10
 protocol = pop3
 service_count = 0
 type = login
 user = nobody
 vsz_limit = 64 M
}
service pop3 {
 chroot =Â
 client_limit = 1
 drop_priv_before_exec = no
 executable = pop3
 extra_groups =Â
 group =Â
 idle_kill = 0
 privileged_group =Â
 process_limit = 1024
 process_min_avail = 0
 protocol = pop3
 service_count = 1
 type =Â
 unix_listener login/pop3 {
  group =Â
  mode = 0666
  user =Â
 }
 user =Â
 vsz_limit = 18446744073709551615 B
}
service ssl-params {
 chroot =Â
 client_limit = 0
 drop_priv_before_exec = no
 executable = ssl-params
 extra_groups =Â
 group =Â
 idle_kill = 0
 privileged_group =Â
 process_limit = 0
 process_min_avail = 0
 protocol =Â
 service_count = 0
 type =Â
 unix_listener login/ssl-params {
  group =Â
  mode = 0666
  user =Â
 }
 user =Â
 vsz_limit = 18446744073709551615 B
}
ssl = no
userdb {
 args = /usr/local/etc/dovecot/dovecot-ldap.conf
 driver = ldap
}
protocol imap {
 imap_client_workarounds = tb-extra-mailbox-sep
 mail_max_userip_connections = 200
 mail_plugins = quota imap_quota expire autocreate
}
protocol pop3 {
 pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
 pop3_uidl_format = %v-%u
}
protocol lda {
 postmaster_address = postmaster(a)example.com
}
Â
and dovecot-dict-expire.conf isÂ
connect = host=10.3.1.31Â dbname=dovecot user=dovecot password=dovecot
# CREATE TABLE expires (
# Â username varchar(100) not null,
# Â mailbox varchar(255) not null,
# Â expire_stamp integer not null,
# Â primary key (username, mailbox)
# );
map {
 pattern = shared/expire/$user/$mailbox
 table = expires
 value_field = expire_stamp
 fields {
  username = $user
  mailbox = $mailbox
 }
}
Â
Sincerely,
Nantharat Puwarang