Meine Mail Queue hängt

Für alle, die mal schnell ihr Mailsystem debuggen wollen, aber nicht so genau wissen wie!

Zuerst mal checken wir, ob emails in unserer Queue stecken.

mailadmin@mailhost: mailq

oder

mailadmin@mailhost: exim4 -bp

Wenn wir schon viele emails in unserer Queue haben, wollen wir natürlich wissen wieviele.

mailadmin@mailhost: exim4 -bpc
mailadmin@mailhost: 4378

Puh, ganz schön viele emails! Jetzt wollen wir noch wissen, warum die Dinger unsere Mailqueue nicht verlassen wollen. Dazu nehmen wir von der Ausgabe aus mailq die IDs der jeweiligen mails (zB: 1PlStT-0005DJ-M2) und fragen mit dem Befehl

exim4 -v -M [Nachrichten ID]

nach dem Grund. Hier sollte man sehr schnell den Grund erkennen. Wenn wir nun den Grund für unser Problem gefunden und behoben haben, können wir die hängenden email versuchen zuzustellen. Ich würde dazu den “verbose” Mode verwenden 🙂 Bringt zwar viel Output, schaut aber hübsch aus.

mailadmin@mailhost: exim4 -qff -v

Was man nun noch machen könnte, wäre hängende email zu löschen (einzelne, alle oder email mit bestimmtem Alter)
Löschen von einzelnen hängenden emails, die Nachrichten ID bekommen wir wieder mittels mailq

mailadmin@mailhost: exim4 -Mrm [Nachrichten ID]

Löschen von allen “frozen” Emails

mailadmin@mailhost: /usr/sbin/exipick -zi | xargs exim -Mrm

Eventuell ist euer exipick wo anders, findet ihr mit

mailadmin@mailhost: which exipick

Wenn ihr aber nur email löschen wollt, die älter als 10 Tage sind dann hilft dies hier

mailadmin@mailhost: exim -bp | grep ‘[0-9][0-9]d ‘ | awk ‘{print $3}’ | xargs exim -Mrm

gefunden bei Florian Fritsch

Comments are closed.