如何将Dovecot从一台服务器迁移到另一台服务器?

我在家里的Fedora 12“服务器”上安装了Dovecot,我想把所有的邮箱都放到一个虚拟的CentOS 5服务器上。

我怎样才能做到这一点? 我必须复制哪些文件? 是否足够复制文件或我必须准备一些configuration和/或文件格式问题?

假设你正在谈论IMAP邮箱,我会采取不同的方式。 设置第二个(虚拟)服务器以满足您的需求,testing它并确保everthing正常工作。 然后使用像imapsync这样的工具来同步/复制您的邮箱。 我已经成功地做了几次。 您可能想要在迁移邮箱时停止MTA(sendmail,postfix,…)。

也可以看一下dovecot wiki上的迁移页面 。

您应该复制configuration文件/etc/dovecot.conf和邮件文件。 根据您的安装,邮件文件可以在/ var / spool / mail中,也可以在/ home目录中。 当然,您也必须复制login和密码validation所需的文件(或表格或文件)。

Dovecot对邮件存储和用户validation有很多select,因此根据您的configuration,您必须复制的文件是不同的。

我不知道在移动configuration文件和假脱机文件(可能不是)等项目时是否会遇到权限问题,但是您需要确保您的机器和centos机器之间的所有项目都是相同的(再次,都是基于红帽的,所以你可能不会有麻烦)。

如果您使用的是基于VMWare的虚拟机,我会build议使用VMWare转换器虚拟化您的物理机器。 我不知道这是否可行,但是我已经将多个工作服务器转换为虚拟机,这样我就不必处理迁移问题了。 然后,我只是处理更改IP地址,机器名称等事情,而不是涉及用户在数据库或邮件缓冲池中迁移的有时更多毛病。 我认为转换IP地址的停机时间和安装VMWare的调整将小于潜在的停机时间从解开阀值/权限/丢失的文件等。 从机器A移到机器B的问题

有时候改变机器的networkingconfiguration比使用validation,authentication和假脱机问题来处理邮件系统的所有交互的问题less得多:-)

如果使用带有IMAP连接的迁移function,则会在任何消息上丢失\ Recent标志。 某些客户端(我不确定)似乎使用此而不是\看到以确定消息是否是新的。 不幸的是,RFC3501禁止在任何消息上设置\ Recent标志,一旦你以某种方式访问​​了消息,服务器就会取消该标志。

如果您select直接文件复制解决scheme,只需确保您复制.imap目录与文件。 (这是在用户的邮件文件夹目录中设置的任何内容。)该文件夹包含dovecot用来跟踪标志的数据库。 如果您不停止源服务器上的邮件传送,则需要处理locking以停止传送给用户。 然后复制文件,安装一个转发并解锁它们。