To clear the mail queue in Postfix, we will use the command called postsuper . “postsuper” is short for Postfix superintendent. The postsuper command is used for postfix mail queue related maintenance work and can only be run as a superuser (root).
To check the mail queue in system, we use
mailq command . Using the mailq command will show a list of e-mail messages that have not been delivered. Most of the messages will have a status of “deferred” and sit in the deferred queue .
First run the command
mailq command to check how many messages are in queue overall.
There are three likely scenarios that you will need to blow away the queue:
Scenario 1 : Remove particular mail queue id (on running mailq command,you will get mail queue id)
postsuper -d mail_queue_id
Scenario 2: Remove ALL messages from all queue
postsuper -d ALL
Scenario 3: Remove only ALL deferred messages which are in the deferredqueue
postsuper -d ALL deferred