Announcement

Collapse
No announcement yet.

как безопасно и быстро удалить mail queue для exim

Collapse

Forum Topic List

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • как безопасно и быстро удалить mail queue для exim

    Если на сервере возникают проблемы с внутренним name resolution, к примеру если по какой-то причине не работают сервера, прописанные в resolve.conf, то в почтовой очереди может образоваться "пробка".



    Вместо того чтобы удалять содержимое директории /var/spool/exim

    можно выполнить следующую команду:



    HTML Code:
    exim -bp | sed '/^$/d'|grep -v @|awk -F" " {'print "exim -Mrm " $3'}


    или немного короче:



    HTML Code:
    exim -bp | awk '/^ *[0-9]+[mhd]/{print "exim -Mrm " $3}' | sh


    <font color="royalblue">exim -bp[/size] выдает список сообщений, находящихся в очереди.

    Если это не работает, нужно установить в конфигурационном файле значение queue_list_requires_admin в <font color="royalblue">true[/size]



    при помощи несложного "фильтра" <font color="royalblue">awk '/^ *[0-9]+[mhd][/size] мы выводим все строки с уникальными идентификаторами сообщений



    при помощи <font color="royalblue">{print "exim -Mrm " $3}'[/size] из получившего списка мы выбирает ТОЛЬКО идентификаторы сообщений и добаляем пер ними вызов на удаление, так как все это должно происходить не "в космосе", то заканчиваем нашу строку вызовом установленного в вашей системе shell <font color="royalblue">sh[/size]





    точно такую же процедуру можно выполнить при помощи еще более короткой и изящной конструкции:

    HTML Code:
    exiqgrep -z -i | xargs exim -Mrm


    программа <font color="royalblue">exiqgrep[/size] так и называется - "Search in the exim queue"

  • #2
    Re: как безопасно и быстро удалить mail queue для exim

    а вот, к примеру, как удалить только сообщения, которые застряли в очереди и старше, скажем 10 дней:



    HTML Code:
    exiqgrep -o 864000 -i | xargs exim -Mrm




    Comment

    Working...
    X