J'ai bien cherché dans la doc et je n'ai pas trouvé de moyen pour supprimer des messages en queue par rapport à l'adresse source ou destination.
Je prends un exemple, la queue est remplie par 5000 mails avec pour source toto@pouet.fr. Nous voulons supprimer ces messages sans pour autant flusher la queue en entier (dur dur pour les autres).
Il est intéressant d'avoir comme critère:
*Adresse email source (toto@pouet.fr)
*Adresse email destination (linus@linux.fr)
*Domaine source (*@pouet.fr)
*Domaine destination (*@linux.fr)
Je peux déjà aider côté système. La commande de base ressemble à celle là :
- Code: Select all
postqueue -p| awk 'BEGIN { RS ="" } {if ($7=="toto@pouet.fr") print $1} {print $17> /var/log/delmessage} ' | postsuper -d -
En gros ici on affiche la queue on fait un awk pour trouver la position de l'adresse source (toto@pouet.fr), on l'affiche et on l'export dans un log. Ensuite avec postsuper -d on supprime tous les ids de queue qui font références à l'email source.
Les actions de ce type sur la queue me paraissent très importantes
