You are right. When I unset HOME before running expire-tool I don't get the error message. I'm not sure how to add a user to the expire database. All I configured is using passwd as userdb. I have include my configuration below:
root@server:/var/lib/dovecot# dovecot -n # 1.1.rc8: /etc/dovecot.conf log_path: /var/log/mail/dovecot.log info_log_path: /var/log/mail/dovecot.log ssl_disable: yes disable_plaintext_auth: no login_dir: /var/run/dovecot/login login_executable: /usr/local/libexec/dovecot/imap-login login_process_size: 16 max_mail_processes: 16 mail_location: maildir:%h/mail umask: 7 mail_plugins: expire quota imap_quota mail_log namespace: type: public separator: / prefix: Public/ location: maildir:/home/public/mail:CONTROL=%h/mail/control/public:INDEX=%h/mail/index/public list: yes subscriptions: yes namespace: type: private separator: / inbox: yes list: yes subscriptions: yes auth default: verbose: yes passdb: driver: pam userdb: driver: passwd socket: type: listen client: path: /var/run/dovecot/auth-client mode: 432 user: dovecot group: mail master: path: /var/run/dovecot/auth-master mode: 384 plugin: quota: maildir quota_rule: *:storage=1GB quota_rule2: Trash:storage=10%% expire: Trash 1 expire_dict: proxy::expire dict: expire: db:/var/lib/dovecot/expire.db
-------- Original Message -------- Subject: Re: [Dovecot] expire plugin - setgid failed From: Timo Sirainen <tss@iki.fi> To: e-frog <e-frog@gmx.de> Date: 03.06.2008 20:37
On Jun 3, 2008, at 9:27 PM, e-frog wrote:
I'm still having problems to get the expire plugin working. Now I
get the following error when running the expire-tool.Error: stat(/root/mail/.Trash/tmp) failed: Permission denied
(euid=2005 egid=100)Somehow it tries to access root's mailbox with a standard user
account. I'm already on v1.1rc8.I guess it takes /root from $HOME environment? What happens if you
unset HOME before running expire-tool? Or do you really have a root
user in the expire database? (why/how?)