2012-03-26 6 views
2

Meine Exim-Mail-Warteschlange war voller Spam, also habe ich einen benutzerdefinierten Grep-Befehl ausgeführt, um Spool-Nachrichten mit den Spam-Begriffen zu suchen. Das Problem ist, ich wusste nicht, dass Exim Nachrichten in mehrere Dateien aufteilt (eine für Header-Informationen, eine für Daten usw.), so dass mein grep-Befehl die Datendateien löschte, während die Header-Dateien übrig blieben.Vermischte Exim-Warteschlange - Nachrichten mit Header-Datei, aber keine Daten

Kennt jemand eine Art, wie ich Nachrichten in der Warteschlange, die eine Header-Datei aber keine Datendatei haben, leicht finden und löschen kann? Oder eine andere Möglichkeit, es zu beheben?

Antwort

2

Finden sie:

exipick '$message_body_missing' 

finden und löschen Sie sie:

exipick -i '$message_body_missing' | xargs exim -Mrm 
+0

Danke, habe ich gelesen, exipick funktioniert gut für diese, aber es ist nicht auf meinem CentOS/cPanel Server installiert und ich kann keine gute Anleitung zur Installation finden. Könnten Sie mir in die richtige Richtung zeigen? –

+0

Eher amüsant kann ich. Holen Sie sich eine Kopie von jetmore.org/john/code/exipick, machen Sie es ausführbar, und ändern Sie die $ spool-Variable so, dass sie auf die Spool Ihrer lokalen Site zeigt (suchen Sie Ihre lokale Spool mit 'exim -bP | grep spool_directory'). – jj33

+0

Haha, was sind die Chancen? Danke vielmals! –

0

Mangels exipick,

cd /var/spool/exim/input 
find -name "*-H" -exec sh -c 'H={}; if [ ! -e ${H%-*}-D ]; then rm $H; fi' \;