This documentation is for Dovecot v1.x, see wiki2 for v2.x documentation.
Differences between revisions 8 and 9
Revision 8 as of 2004-08-23 08:20:54
Size: 3731
Editor: ip213-185-36-189
Comment:
Revision 9 as of 2004-09-02 20:52:44
Size: 3804
Editor: flake
Comment:
Deletions are marked like this. Additions are marked like this.
Line 63: Line 63:

= Questions =

1. Are there any issues with migrating from QPopper?

TableOfContents

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:

UW-IMAP

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.

Settings:

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.

  • If ~/mbox file exists, UW-IMAP moves mails from /var/mail/user there. Currently Dovecot doesn't support this feature, so you'll have to either move everyone's mails to ~/mbox and reconfigure MTA/LDA to store mails there, or alternatively get the ~/mbox users to move their mails back to /var/mail/user. This feature may be implemented later, but it's not planned in near future.

UW-POP3

Dovecot generates POP3 UIDs differently than UW-IMAP. You most likely want to preserve them, so currently you'll have to [http://dovecot.org/patches/pop3-uidl-uwimap.patch patch Dovecot].

Courier

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.

Settings:

default_mail_env = maildir:~/Maildir

Cyrus

See [http://madness.at/projects/ cyrus2courier], it's Dovecot-compatible. Also mirrored at [http://dovecot.org/tools/ dovecot.org].

Questions

1. Are there any issues with migrating from QPopper?

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