I can't log in to my newly self-hosted webmail and I'm getting the following entries in /var/log/mail.log
Feb 10 02:00:31 ip-172-26-15-53 dovecot: lmtp([email protected]): Error: open(
/etc/dovecot/sieve/before.d/no-spam.svbin.ip-172-26-15-53.31363.94959b0f9050164f) failed: R
ead-only file system
Feb 10 02:00:31 ip-172-26-15-53 dovecot: lmtp([email protected]): Error: wEGGI
j+5QF6DegAAAPOhIQ: sieve: binary save: failed to create temporary file: open(/etc/dovecot/s
ieve/before.d/no-spam.svbin.) failed: Read-only file system
It looks to be a permissions problem. I've tried the suggestions here
My install is at /etc/dovecot
and permissions are
-rwxrwx--- 1 vmail dovecot
Dovecot was installed on Ubuntu 18.04 (Amazon lightsail) using the following playbook:
https://github.com/codecowboy/sovereign/blob/master/roles/mailserver/tasks/dovecot.yml
Dovecot version is 2.2.33.2 (d6601f4ec)
Mailbox is stored on an encfs volume
The systemd unit, which controls dovecot has ProtectSystem set to full or strict, which prevents the processes from writing to /etc.
Add to the unit file
/etc/systemd/system/multi-user.target.wants/dovecot.service
an exception for this directory:ReadWritePaths=/etc/dovecot/sieve/before.d/
Reload the units with:
systemctl daemon-reload
And restart dovecot with:
systemctl restart dovecot
In some kernels, instead of ReadWritePaths, use ReadWriteDirectories.