Em primeiro lugar vamos ver onde ficam as pastas das filas:
No meu caso que estou utilizando a distribuição baseada no redhat, o CentOS 4.6 a licalização dos diretórios ficam em:
/var/spool/postfix
Dentro desta pasta existem inúmeros diretórios, vamos ver alguns importantes:
incoming - Esta file contém todos os emails novos que entram na fila do postfix. Eles são armazenados pelo processo cleanup.
active - Esta file contém todos os e-mails que foram abertos pelo gerenciador da fila para entrega.
deferred - Esta fila armazena todos os emails que por algum motivo não puderam ser entregues aos seus receptores.
corrupt - As mensagens que não podem ser lidas ou danificadas são colocadas nesta fila.
hold - Esta fila é usada pelos administradores para por mensagens em espera até que alguém especifique que ela deva ser liberdada. Esta fila é muito usada por programas de checagem de mensagens, como o MailScanner, Clamav, etc... antes de serem entregues para o usuário.
Bom, agora que já aprendemos um pouco sobre a função de cada pasta vamos nos deter nos aplicativos para controlar as mensagens.
Na instalação do postfix já vem com vários aplicativos que iremos detalhar seu uso abaixo:
postqueue - Postfix Queue Control
postsuper - Postfix Superintendent
qshape - Print Postfix queue domain and age distribuition
Postfix Queue Control
postqueue -p -> comando usado para verificar a fila de emails
postqueue -f -> comando usado para dar um flush, ou seja, tenta entregar todos os emails da fila.
postqueue -s dominio -> comando usado para iniciar a entrega imediata de mensagens de um determinado domínio.
postqueue -v -> Habilita modo verbose para debug.
Postfix Superintendent
postsuper -h queue_id -> comando usado para colocar uma mensagem em espera.postsuper -H queue_id -> Comando usado para tirar uma mensagem da espera.
postsuper -p -> comando usado para dar um purge nos arquivos temporários.
postsuper -d queue_id -> comando usado para deletar uma mensagem da fila.
postsuper -r queue_id -> comando usado para enfileirar novamente as mensagens.
postsuper -s -> comando usado para checar a estrutura e reparar caso haja erros.
postsuper -v -> Habilita modo verbose para debug.
Print Postfix queue domain and age distribuition
Por último temos o comando qshape, podemos usá-lo para ver as filas.
qshape active -> mostra o conteúdo da fila active.
qshape incoming -> mostra o conteúdo da fila incoming.
qshape hold -> mostra o conteúdo da fila hold.
qshape deferred -> mostra o conteúdo da fila deferred.
qshape -s -> mostra os domínios de destino.
Exemplo de filtros
Com o auxílio do comando find podemos fazer uma busca nas filas por um determinado email e depois apagá-lo com mostra o comando abaixo:
# find /var/spool/postfix -type f | xargs -n 1000 grep -l email@dominio.com.br | sed 's/.*\///g' | postsuper -d -
Para tirarmos da fila de espera um determinado email:
# find /var/spool/postfix -type f | xargs -n 1000 grep -l email@dominio.com.br | sed 's/.*\///g' | postsuper -H -
Excluindo tudo que está em HOLD, ou seja, na fila de espera.
# find /var/spool/postfix/hold -type f | sed 's/.*\///g' | postsuper -H -
Procurar mensagens do domínio teste.com.br
# tail -10000 /var/log/maillog | egrep -i ': from=<.*@teste\.com\.br>,' | less
Procurar uma mensagem por um específico queue_id
# tail -10000 /var/log/maillog | egrep ': 2B2173FF68: '
Verificar possíveis problemas.
# egrep 'qmgr.*(panic|fatal|error|warning):' /var/log/maillog
fonte : http://marcosabadi.blogspot.com.br/2008/11/gerenciando-as-filas-do-postfix.html