如何将 dovecot IMAP 服务器上的所有帐户从一种 Maildir 布局转换为另一种?

如何将 dovecot IMAP 服务器上的所有帐户从一种 Maildir 布局转换为另一种?

我当前在服务器上运行 dovecot 2.x,其邮箱布局如下:

mail_location = maildir:~/Maildir

我想将布局更改为以下格式:

mail_location = maildir:~/Maildir:LAYOUT=fs:INBOX=~/Maildir/INBOX

有没有办法转换服务器上当前所有邮件帐户的邮箱布局?我正在查看 dsync,但 Dovecot 的 wiki 中的所有示例都是用于在 mbox 和 Maildir 之间进行转换。

我也在考虑编写一个脚本来手动重命名目录/移动文件以匹配新的格式,但不确定这是否会影响 UID 或其他 dovecot 内部结构。

答案1

因为你不需要改变任何东西里面cur每个 Maildir 目录(即包含、、new目录和 dovecot 索引的文件夹内tmp),使用脚本移动目录将非常安全,并且足够了。

唯一的例外是 INBOX 本身,因为您~/Maildir现在直接将其放入其中,并且想要将其移动到子目录中。但即便如此,我认为最好使用一个脚本,该脚本会仔细选择移动哪些文件以及不移动哪些文件。如果您将每个普通文件从 移动到~/Maildir~/Maildir/INBOX涵盖所有 Dovecot 索引文件)加上curnewtmp(涵盖内容本身)并且保留所有其他子目录(涵盖其他文件夹),那么我认为这应该可以解决问题。

相关内容