Dovecot. Автоочистка email в корзине

Приведу пример автоматического удаления электронных писем которые находятся в папке Корзина и Спам, кстати подобным образом можно удалять электронные письма и в других папках.

Для примера возьму почтовый сервер с iRedAdmin, в котором используется Dovecot. Чтобы убедиться что электронные письма очистятся, откроем любой старый почтовый ящик в котором есть электронные письма в папке Корзина и например выполним команду ниже чтобы удалить письма старше 5 недель:

doveadm expunge -u test@ixnfo.com mailbox Trash savedbefore 5w

Если электронные письма удалились, значит все хорошо и можно сделать скрипт (например для очистки во всех почтовых ящиках писем в Корзине старше 30 дней и папке Спам старше 90 дней):

#!/bin/bash
# which doveadm
DOVEADM="/usr/bin/doveadm";
$DOVEADM expunge -A mailbox Trash savedbefore 30d
$DOVEADM expunge -A mailbox Junk  savedbefore 90d

Сделаем файл скрипта исполняемым (скрипт можно разместить в любом удобном месте):

chmod +x /mydir/scripts/dovecot_expunge.sh

Чтобы скрипт автоматически запускался, например в полночь в 10 минут, то добавим строку ниже в /etc/crontab:

10 0 * * * root /mydir/scripts/dovecot_expunge.sh >/dev/null 2>&1

Если электронных писем бывает мало, то можно выполнять раз в месяц, например первого числа:

10 0 * * 1 root /mydir/scripts/dovecot_expunge.sh >/dev/null 2>&1

Вливайтесь в общение

1 комментарий

Добавить комментарий для werwer Отменить ответ

  1. У довекота есть готовый плагин для очистки плагин. Вкл. прямо в конфигурации. Поищите.