使用 imapsync 将所有邮件同步到新服务器上的一个文件夹中?

使用 imapsync 将所有邮件同步到新服务器上的一个文件夹中?

有没有办法使用 imapsync 将旧服务器上的每封邮件同步到新服务器上的一个文件夹中?我在手册中找不到相关内容……

提前致谢!

答案1

常见问题解答http://imapsync.lamiral.info/FAQ说:

问:是否可以将所有消息从一台服务器同步到另一台服务器,而无需重新创建文件夹结构和目标服务器。

是的。

例如,将 host1 上所有 forder 中的所有消息同步到 host2 上的文件夹 INBOX:

1)第一次尝试(安全模式):

    imapsync \
    ...
    --regextrans2 "s/(.*)/INBOX/" \
    --dry --justfolders

2) 查看输出是否说明了您希望 imapsync 执行的所有操作,--dry 选项是安全的并且不执行任何实际操作。

3)删除--dry检查目标端的imap文件夹树,您应该只有一个:经典的INBOX。

4)删除--justfolders

答案2

有一种方法可以同步每封邮件,包括来自旧服务器根目录下的一个文件夹中新服务器使用 imapsync。

imapsync --host1 mail.fromhost1.com --user1 myuser1 --passfile1 passfile1.txt --host2 mail.tohost2.com --user2 myuser2 --passfile2 passfile2.txt --subfolder2 INBOX.destinationfolder --justfolders --dry

选项 --subfolder2 “将整个 host1 文件夹层次结构同步到
名为字符串“(imapsync 自述文件1)。

当使用 --dry 选项运行 imapsync 时,您应该能够从 imapsync 的输出中看到两个邮箱的文件夹列表,这样您就知道应该把什么内容放到 INBOX.destinationfolder 中去了。

正如@Gilles LAMIRAL所说:

  1. 尝试使用 imapsync 运行- 干燥--justfolders选项,直到你对输出满意为止
  2. 然后删除- 干燥选项。它应该从旧服务器在目标文件夹下新服务器指定--子文件夹2选项
  3. 如果一切按预期进行,删除--justfolders将所有邮件复制到新服务器中相应的文件夹/子文件夹中的选项。

答案3

是的,您可以使用 imapsync 将邮箱从一个邮件服务器迁移到另一个服务器。我们必须告诉 imapsync 我们要迁移的邮件帐户的用户名和密码。理论上,我们可以使用 --password1 和 --password2 开关来设置密码,但这很危险

因此,最好创建两个包含密码(在此示例中,它是两个邮件帐户的秘密)的文件(此示例中为 /etc/secret1 和 /etc/secret2),在这些文件上执行 chmod 600,并使用 --passfile1 和 --passfile2 开关。

下面是示例命令

  imapsync --host1 server1.example.com --user1 [email protected] --passfile1 /etc/secret2 --host2 server2.example.com --user2 [email protected] --passfile2 /etc/secret2

相关内容