TCB*_*B13 11 maintenance dovecot
我遇到过一些用户在他们的邮箱中保留非常旧的邮件(+5 年)的情况,这只是浪费空间,出于安全原因也应该删除。
我发现我可以使用doveadm它,但是运行如下:
doveadm expunge -u testuser@sv.dev mailbox INBOX savedbefore 1-Jan-2011
Run Code Online (Sandbox Code Playgroud)
没有任何影响。根据我的理解,电子邮件客户端expunge在服务器上运行之前将电子邮件标记为删除以实际删除它们。
如何将它们标记为删除使用doveadm然后在doveadm之前或直接完全删除它们之前运行命令?
TCB*_*B13 14
显然我的解决方案几乎是正确的,我可以做我需要的:
doveadm expunge -u testuser@sv.dev mailbox INBOX SENTBEFORE 1-Jan-2011
doveadm expunge -u testuser@sv.dev mailbox INBOX.Sent SENTBEFORE 1-Jan-2011
doveadm expunge -u testuser@sv.dev mailbox INBOX.Trash SENTBEFORE 1-Jan-2011
doveadm purge -u testuser@sv.dev
Run Code Online (Sandbox Code Playgroud)
注意:您可以替换-u testuser@sv.dev与-A目标系统上的所有用户。
基于 WHM/cPanel 的电子邮件系统的额外功能:
如果您正在运行 WHM/cPanel 机器,您需要手动更新邮件目录的大小:
/scripts/generate_maildirsize --confirm --verbose account_username
Run Code Online (Sandbox Code Playgroud)
或者,对于所有帐户:
/scripts/generate_maildirsize --allaccounts --confirm --verbose
Run Code Online (Sandbox Code Playgroud)