Hello,
when receiving mails for multiple recipients via LMTP, I often see the
following messages on our servers:
May 22 11:06:10 sinon dovecot[44304]: lmtp(119718): Connect from $IP$
May 22 11:06:11 sinon dovecot[44304]: lmtp($USER1$)<119718><2HnmOgIR5Vym0wEA22L5Rg>: msgid=<$MSGID$>: saved mail to INBOX
May 22 11:06:11 sinon dovecot[44304]: lmtp($USER2$)<119718><2HnmOgIR5Vym0wEA22L5Rg:2>: Error: stat(/IMAP/mail/mailboxes/$USER1$/mdbox/mailboxes/INBOX/dbox-Mails/dovecot.index.cache) failed: Permission denied (euid=$UID2$($USER2$) egid=$GID2$(rbg) missing +x perm: /IMAP/mail/mailboxes/$USER1$, dir owned by $UID1$:$GID2$ mode=0700)
May 22 11:06:11 sinon dovecot[44304]: lmtp($USER2$)<119718><2HnmOgIR5Vym0wEA22L5Rg:2>: Error: open(/IMAP/mail/mailboxes/$USER1$/mdbox/mailboxes/INBOX/dbox-Mails/dovecot.index.cache) failed: Permission denied (euid=$UID2$($USER2$) egid=$GID2$(rbg) missing +x perm: /IMAP/mail/mailboxes/$USER1$, dir owned by $UID1$:$GID2$ mode=0700)
May 22 11:06:11 sinon dovecot[44304]: lmtp($USER2$)<119718><2HnmOgIR5Vym0wEA22L5Rg:2>: Error: lstat(/IMAP/mail/mailboxes/$USER1$/mdbox/mailboxes/INBOX/dbox-Mails/dovecot.index.cache.lock) failed: Permission denied
May 22 11:06:11 sinon dovecot[44304]: lmtp($USER2$)<119718><2HnmOgIR5Vym0wEA22L5Rg:2>: Error: file_dotlock_open(/IMAP/mail/mailboxes/$USER1$/mdbox/mailboxes/INBOX/dbox-Mails/dovecot.index.cache) failed: Permission denied (euid=$UID2$($USER2$) egid=$GID2$(rbg) missing +x perm: /IMAP/mail/mailboxes/$USER1$, dir owned by $UID1$:$GID2$ mode=0700)
May 22 11:06:11 sinon dovecot[44304]: lmtp($USER2$)<119718><2HnmOgIR5Vym0wEA22L5Rg:2>: Error: open(/IMAP/mail/mailboxes/$USER1$/mdbox/mailboxes/INBOX/dbox-Mails/dovecot.index.cache) failed: Permission denied (euid=$UID2$($USER2$) egid=$GID2$(rbg) missing +x perm: /IMAP/mail/mailboxes/$USER1$, dir owned by $UID1$:$GID2$ mode=0700)
May 22 11:06:11 sinon dovecot[44304]: lmtp($USER2$)<119718><2HnmOgIR5Vym0wEA22L5Rg:2>: 2HnmOgIR5Vym0wEA22L5Rg:2: sieve: msgid=<$MSGID$>: stored mail into mailbox 'INBOX'
May 22 11:06:11 sinon dovecot[44304]: lmtp(119718): Disconnect from $IP$: Successful quit
(usernames, uids, gids and IP addresses anonymized)
So far, I was not able to reproduce this issue on a simple test setup,
but I have the strong impression, that is has something to do with the
fact, if some of the affected users have a active sieve script and
others do not use sieve. In the example above $USER1$ did not have a
sieve script configured but $USER2$ had one, as you can see. As a
workaround, I configured an empty sieve script for all users with out
sieve configured. This seems to work but actually I do not want to have
users with empty sieve scripts.
This bug seems to be related to
https://dovecot.org/list/dovecot/2013-February/088540.html where Timo
stated:
"LMTP always delivers the mail to the first user. Then it tries to copy
the first mail to the second user, because in some setups this can be
done using hard links. With mbox that of course doesn't work, but looks
like instead of failing silently it logs an error. So everything is
working as it should, except there are these unnecessary errors logged.
I'll see about getting rid of them."
Is it possible to get rid of these error messages, either by a config
setting that prevents if they do not lead to a real problem or by
changing the code to avoid the behaviour described by Timo?
Attached you can find doveconf -n output and the used ldap.conf (both
anonymized), the referenced /etc/dovecot/passdb.deny and
/etc/dovecot/userdb.overrides are usually empty files and only used
during mailbox migrations.
Best regards,
Patrick Cernko <pcernko@mpi-klsb.mpg.de> +49 681 9325 5815
Joint Administration: Information Services and Technology
Max-Planck-Institute fuer Informatik & Softwaresysteme