On 06/27/2011 11:24 AM, Patrick Proniewski wrote:
Salut,

On 27 juin 2011, at 11:09, Nicolas Michel wrote:

I have mails in the queue (I can see them with mailq).

A) I want to delete them
- postqueue -f

nope, it will just flush the queue (force a new delivery attempt)

- postsuper -d ALL
- mailq | awk '{if (NF == 7) print $1'} | postsuper -d -

both do almost the same, but the second one will fail on messages with particular status ("on delivery", or 
"on hold"), because a "*" or a "!" is appended to the ID of the message.

B) I want to move queued mail in the delivery process of postfix (to force the 
retry of the delivery)

- postsuper -r ALL

-r is not for retry, it's for requeue. Don't use it unless you really want the 
requeue process to be done. Use postqueue -f instead.


Patrick PRONIEWSKI

OK. So if I understand well, "postsuper -r ALL" puts mails into the starting point of the postfix delivery process (as like the mail were just arrived on the server) but "postqueue -f" only try to deliver them? (without reprocessing all the headers of each mail?)

If this is correct, I don't really see in which context a "postsuper -r ALL" should be used instead of "postqueue -f"

Reply via email to