Unfreeze messages in Exim queue

Unfreeze messages in Exim queueНаскоро на един от WHM сървърите ми, се наложи да се занимавам с freeze-нати писма от мейл сървъра exim.

За разлика от postfix, където няма схема „freeze“, а самите писма от опашката се изпращат супер лесно :

postqueue -f

при exim нещата са доста по-сложни.

Поради тази причина и пиша този пост за да споделя как се прави това.

 

Какви писма има в опашката на exim се проверява така :

exim -bp

А чрез използването на while се пише следния ред, които unfreeze-ва тези писмa :

exim -bp | grep -i frozen | awk '{print $3}' | while read LINE; do exim -Mt $LINE; done

Други полезни exim queue команди:

Опитва да изпрати писмо с определено ID:

/usr/sbin/exim -M email-id

Принудително пуска още една опашка да върви:

/usr/sbin/exim -qf

Виждаме лога на писмото:

/usr/sbin/exim -Mvl messageID

Виждаме тялото (body) на писмото:

/usr/sbin/exim -Mvb messageID

Виждаме началото (header) на писмото:

/usr/sbin/exim -Mvh messageID

Изтрива писмото без да изпраща никакви съобщения за грешки:

/usr/sbin/exim -Mrm messageID

Показва броя на писмата в опашката:

/usr/sbin/exim -bpr | grep "<" | wc -l

Показва броя на freeze-натите писма в опашката:

/usr/sbin/exim -bpr | grep frozen | wc -l

Изтрива всички frozen писма:

/usr/sbin/exim -bpr | grep frozen | awk {'print $3'} | xargs exim -Mrm

Изтрива цялата опашка на exim-а:

/usr/sbin/exim -qff

Повече информация може да се намери в документацията на exim.