Quais são as etapas para limpar a fila do sendmail sem reinicializar?

1
                    Begin Note

Acredito que essa é uma pergunta semelhante, mas não duplicada, para outra pergunta de falha de servidor , porque a mensagem devolvida é para um endereço de e-mail legítimo que posso enviar para o momento com a mensagem devolvida restante na fila. Essa outra questão de falha de servidor me liga a uma resposta, em vez de fornecê-la dentro da resposta em si, que é algo para o qual fui marcado no passado.

                    End Note

Minha pergunta é como limpar um sistema sendmail bloqueado sem reiniciar. Eis alguns antecedentes:

Eu tenho um servidor Linux Red Hat Enterprise WS 5 dedicado exclusivamente à transferência e recebimento de informações de configuração de medidores e leituras de medidores. O servidor envia uma pequena quantidade de email usando o sendmail.

Linux h2oamr.Somewhereton1.local
2.6.18-348.el5 #1 SMP 
Wed Nov 28 21:22:00 EST 2012 
x86_64 x86_64 x86_64 GNU/Linux

Uma vez por mês, este pequeno script de shell é executado como root e, neste mês, alguns conteúdos voltaram mostrando que uma mensagem estava na fila.

#!/bin/bash
#
# sendmail_alive.sh
# Change History:
# Charles M. Norton 12/13/2010
# Fix header, and add su -l -c to send as amr.

/usr/bin/mailq -v > /tmp/mailq.txt
su -l amr -c \
"mail -s 'sendmail status' [email protected] < /tmp/mailq.txt"

Aqui está o que meu bot me enviou:

        /var/spool/mqueue (1 request)
-----Q-ID----- --Size-- -Priority- ---Q-Time--- --------Sender/Recipient--------
r3E822QG016051*    1208      31671 Apr 14 04:02 <[email protected]>
                        <[email protected]>
        Total requests: 1

Eu tentei enviar e-mails para o mesmo destinatário que o e-mail que ficou preso na fila, e isso ocorreu quase que imediatamente. No entanto, a mensagem original original permaneceu na fila do sendmail.

Depois, experimentei estes comandos:

sendmail -bm
sendmail -OTimeout.hoststatus=0m -q -v

mas continuou recebendo uma mensagem pid bloqueada. Infelizmente, não preservei a mensagem .pid bloqueada.

A reinicialização eliminou o problema.

É possível realizar a limpeza da fila sem reinicializar e, em caso afirmativo, como?

    
por octopusgrabbus 02.05.2013 / 17:20

1 resposta

0

Tente descobrir "por que a mensagem está bloqueada?"

Você poderia postar o estado relevante do processo do sendmail, conforme relatado por ps? Versão para o linux-debian: ps auxw | grep sendmail. IMHO você deve tentar localizar qual tempo limite de entrega deve ser reduzido.

Os suspeitos mais prováveis: Timeout.connect, Timeout.iconnect.

    
por 03.05.2013 / 07:24

Tags