У меня есть ситуация, когда некоторые пользователи хранят в своих почтовых ящиках очень старые сообщения (+5 лет), которые являются пустой тратой места и по соображениям безопасности также должны быть удалены.
Я обнаружил, что могу использовать doveadm
для этого, однако, выполняется что-то вроде:
doveadm expunge -u testuser@sv.dev mailbox INBOX savedbefore 1-Jan-2011
Никакого эффекта не имеет. Насколько я понимаю, почтовые клиенты помечают письмо для удаления до expunge
запускается на сервере для их фактического удаления.
Как я могу пометить их для удаления с помощью doveadm
а затем запустите doveadm
команда перед или напрямую и полностью удалить их?
По-видимому, мое решение было почти правильным, я могу делать то, что мне нужно:
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
Заметка: Вы можете заменить -u testuser@sv.dev
с участием -A
чтобы настроить таргетинг на всех пользователей системы.
Дополнительно для систем электронной почты на базе WHM / cPanel:
Если вы используете машину WHM / cPanel, вам необходимо вручную обновить размер ваших почтовых каталогов:
/scripts/generate_maildirsize --confirm --verbose account_username
Или для всех учетных записей:
/scripts/generate_maildirsize --allaccounts --confirm --verbose