This documentation is for Dovecot v1.x, see wiki2 for v2.x documentation.
Differences between revisions 6 and 7
Revision 6 as of 2004-06-30 17:50:58
Size: 3346
Editor: wolery
Revision 7 as of 2004-08-20 12:09:58
Size: 3582
Editor: sila
Comment: UW imapd saves from /var/mail to ~/mbox
Deletions are marked like this. Additions are marked like this.
Line 39: Line 39:
 * It seems that UW ImapD may save mail from /var/mail to ~/mbox. This is quite annoying since if you set INBOX to /var/mail/%u, your users "lose" all their mails and if you set it to ~/mbox, they can't receive the new ones. A fix ?


Migration to Dovecot

When migrating from one IMAP server to another, you should make sure that these are preserved:

  • Mailbox subscription list
    • User would be able to manually subscribe them again if you don't want to mess with it.
  • Message UIDs
    • If UIDs are lost, at the minimum clients' message cache gets cleaned
    • Some IMAP clients store metadata by assigning it to specific UID, if UIDs are changed these will be lost.
  • Message flags
    • Lost flags can be really annoying, you most likely want to avoid it.

Here's the more server-specific instructions:


By default UW-IMAP allows access to whole home directory, and many people have chosen to store their mails in mail/ directory. This usually means that IMAP clients have set "IMAP namespace" to "mail/", which doesn't work well with Dovecot, as Dovecot by default uses mail/ directory directly. So if IMAP namespace is kept as "mail/", Dovecot would try to access "~/mail/mail/" directory.

So, removing the prefix from IMAP clients would be the first step. Next problem is that subscribed mailboxes are listed as "mail/box" or "~/mail/box" or "~user/mail/box" in subscriptions file. You'd have to remove the mail/ directory part from all of these. The subscriptions file name is also different, UW-IMAP uses .mailboxlist while Dovecot uses .subscriptions.

Dovecot uses UW-IMAP compatible UID and message flag headers in mboxes, so that's not a problem.


default_mail_env = mbox:~/mail:INBOX=/var/mail/%u
# make sure mbox_locks are the same with all software that accesses your mboxes
mbox_locks = dotlock fcntl

If you want to make a transparent migration to Dovecot without having to change the configuration on hundreds of client systems, you will need a slightly different configuration.

  • If your clients have the server prefix set to something like "~/mail", this will not work unless you enable mail_full_filesystem_access in your Dovecot configuration. Dovecot will otherwise reject mailbox names or prefixes that start with "~".
  • You can either rename your ".mailboxlist" file to ".subscriptions" for all you users, or change the definition of SUBSCRIPTION_FILE_NAME in src/lib-storage/subscription-file/subscription-file.c.

  • It seems that UW ImapD may save mail from /var/mail to ~/mbox. This is quite annoying since if you set INBOX to /var/mail/%u, your users "lose" all their mails and if you set it to ~/mbox, they can't receive the new ones. A fix ?


Dovecot generates POP3 UIDs differently than UW-IMAP. You most likely want to preserve them, so currently you'll have to [ patch Dovecot].


Courier by default uses "INBOX." as private IMAP namespace, so it has exactly the same problems as described with UW-IMAP above.

  • Courier's courierimapsubscribed is compatible with Dovecot's .subscriptions file, just rename it and remove the "INBOX." prefixes.

  • Courier's courierimapuiddb is compatible with Dovecot's dovecot-uidlist file, just rename it.

  • Courier's message flags are compatible with Dovecot (as it's specified by Maildir specification)
  • Courier's message keywords implementation isn't Dovecot compatible and there's currently no easy way to migrate them.


default_mail_env = maildir:~/Maildir


See [ cyrus2courier], it's Dovecot-compatible. Also mirrored at [].

None: Migration (last edited 2010-11-02 22:24:58 by TimoSirainen)