邮件被退回提示 'mailbox full',除了清空间还有什么办法?
退信代码 452 4.2.2 Mailbox full(RFC 3463 §3.2.2 永久资源不足)或 552 5.2.2 Over quota 表示接收方邮箱存储已满。
硬件/存储层方案
- 扩展存储配额:在 Dovecot 中调整
quota_rule(mailbox Trash { quota = 10%% }),或调整邮件系统的邮箱容量上限。 - 自动归档:部署基于时间的归档策略(
doveadm quota get -u user@domain监控水位),将 90 天前的邮件移至归档存储,释放主存储。 - 存储分层:使用 Lustre/GPFS 等分布式文件系统,或 S3 对象存储(Dovecot 的
mail_location支持 dcache 后端)。
策略层方案
- 大型附件剥离:在 MTA 层(Postfix
content_filter)剥离超过 10MB 的附件,替换为下载链接。 - 发送警告通知:Dovecot quota 插件支持在 80%/90%/95% 水位发送自动通知。配置
quota_warning = storage=85%% /usr/local/bin/quota-warning.sh。 - 临时队列缓冲:Postfix
mailbox_size_limit配合virtual_mailbox_limit设置弹性上限,避免硬阻断。
参考文献
- RFC 3463 §3.2.2
