Sieve: Invalid/unknown path to storage
Hi, I have just updated from Ubuntu 15.04 to 15.10. Unfortunately, sieve scripts are not recognized anymore.
Here is my version:
dovecot --version 2.2.18 apt-cache policy dovecot-sieve dovecot-sieve: Installed: 1:2.2.18-2ubuntu2 Candidate: 1:2.2.18-2ubuntu2 Version table: *** 1:2.2.18-2ubuntu2 0 500 http://us.archive.ubuntu.com/ubuntu/ wily/main amd64 Packages 100 /var/lib/dpkg/status
And this is the log entry:
Dec 25 09:24:12 home-le dovecot: lda(user1): Warning: sieve: file storage: Active sieve script symlink /home/user1/.dovecot.sieve is broken: Invalid/unknown path to storage (points to /home/user1/sieve). Dec 25 09:24:12 home-le dovecot: lda(user1): msgid=<567CFD2C.7070301@example.org>: saved mail to INBOX Dec 25 09:24:12 home-le postfix/local[28536]: 70876BD035A: to=<user1@example.org>, relay=local, delay=0.07, delays=0.02/0.01/0/0.04, dsn=2.0.0, status=sent (delivered to command: /usr/lib/dovecot/deliver -c /etc/dovecot/dovecot.conf -m "${EXTENSION}")
It is not a permission issue (though there should even be one with more restrictive permissions)
otheruser@home-le:~$ cat /home/user1/.dovecot.sieve require ["variables","date", "include"];
include :personal "00-delete"; include :personal "01-spam"; include :personal "50-bulk_filter";
It is apparently also not a path normalization issue (also according to the correct "points to" path in the log). I used an absolute path in the symlink:
user1@home-le:~$ ls -la .dovecot.sieve lrwxrwxrwx 1 user1 user1 33 Dec 25 09:23 .dovecot.sieve -> /home/kay/sieve/managesieve.sieve
Any idea what could be wrong here?
Here is my dovecot -n output:
namespace inbox { inbox = yes location = mailbox Drafts { special_use = \Drafts } mailbox Junk { special_use = \Junk } mailbox Sent { special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { special_use = \Trash } prefix = separator = . type = private } passdb { driver = pam } plugin { sieve = file:~/.dovecot.sieve sieve_dir = ~/sieve } postmaster_address = postmaster@example.net protocols = " imap sieve" service managesieve-login { inet_listener sieve { port = 4190 } } ssl_ca = </etc/ssl/certs/startssl.ca.pem ssl_cert = </etc/ssl/certs/net.example.home-le.pem ssl_key = </etc/ssl/private/net.example.home-le.key submission_host = 192.168.153.1 userdb { driver = passwd } protocol lda { mail_plugins = " sieve" } protocol imap { mail_max_userip_connections = 50 }
Am 25. Dezember 2015 10:06:56 MEZ, schrieb Kay-Michael Voit <kay@voits.net>:
Hi, I have just updated from Ubuntu 15.04 to 15.10. Unfortunately, sieve scripts are not recognized anymore.
Here is my version:
dovecot --version 2.2.18 apt-cache policy dovecot-sieve dovecot-sieve: Installed: 1:2.2.18-2ubuntu2 Candidate: 1:2.2.18-2ubuntu2 Version table: *** 1:2.2.18-2ubuntu2 0 500 http://us.archive.ubuntu.com/ubuntu/ wily/main amd64 Packages 100 /var/lib/dpkg/status
What was the version of dovecot in ubuntu 15.04? Have you checked your existing configuration files against the examples provided by the new version for changes to options?
And this is the log entry:
Dec 25 09:24:12 home-le dovecot: lda(user1): Warning: sieve: file storage: Active sieve script symlink /home/user1/.dovecot.sieve is broken: Invalid/unknown path to storage (points to /home/user1/sieve). Dec 25 09:24:12 home-le dovecot: lda(user1): msgid=<567CFD2C.7070301@example.org>: saved mail to INBOX Dec 25 09:24:12 home-le postfix/local[28536]: 70876BD035A: to=<user1@example.org>, relay=local, delay=0.07, delays=0.02/0.01/0/0.04, dsn=2.0.0, status=sent (delivered to command: /usr/lib/dovecot/deliver -c /etc/dovecot/dovecot.conf -m "${EXTENSION}")
Set mail_debug=yes that logs details of the sieve plugin execution http://wiki2.dovecot.org/Pigeonhole/Sieve/Troubleshooting
It is not a permission issue (though there should even be one with more
restrictive permissions)
otheruser@home-le:~$ cat /home/user1/.dovecot.sieve require ["variables","date", "include"];
include :personal "00-delete"; include :personal "01-spam"; include :personal "50-bulk_filter";
It is apparently also not a path normalization issue (also according to
the correct "points to" path in the log). I used an absolute path in the symlink:
user1@home-le:~$ ls -la .dovecot.sieve lrwxrwxrwx 1 user1 user1 33 Dec 25 09:23 .dovecot.sieve -> /home/kay/sieve/managesieve.sieve
Any idea what could be wrong here?
Here is my dovecot -n output:
namespace inbox { inbox = yes location = mailbox Drafts { special_use = \Drafts } mailbox Junk { special_use = \Junk } mailbox Sent { special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { special_use = \Trash } prefix = separator = . type = private } passdb { driver = pam } plugin { sieve = file:~/.dovecot.sieve sieve_dir = ~/sieve }
According to the documentation sieve_dir is deprecated but should still work. The "sieve =" configuration accepts options to set the active script http://wiki2.dovecot.org/Pigeonhole/Sieve/Configuration
postmaster_address = postmaster@example.net protocols = " imap sieve" service managesieve-login { inet_listener sieve { port = 4190 } } ssl_ca = </etc/ssl/certs/startssl.ca.pem ssl_cert = </etc/ssl/certs/net.example.home-le.pem ssl_key = </etc/ssl/private/net.example.home-le.key submission_host = 192.168.153.1 userdb { driver = passwd } protocol lda { mail_plugins = " sieve" } protocol imap { mail_max_userip_connections = 50 }
According to the documentation sieve_dir is deprecated but should still work. The "sieve =" configuration accepts options to set the active script http://wiki2.dovecot.org/Pigeonhole/Sieve/Configuration Ok, it seems that was the problem. I changed sieve = file:~/.dovecot.sieve to sieve = file:~/sieve;active=~/.dovecot.sieve Now it works
Guess I should check the config further.
Thanks.
participants (2)
-
Christian Kivalo
-
Kay-Michael Voit