Случаи из жизни с exim

eximКак очистить очередь exim

Иногда бывает нужно удалить все приостановленные сообщения в очереди exim. Для этого достаточно выполнить команду:

exim -bpu | grep frozen | awk {'print $3'} | xargs exim -Mrm

или специальную exiqgrep :

exiqgrep -z -i | xargs exim -Mrm

Для удаления конкретного сообщения из очереди, нужно определить его номер:

exim -bp

И удалить его, используя полученный идентификатор:

exim -Mrm <message-id>

Ограничение хостов для релея почты

Если вы хотите, чтобы exim пересылал почту на некоторые ip адреса, просто внесите эти адреса в файл /etc/alwaysrelay, по одному на строку:

89.175.124.4
120.73.173.40
93.185.26.204

и перезапустите exim.

Просмотр очереди почты exim как mailq

Для отображения очереди почты в exim, выполните команду:

exim -bp

Для получения количества сообщений в очереди:

exim -bpc

Просмотр сообщения из очереди exim

Показать заголовок сообщения из очереди exim:

exim -Mvh <message-id>

Показать тело сообщения из очереди exim:

exim -Mvb <message-id>

Удаление нужного сообщения из очереди exim

В состав пакета exim входит замечательная утилита exiqgrep. Пример поиска всех сообщений для получателя user@nix-tips.ru:

exiqgrep -r user@nix-tips.ru

Для поиска сообщений по отправителю, достаточно заменить параметр -r на -f. Так же, можно сразу же удалить найденные сообщения:

exiqgrep -f user@nix-tips.ru | awk {'print $3'} | xargs -Mrm

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *