Send a test message
mail -s 'test message' user@domain.com
body of message
.
php -r 'mail("akmal@avloni.com", "Outgoing mailtest", "This is a test. Please delete.", "From: noreply@sender.com");'
mail queue
mailq or postqueue -p # see queue
postqueue -f # flush queue (attempt to resend all messages in the queue)
postcat -vq XXXXXXXXXXXX # view message from queue
configuration
postfix check # check configuration file syntaxtual sugars
postconf # view config variables
postconf -e 'mynetworks=10.2.3.4' # set mynetworks=10.2.3.4
hold or delete messages in queue
postsuper -h 6076ED000C8 # hold message 6076ED000C8
postsuper -H 6076ED000C8 # release holded message 6076ED000C8
postsuper -H ALL # release all on hold messages
postsuper -d 6076ED000C8 # delete message 6076ED000C8
postsuper -d ALL # delete all messages from queue
postsuper -d ALL hold # Beside hold, you can do same for incoming, active and deferred.
To delete all email in the queue from a domain run this command as root:
postqueue -p | tail -n +2 | awk 'BEGIN { RS = "" } /@example\.com/ { print $1 }' | tr -d '*!' | postsuper -d -
To delete all email in the queue From: a specific email address run this command as root:
postqueue -p | tail -n +2 | awk 'BEGIN { RS = "" } /username@example\.com/ { print $1 }' | tr -d '*!' | postsuper -d -