主题: 怎么保留最近6个月的邮箱数据,删除6个月之前的

==== ==== 必填信息。没有填写将不予回复 ====
- iRedMail 版本号:0.8.6
- 使用哪个数据库存储用户帐号(OpenLDAP,MySQL,PostgreSQL):MySQL
- 使用的 Linux/BSD 发行版名称及版本号:Centos6.4
- 与您的问题相关的日志信息:
====
RT  我想在邮件服务器上保留最近一段时间的邮件数据,删除这之前的邮件,这个任务计划每天都执行,这个有什么方法可以实现?客户端用的是foxmail 7.2

回复: 怎么保留最近6个月的邮箱数据,删除6个月之前的

可以用 Dovecot-2 里提供的 doveadm 工具实现。参考:
http://wiki2.dovecot.org/Tools/Doveadm/Expunge

回复: 怎么保留最近6个月的邮箱数据,删除6个月之前的

ZhangHuangbin 写道:

可以用 Dovecot-2 里提供的 doveadm 工具实现。参考:
http://wiki2.dovecot.org/Tools/Doveadm/Expunge

张工,我现在是这样写的
删除今天之前example.com域的所有垃圾邮件
doveadm expunge -u *@example.com mailbox Trash savedbefore  0d

但是标记为垃圾邮件之后马上删除,但是在webmail端还是可以看到邮件啊

回复: 怎么保留最近6个月的邮箱数据,删除6个月之前的

我这里可以成功删除,并且在 webmail 里刷新后就看不到删除的邮件了。
你确定这个命令删除了你要删除的邮件?给 doveadm 命令加个 -D 参数看看实际运行的情况。比如我的测试结果是这样的:

# doveadm -D expunge -u *@a.cn mailbox Trash savedbefore 1d
...
doveadm(postmaster@a.cn): Debug: expunge: box=INBOX uid=1
doveadm(postmaster@a.cn): Debug: expunge: box=INBOX uid=2
doveadm(postmaster@a.cn): Debug: expunge: box=INBOX uid=3