Startseite : Infos : Infotexte : E-Mail : Exim: "frozen" Mails

Exim: 'frozen' Mails entfernen.

Der Mailserver Exim 'friert' E- Mails, die nicht zustellbar sind, aber auch nicht gebounct werden können, ein und beläßt sie in der Queue, bis sie manuell von einem Administrator gelöscht oder 'aufgetaut' werden. Es sind Optionen in der Konfiguration vorgesehen, um solche 'frozen' Mails nach Ablauf einer gewissen Zeitspanne automatisch aus der Queue zu entfernen. Manchal möchte man das aber auch selbst tun, bspw. dann, wenn aus irgendwelchen Gründen (bspw. weil die eigene Absenderadresse in einige tausend Spam-Mails hineingefälscht wurde) die Queue binnen kurzer Zeit mit sochen Mails vollläuft.

Dazu muss man eigentlich nur Exim mit dem Parameter "-Mrm <mid> <mid> ..." aufrufen, also die IDs der zu entfernenden Mails aufzählen. Weil man das bei einer Vielzahl von Mails sicherlich nicht per Hand machen möchten, habe ich mir einen kleinen Einzeiler zu diesem Zweck gebastelt. Es wird die Queue ausgegeben, die IDs der als 'frozen' markierten Mails gesammelt und dann "exim -Mrm" damit aufgerufen.

Pfade sind selbstverfreilich anzupassen, und wenn das ganze für den Profi sehr nach "von hinten durch die Brust ins Auge" aussieht, dann liegt's daran, dass das mein erster Kontakt mit so schönen Spielzeugen wie sed war. - Getestet mit Exim 3.x, sollte aber auch mit Exim 4.x funktionieren. Gegebenenfalls das "/usr/exim/bin/exim -Mrm" am Anfang zum Testen weglassen.

#!/bin/bash
/usr/exim/bin/exim -Mrm `mailq|egrep frozen|sed 's/... \+.... \(.\+-.\+-..\) <> .\+/\1/'|sed -e :a -e '/$/N; s/\n/ /; ta'`

Das ganze geht - wie ich inzwischen weiß - im übrigen mit den mitgelieferten Utilities viel einfacher, bspw. so:

/usr/exim/bin/exipick -zi | xargs exim -Mrm

Mit der Dokumentation von Programmen wie exipick und exigrep sollte man sich einmal näher beschäftigen; es lohnt sich!

Lizenz

Creative Commons-Lizenzvertrag Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert; er darf unter Namensnennung des Autors nicht-kommerziell weitergegeben und auch bearbeitet werden, soweit das neue Werk gleichfalls wieder dieser Creative-Commons-Lizenz unterliegt. Die Einzelheiten ergeben sich aus dem Lizenzvertrag.