[Dovecot] pop3 exim4 dovecot

Patrick Shirkey pshirkey at boosthardware.com
Thu Nov 8 16:39:55 EET 2012


On Fri, November 9, 2012 1:10 am, Odhiambo Washington wrote:
> On Thu, Nov 8, 2012 at 5:03 PM, Patrick Shirkey
> <pshirkey at boosthardware.com>wrote:
>
>>
>> On Fri, November 9, 2012 12:13 am, Odhiambo Washington wrote:
>> > On Thu, Nov 8, 2012 at 11:36 AM, Patrick Shirkey
>> > <pshirkey at boosthardware.com
>> >> wrote:
>> >
>> >>
>> >> On Thu, November 8, 2012 7:21 pm, Robert Schetterer wrote:
>> >> > Am 08.11.2012 08:48, schrieb Patrick Shirkey:
>> >> >> Hi,
>> >> >>
>> >> >> I have an exim4 and dovecot system. The system has multiple
>> accounts.
>> >> >> Exim4 is receiving emails in the /var/mail/user files and dovecot
>> is
>> >> >> configured to use /home/user/mail (mbox) folder.
>> >> >>
>> >> >> I have one account that dovecot is not processing
>> >> replies/bounces/etc...
>> >> >> The data is being written in the /var/mail/user file by exim4 but
>> as
>> >> far
>> >> >> as dovecot is aware there is nothing in the pop3 inbox.
>> >> >>
>> >> >> Can anyone suggest how I can enable dovecot to know that the data
>> is
>> >> in
>> >> >> the /var/mail/user file and deliver it to the pop3 inbox for this
>> >> >> account?
>> >> >>
>> >> >>
>> >> >>
>> >> >> --
>> >> >> Patrick Shirkey
>> >> >> Boost Hardware Ltd
>> >> >>
>> >> >
>> >> > show logs
>> >> > and config like doveconf -n
>> >> >
>> >> >
>> >>
>> >> There is nothing in the  dovecot logs afaict
>> >>
>> >> echo "my test" | mail -s "test message" test at xxx
>> >>
>> >> 2012-11-08 08:34:38 1TWNZO-0000TG-8s <= root at xxx U=root P=local S=398
>> >> 2012-11-08 08:34:38 1TWNZO-0000TG-8s => xxx <test at xxx> R=local_user
>> >> T=mail_spool
>> >> 2012-11-08 08:34:38 1TWNZO-0000TG-8s Completed
>> >>
>> >>
>> >> exim -bt test at xxx
>> >> R: system_aliases for xxx at localhost
>> >> R: userforward for xxx at localhost
>> >> R: procmail for xxx at localhost
>> >> R: maildrop for xxx at localhost
>> >> R: lowuid_aliases for xxx at localhost (UID 1238)
>> >> R: local_user for xxx at localhost
>> >> xxx at localhost
>> >>     <-- test at xxx
>> >>   router = local_user, transport = mail_spool
>> >>
>> >>
>> >> - Here's the dovecot config:
>> >>
>> >> # dovecot -n
>> >> # 1.2.15: /etc/dovecot/dovecot.conf
>> >> # OS: Linux 2.6.32-5-amd64 x86_64 Debian 6.0.6
>> >> log_timestamp: %Y-%m-%d %H:%M:%S
>> >> protocols: pop3 pop3s
>> >> listen: 127.0.0.1
>> >> login_dir: /var/run/dovecot/login
>> >> login_executable: /usr/lib/dovecot/pop3-login
>> >> mail_privileged_group: mail
>> >> mail_location: mbox:~/mail
>> >> mail_debug: yes
>> >> mbox_write_locks: fcntl dotlock
>> >> mail_executable: /usr/lib/dovecot/pop3
>> >> mail_plugin_dir: /usr/lib/dovecot/modules/pop3
>> >> auth default:
>> >>   debug: yes
>> >>   passdb:
>> >>     driver: pam
>> >>   userdb:
>> >>     driver: passwd
>> >>
>> >>
>> >>
>> > You are telling dovecot that mails are in mbox format (why you even
>> use
>> > mbox instead of Maildir++ beats me, but that's not what you asked for
>> help
>> > with) and are stored in /home/$user/mbox so go ahead at also tell Exim
>> to
>> > deliver to the same location!
>> > If you want Exim to deliver to /var/mail/$user then change your
>> > mail_location in dovecot.conf to point to this too.
>> >
>> >
>>
>>
>> Thanks for your advice. I inherited this system and it is a live B2B
>> system so I am trying not to break it as well as to keep it running :-)
>>
>> I have seen some unusual behaviour now.
>>
>> 1: According to my script to process the inbox for each account the pop3
>> account was empty. The code was previously working for many months. I
>> thought it might be related to the missing mail_location directive
>> because
>> the home/xxx/mail folder was missing for the specific account that was
>> having a problem so I added it as above but it didn't appear to fix the
>> problem.
>>
>
> You DO NOT need to add it manually. All you have to do is to send a test
> mail to the user and the mbox will be created with the correct
> permissions.
>
>
>>
>> 2: I modified it as suggested : mail_location = INBOX=/var/mail/%u
>>
>> That gave me an error
>>
>> Nov  8 13:47:03 mail dovecot: POP3(xxx): mail_location: Ambiguous mail
>> location setting, don't know what to do with it: INBOX=/var/mail/xxx
>> (try
>> prefixing it with mbox: or maildir:)
>> Nov  8 13:47:03 mail dovecot: POP3(xxx): Fatal: Namespace initialization
>> failed
>>
>
>
> You must RTFM. The examples are in conf.d/10-mail.conf and they have the
> following text:
>
> <quote>
> ## Mailbox locations and namespaces
> ##
>
> # Location for users' mailboxes. The default is empty, which means that
> Dovecot
> # tries to find the mailboxes automatically. This won't work if the user
> # doesn't yet have any mail, so you should explicitly tell Dovecot the
> full
> # location.
> #
> # If you're using mbox, giving a path to the INBOX file (eg. /var/mail/%u)
> # isn't enough. You'll also need to tell Dovecot where the other mailboxes
> are
> # kept. This is called the "root mail directory", and it must be the first
> # path given in the mail_location setting.
> #
> # There are a few special variables you can use, eg.:
> #
> #   %u - username
> #   %n - user part in user at domain, same as %u if there's no domain
> #   %d - domain part in user at domain, empty if there's no domain
> #   %h - home directory
> #
> # See doc/wiki/Variables.txt for full list. Some examples:
> #
> #   mail_location = maildir:~/Maildir
> #   mail_location = mbox:~/mail:INBOX=/var/mail/%u
> #   mail_location = mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%n
> #
> # <doc/wiki/MailLocation.txt>
> </quote>
>
> ... make sense?
>

Starting to now.

My first attempt to *not* break the existing system was to try with the
following:

    mail_location = mbox:~/mail

But that didn't work so I asked here and according to your first email it
seemed this config was necessary:

    mail_location = INBOX=/var/mail/%u

But after re reading the docs it appears that *both* locations are required:

    mail_location = mbox:~/mail:INBOX=/var/mail/%u



--
Patrick Shirkey
Boost Hardware Ltd



More information about the dovecot mailing list