doveadm: Löschen Sie Nachrichten, die älter als das Datum sind

9

Ich habe eine Situation, in der einige Benutzer sehr alte Nachrichten (+5 Jahre) in ihren Postfächern aufbewahren, die nur Platzverschwendung sind und aus Sicherheitsgründen ebenfalls gelöscht werden sollten.

Ich finde heraus, dass ich dafür verwenden könnte doveadm, aber so etwas wie:

doveadm expunge -u [email protected] mailbox INBOX savedbefore 1-Jan-2011

Hat keine Wirkung. Nach meinem Verständnis markieren E-Mail-Clients E-Mails zum Löschen, bevor expungesie auf dem Server ausgeführt werden, um sie tatsächlich zu entfernen.

Wie kann ich sie zum Löschen markieren doveadmund dann den doveadmBefehl vor oder direkt ausführen und sie vollständig löschen?

TCB13
quelle
2
Ich habe wertvolle E-Mails ab 10 Jahren, die ich weiterhin aufbewahren werde. Ich hoffe wirklich, dass Sie Ihre Benutzer benachrichtigen ... was ist das Sicherheitsargument?
Peter
1
@pete Management Argument. Wir haben einen Prozess zum Speichern rechtlich relevanter Nachrichten in bestimmten IMAP-Ordnern, jedoch sollten Nachrichten in INBOX, Trash und Sent nach 5 Jahren verworfen werden ...
TCB13

Antworten:

9

Anscheinend war meine Lösung fast richtig, ich kann tun, was ich brauche mit:

doveadm expunge -u [email protected] mailbox INBOX SENTBEFORE 1-Jan-2011
doveadm expunge -u [email protected] mailbox INBOX.Sent SENTBEFORE 1-Jan-2011
doveadm expunge -u [email protected] mailbox INBOX.Trash SENTBEFORE 1-Jan-2011
doveadm purge -u [email protected]

Hinweis : Sie können ersetzen -u [email protected]mit -Aallen Benutzern auf dem Zielsystem.


Extra für WHM / cPanel-basierte E-Mail-Systeme:

Wenn Sie einen WHM / cPanel-Computer ausführen, müssen Sie die Größe Ihrer E-Mail-Verzeichnisse manuell aktualisieren:

/scripts/generate_maildirsize --confirm --verbose account_username

Oder für alle Konten:

/scripts/generate_maildirsize --allaccounts --confirm --verbose
TCB13
quelle