我在我们的Linux Dovecot / exim4 linux服务器上有一个用户,有10GB的电子邮件,我需要将这个帐户迁移到他们在现场托pipe的新Exchange Server。
如何将邮箱转换为Exchange格式? 我希望在下载之前打开收件箱会明显压缩它,但是主要的障碍是将其转换。
如果您pipe理或具有对两个系统的用户级别/pipe理访问权限,则可以使用像imapsync这样的工具将邮件数据从旧系统直接传输到新的Exchange服务器。 或者,例如,如果用户使用Outlook,他们可以通过本地导出将其邮件迁移到.PST,或者直接复制到同一客户端中新build立的邮件帐户。
一个更好的问题是你是否需要移动所有10GB的消息…听起来你不像pipe理新系统…
我不确定是否有在鸽舍和交换之间转换的工具。 但是,如果两个邮箱都联机(例如, [email protected]和[email protected] ),则可以使用imapsync工具并通过IMAP协议迁移数据。 imapsync包是在所有常见的分布(debian和克隆,RHEL和克隆,..)
基本用法写在手册页中:
imapsync \ --host1 imap.truc.org --user1 foo --password1 secret1 \ --host2 imap.trac.org --user2 bar --password2 secret2
由于用户正如您所说的那样使用Thunderbird,所以简单(而且速度慢)的解决scheme是在Exchange Server上启用IMAP,将这个IMAP账户添加到用户的Thunderbird,然后让Thunderbird复制邮件。
已经提到imapsync,使用UW-IMAP工具包中的 mailutil也是另一个可以考虑的选项。
对于我使用的解决scheme中有趣的部分:
我总共使用了3个主机,我们将它们称为dest,mid和source。 dest和mid在同一个LAN上。
使用SSH压缩隧道我做了一个中间和源之间的压缩隧道,以节省带宽。
samuel@mephisto:~$ ssh -C -L 7777:source:993 localhost cat -
使用此链接与imapsync结合运行在中期我成功地迁移在主机之间的框中,没有太多的麻烦。
imapsync --host1 localhost --port 7777 --ssl1 --authmech LOGIN --user1 USERNAME1 --password1 PASSWORD1 --host2 dest --user2 USERNAME2 --password2 PASSWORD2 --authmech2 PLAIN
当然,你的语法可能会有所不同!
我没有在dest或source上运行imapsync的唯一原因是因为
(一)我无法运行它的目的,因为它的微软服务器,和
(b)如果我在源代码上运行它,我将无法压缩IMAP会话。