summaryrefslogtreecommitdiffstats
path: root/doc/wiki/Migration.Courier.txt
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 09:51:24 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 09:51:24 +0000
commitf7548d6d28c313cf80e6f3ef89aed16a19815df1 (patch)
treea3f6f2a3f247293bee59ecd28e8cd8ceb6ca064a /doc/wiki/Migration.Courier.txt
parentInitial commit. (diff)
downloaddovecot-f7548d6d28c313cf80e6f3ef89aed16a19815df1.tar.xz
dovecot-f7548d6d28c313cf80e6f3ef89aed16a19815df1.zip
Adding upstream version 1:2.3.19.1+dfsg1.upstream/1%2.3.19.1+dfsg1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r--doc/wiki/Migration.Courier.txt87
1 files changed, 87 insertions, 0 deletions
diff --git a/doc/wiki/Migration.Courier.txt b/doc/wiki/Migration.Courier.txt
new file mode 100644
index 0000000..5e87ab5
--- /dev/null
+++ b/doc/wiki/Migration.Courier.txt
@@ -0,0 +1,87 @@
+Courier IMAP/POP3
+=================
+
+*WARNING: Badly done migration will cause your IMAP and/or POP3 clients to
+re-download all mails. Read <Migration.txt> page first carefully.*
+
+Courier v0.43 and later to Dovecot v1.1+
+----------------------------------------
+
+courier-dovecot-migrate.pl
+[https://dovecot.org/tools/courier-dovecot-migrate.pl] does a perfect migration
+from Courier IMAP and POP3, preserving IMAP UIDs and POP3 UIDLs. It reads
+Courier's 'courierimapuiddb' and 'courierpop3dsizelist' files and produces
+'dovecot-uidlist' file from it.
+
+Before doing the actual conversion you can run the script and see if it
+complains about any errors and such, for example:
+
+---%<-------------------------------------------------------------------------
+# ./courier-dovecot-migrate.pl --to-dovecot --recursive /home
+Finding maildirs under /home
+/home/user/Maildir/dovecot-uidlist already exists, not overwritten
+/home/user/Maildir2: No imap/pop3 uidlist files
+Total: 69 mailboxes / 6 users
+ 0 errors
+No actual conversion done, use --convert parameter
+---%<-------------------------------------------------------------------------
+
+The actual conversion can be done for all users at once by running the script
+with '--convert --recursive' parameters. Make sure the conversion worked by
+checking that 'dovecot-uidlist' files were created to all maildirs (including
+to subfolders).
+
+The '--recursive' option goes through only one level down in directory
+hierarchies. This means that if you have some kind of a directory hashing
+scheme (or even domain/username/), it won't convert all of the files.
+
+You can also convert each user as they log in for the first time, using
+<PostLoginScripting.txt> with a script something like:
+
+---%<-------------------------------------------------------------------------
+#!/bin/sh
+# WARNING: Be sure to use mail_drop_priv_before_exec=yes,
+# otherwise the files are created as root!
+
+courier-dovecot-migrate.pl --quiet --to-dovecot --convert Maildir
+# This is for imap, create a similar script for pop3 too
+exec /usr/local/libexec/dovecot/imap
+---%<-------------------------------------------------------------------------
+
+FIXME: The script should rename also folder names that aren't valid mUTF-7.
+Dovecot can't otherwise access such folders.
+
+Dovecot configuration
+---------------------
+
+Courier by default uses "INBOX." as the IMAP namespace for private mailboxes.
+If you want a transparent migration, you'll need to configure Dovecot to use a
+namespace with "INBOX." prefix as well.
+
+---%<-------------------------------------------------------------------------
+mail_location = maildir:~/Maildir
+
+namespace {
+ prefix = INBOX.
+ separator = .
+ inbox = yes
+}
+---%<-------------------------------------------------------------------------
+
+See also <Namespaces#Backwards Compatibility: Courier IMAP> [Namespaces.txt].
+
+Manual conversion
+-----------------
+
+ * Courier's 'courierimapsubscribed' file is compatible with Dovecot's
+ 'subscriptions' file, but you need to remove the "INBOX." prefixes from the
+ mailboxes./This is true even if you set namespace prefix to "INBOX." as
+ described above./
+ * Courier's 'courierimapuiddb' file is compatible with Dovecot's
+ 'dovecot-uidlist' file, just rename it.
+ * Courier's message flags are compatible with Dovecot (as they are specified
+ by the Maildir specification)
+ * Courier's message keywords implementation isn't Dovecot compatible. There
+ doesn't exist a simple way to convert the keywords manually.
+
+(This file was created from the wiki on 2019-06-19 12:42)