主题: [FAQ] 为何当邮箱容量满了到时候无法删除收件箱里的邮件
有朋友反应当邮箱容量满了之后,用户在 WebMail 程序里无法删除收件箱里的邮件。
这里涉及到通过 IMAP 协议来操作邮箱的具体细节(来自 Dovecot 的参考文档):
1. 给邮件增加 \Deleted 标记,表示已删除;
2. 使用 EXPUNGE 命令实际删除邮件;
这两个 IMAP 命令在邮箱容量满了之后仍然可以正确操作,可以正确删除邮件。
但是许多邮件客户端软件,例如:Roundcubemail,Thunderbird,都使用 'move-to-trash' 的方式来删除邮件。具体的步骤是:
1. 将 Inbox(收件夹)、Sent(已发邮件)等邮件夹里的邮件复制到 Trash(回收站) 邮件夹;
2. 将邮件打上 \Deleted 标记;
3. 将邮件从 Inbox, Sent 目录删除;
4. (也许后期再使用 'Clean Trash(清空回收站)'的功能删除回收站里的邮件)
所以如果你的邮箱容量已满,就无法将收件箱里的邮件复制到回收站,导致无法删除邮件。
解决办法(任选其一):
* 在客户端使用 POP3 将邮件收下来,清空邮箱(这时候使用 IMAP 是不行的,必须是 POP3, POP3S)。
* 服务器端配置 Dovecot 乎略回收站的邮箱容量。
这是有风险的。因为用户可以把回收站当做是无限制的网络磁盘。
配置方法:# # 在 /etc/dovecot.conf 中配置 plugin quota: # # 注意:这里的 storage=10240 是全局默认值,但是如果你已经在 LDAP/MySQL 里 # 设置了虚拟用户的邮箱容量,将使用 LDAP/MySQL 里的值。 # plugin { quota = maildir:storage=10240:ignore=Trash }