3

What is the proper way to migrate MS Exchange mailboxes to Dovecot?

MS Exchange is 2010 and Dovecot with Postfix are on CentOS 7.

I'd like to preserve permissions, states (seen/unseen), folders. I've googled a bit and I've found imapcopy and imapsync, is there a better way of doing that?

sebelk
  • 682
  • 4
  • 13
  • 32
  • 1
    That's a strange direction to take. I'm curious, why move to Dovecot and IMAP? – ewwhite May 17 '17 at 14:19
  • 1
    Why not? Dovecot+postfix is rock solid, tested and with plenty of documentation. You give away some features (e.g. calendar support) but you are rewarded with zero cost for S/W licensing. All this *if* you insist on self hosting your e-mails but that's another unpopular direction. – ndemou Oct 22 '18 at 12:36

2 Answers2

3

I would also use IMAPSync here it would preserved all flags: unread will stay unread, read will stay read, deleted will stay deleted.

If you wish to more commercial solution then you can check audriga. But as you are familiar with Dovecot it wouldn´t be an issue for you to setup an IMAPSync crone job.

BastianW
  • 2,868
  • 4
  • 20
  • 34
3

Dovecot's integrated dsync (usually used to replicate between Dovecot servers) can be used to migrate from arbitrary IMAP servers including Exchange.

Basically, you will run doveadm dsync backup -R <user> <exchange-server>: (the colon is important) for each user, but some preparation is required: you either have to know the user's passwords, or configure some super user or trust on the Exchange server (Dovecot will show up as a normal IMAP client there).

The benefit: you can run the command repeatedly, and Dovecot will update the mailbox without having to transmit everything again. This way, you can reduce the migration downtime to a bare minimum (and get a feeling for the migration before performing the switch). The Dovecot wiki as a whole page on migrating mailboxes using dsync.

Jens Erat
  • 1,530
  • 2
  • 12
  • 27
  • I've tried dsync, but it outputs: dsync-local(vmail): `Error: read(remote) failed: EOF (version not received) doveadm(vmail): Fatal: execvp(andres.gomez) failed: Permission denied` Any clue? Should I enable tcp/ip listener port? – sebelk May 23 '17 at 13:27
  • 1
    This seems to be an issue with local file permissions. – Jens Erat May 23 '17 at 15:34
  • OK, I will open another post, because I think it's a different issue. – sebelk May 26 '17 at 18:22