我正在尝试用 dovecot 备份我的电子邮件服务器。我已阅读 doveadm 命令文档,但不清楚如何使用它。
我创建了一个测试目录/dove_backup
,然后尝试使用以下命令进行备份:
doveadm backup -A maildir:/dove_backup
但该命令会抛出错误,因为它没有写入该目录的权限。
授予 777 权限后,它会写入,但没有用户的目录,只有文件。
答案1
如果您使用 mdbox,则应该使用 doveadm 备份而不是 rsync。使用 rsync 存在索引损坏的风险,它不能简单地重建。
对于 mbox / mdbox / mailDir 您可以使用以下命令:
doveadm backup -u user1 mdbox:/home/backup/user1/
该命令解释道:
doveadm backup -u user1
dsync backup -u user1
这两个变体执行相同的操作:您调用 doveadm 并告诉它,您想要备份来自 user1 的所有邮件。 Doveadm 从 dovecot 配置中的变量“mail_location”获取有关邮件位置的信息。
mdbox:/home/backup/user1/
这部分规定了目标备份邮件格式,在我的例子中:mdbox =>如果你愿意,你的备份应该存储为你使用的mailDir:
maildir:/home/backup/user1
更多信息: https://wiki2.dovecot.org/Tools/Doveadm/Sync
顺便说一句:如果您使用 mdbox,则可以使用实时压缩: https://doc.dovecot.org/configuration_manual/zlib_plugin/
答案2
简单地tar czf mailstorage.tgz /path/to/maillocation
。doveadm backup
旨在同步 的两个实例之间的邮件存储dovecot
,而不是用于创建存档。