我发现 maildrop 和 courier-imap(安装在 ubuntu 机器上)操作的 maildir++ 上的标准配额实现不计算 .Trash 目录中的邮件。
用户现在几乎拥有无限的邮件空间。是否有任何选项可以禁用此不良行为而无需重新编译 maildrop 和 imap 包?
如果没有,我如何在 ubuntu 12.10 上执行此操作?
编辑:
我重新编译了 maildrop 和 courier-imap 包
DEB_BUILD_OPTIONS="--with-trashquota" fakeroot debian/rules binary
什么都没有改变,垃圾仍然是无限的。
编辑2:
根据mr.spuratic
评论中的问题提供更多信息:
- 用户信息存储在 PostgreSQL 数据库中。
- 是的,所有用户都
maildirsize
在自己的邮件目录中,并且配额有效(webmail 和 thunderbird 显示正确的值) - 是的,我正在使用 maildrop
答案1
这是设计使然。原因是,否则,当配额达到时,你很容易陷入人们无法再删除邮件的情况,因为 MUA 通常不会只是删除邮件,而是使用以下机制:
- 复制邮件至
.trash
- 将复制的邮件标记为
\deleted
- 从原邮箱中删除
- 也许
.trash
在某个时候清空,根据用户请求,程序退出或永远不会清空。
如果.trash
考虑配额,这将会失败。
这一页给出了一些关于如何改变 Courier 这种行为的提示。