Я хотел бы использовать doveadm для удаления (и других). Когда я бегу
doveadm search -u 'some@email.com' mailbox Trash savedbefore 90d
оно работает. Но когда я использую -A, этого не происходит.
doveadm search -A mailbox Trash savedbefore 90d
Результат (с возможностью отладки)
doveadm(root): Error: userdb list: Request timed out
doveadm(root): Debug: expire: Couldn't optimize search query: mailbox Trash not in expire database
doveadm: Error: Failed to iterate through some users
у меня dovecot.conf интересные настройки:
first_valid_gid = 107
first_valid_uid = 107
last_valid_gid = 107
last_valid_uid = 107
protocols = imap
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
mode = 0660
user = postfix
}
unix_listener auth-master {
group = mail
mode = 0666
user = vmail
}
user = nobody
}
protocol imap {
mail_plugins = $mail_plugins imap_acl
}
protocol lda {
auth_socket_path = /var/run/dovecot/auth-master
hostname = brzezina.com.pl
mail_plugin_dir = /usr/lib/dovecot/modules/
mail_plugins = sieve
postmaster_address = postmaster@brzezina.com.pl
sendmail_path = /usr/sbin/sendmail
}
mail_plugins = $mail_plugins expire
plugin {
expire = Trash
expire = Trash/*
expire = Spam
expire_dict = proxy::expire
}
Моя userdb находится в postgresql, а dovecot-sql.conf.ext имеет раскомментированный iterate_query:
# Query to get a list of all usernames.
iterate_query = SELECT address AS user FROM users
Я полагаю, что поскольку я запускаю его от root, он пытается найти системную userdb, но должен использовать sql userdb. Но не знаю, как это заставить. Я пытался использовать -S, но не знаю что.