Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I currently have a setup using exim as the MTA and courier-imapd for POP3/IMAP access.

Now I plan moving to dovecot instead of courier but for testing purposes I'd like to run it on a different port for some time. Obviously that makes no sense without any incoming emails so I'd like to deliver mails (for a certain domain if possible) to both courier-imapd and dovecot.

So I'm looking for some suggestions on how to configure exim to behave in the specified way. Please note that I'd like to pass the messages to dovecot through its LDA so using a system filter that writes the email to a specific filesystem location won't work.

Since @ChrisS asked for more details: I'd like to test things with dovecot before (deciding to) switch. And the easiest way is doing that with a "copy" of my real mailbox - but since I also want to test dovecot's sieve filters I need to deliver emails to it via its LDA (or LMTP, but I don't see a big advantage in that) - and for courier the emails are written directly to the maildir by exim. Obviously the maildir of dovecot will be in a different location to avoid collisions.

share|improve this question
courier-imapd is not an MDA. It has absolutely nothing to do with receiving messages at all. It is only used for retrieving messages by the MUA. You can almost always run multiple POP/IMAP servers against the same datastore (usually Mailbox or a DB). Perhaps if you explain exactly what you're trying to accomplish we can be more helpful. – Chris S Oct 24 '11 at 14:31
@ChrisS: See my last paragraph - it might clarify some things. – ThiefMaster Oct 24 '11 at 15:34
It would be an infinitely better idea to setup a whole different test server, try the configuration changes, and see how it works, than messing with a production server. This should be quick and easy if you've got virtualization going already. Bonus you can test your backup/restore procedures at the same time. – Chris S Oct 24 '11 at 17:00
up vote 1 down vote accepted

I found a way how to do it: Using a route with unseen = true ensures that the message is passed to other routers, too.

share|improve this answer

You have to think differently. Why not going the way to deliver mail dependent on the recipient? For all "old" accounts it is going (as usual) to courier and for "new" accounts to dovecot. This is the way I would implement this. And I can do this with Postfix but I have no idea on how to do it with Exim.

Delivering to two LDAs introduces the problem of two data stores with inconsistencies in between them.

But to answer your question. Yes, Exim can do it. I don't know any scenario (concerning email) that Exim can not do.

share|improve this answer
Well it's mainly for testing. So nobody but me will use the new setup until I switch - and at this point I'll shutdown mail access for a short time and properly migrate all data from courier to dovecot. – ThiefMaster Oct 24 '11 at 15:31

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.