Erro de início do Postfix Porta 25: Endereço já em uso


19

Estou tentando obter o postfix em execução no meu servidor, mas continuo recebendo o seguinte erro no meu /var/log/mail.log:

postfix / master [5041]: fatal: bind 0.0.0.0 porta 25: endereço já em uso

Pesquisei e encontrei esta excelente resposta da Oli (com relação a essa mesma pergunta), na qual é recomendável livrar meu servidor de pacotes sendmail para evitar conflitos e reinstalar o postfix, que por sua vez instalará sua própria marca de sendmail. Infelizmente, isso não resolveu completamente o problema (veja abaixo como).

Segui as instruções e executei a seguinte verificação, à qual recebi uma resposta encorajadora:

$ dpkg -S `which sendmail`
postfix: /usr/sbin/sendmail

No entanto, quando iniciei o postfix novamente, recebi o mesmo erro.

De acordo com a contingência de Oli, procurei o processo que monopolizava a porta 25 com o seguinte:

$ sudo netstat -pel | grep smtp
tcp        0      0 localhost.localdom:smtp *:*                     LISTEN      root       
35704126    27626/sendmail: MTA

Mas aqui é onde ficou confuso: procurei o processo, 27626mas me disseram:

dpkg-query: nenhum caminho encontrado correspondente ao padrão 27626
conexões
.

Eu puxei o htop e consegui encontrar o PID acima associado ao seguinte comando:

sendmail: MTA: aceitando conexões

Eu, então, tentou matar o processo com ambos killall sendmaile killall 27626e continuei recebendo no process found.

O problema é que (além do óbvio) não sei como interpretar essas descobertas. Esfreguei o servidor do sendmail, para que eu possa apenas assumir que a própria versão do postfix do sendmail está seqüestrando a porta? Eu nem sei se isso faz sentido.

De qualquer forma, se alguém pudesse me esclarecer isso ou pelo menos fazer algumas perguntas interessantes sobre diagnóstico, eu agradeceria.

Caso seja útil, estou usando o virtualmin no servidor para gerenciar alguns domínios diferentes e também estou executando o wordpress.

Muito obrigado antecipadamente!

Em resposta a uma solicitação , publiquei um ps -efabaixo

root@upsmart:~# ps -ef
UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 Jan12 ?        00:00:00 init
root         2     1  0 Jan12 ?        00:00:00 [kthreadd/20017]
root         3     2  0 Jan12 ?        00:00:00 [khelper/20017]
root        68     1  0 Jan12 ?        00:00:00 upstart-udev-bridge --daemon
root        75     1  0 Jan12 ?        00:00:00 /sbin/udevd --daemon
root       110     1  0 Jan12 ?        00:00:00 /usr/sbin/sshd -D
root       130    75  0 Jan12 ?        00:00:00 /sbin/udevd --daemon
root       131    75  0 Jan12 ?        00:00:00 /sbin/udevd --daemon
root       175     1  0 Jan12 ?        00:00:00 upstart-socket-bridge --daemon
116        205     1  0 Jan12 ?        00:00:03 dbus-daemon --system --fork --activation=upstart
root       385     1  0 Jan12 ?        00:00:00 /usr/sbin/dovecot -F -c /etc/dovecot/dovecot.conf
root       386     1  0 Jan12 ?        00:00:04 cron
mysql      410     1  0 Jan12 ?        00:08:06 /usr/sbin/mysqld
dovecot    441   385  0 Jan12 ?        00:00:00 dovecot/anvil
root       442   385  0 Jan12 ?        00:00:00 dovecot/log
root       444   385  0 Jan12 ?        00:00:00 dovecot/config
syslog     445     1  0 Jan12 ?        00:00:08 /sbin/syslogd -u syslog
bind       474     1  0 Jan12 ?        00:00:12 /usr/sbin/named -u bind
clamav     844     1  0 Jan12 ?        00:01:34 /usr/sbin/clamd
clamav     951     1  0 Jan12 ?        00:03:27 /usr/bin/freshclam -d --quiet
list       969     1  0 Jan12 ?        00:00:00 /usr/bin/python /usr/lib/mailman/bin/mailmanctl -s -q start
list       970   969  0 Jan12 ?        00:01:03 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=ArchRunner:0:1 -
list       971   969  0 Jan12 ?        00:01:10 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=BounceRunner:0:1
list       972   969  0 Jan12 ?        00:01:03 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=CommandRunner:0:
list       973   969  0 Jan12 ?        00:01:07 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=IncomingRunner:0
list       974   969  0 Jan12 ?        00:01:01 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=NewsRunner:0:1 -
list       976   969  0 Jan12 ?        00:01:05 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=OutgoingRunner:0
list       978   969  0 Jan12 ?        00:01:06 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=VirginRunner:0:1
list       980   969  0 Jan12 ?        00:00:00 /usr/bin/python /var/lib/mailman/bin/qrunner --runner=RetryRunner:0:1
root      1410     1  0 Jan12 ?        00:00:00 /usr/sbin/saslauthd -a pam -m /var/spool/postfix/var/run/saslauthd -r
root      1413  1410  0 Jan12 ?        00:00:00 /usr/sbin/saslauthd -a pam -m /var/spool/postfix/var/run/saslauthd -r
root      2034     1  0 Jan12 ?        00:00:09 /usr/bin/perl /usr/share/usermin/miniserv.pl /etc/usermin/miniserv.con
proftpd   2054     1  0 Jan12 ?        00:00:07 proftpd: (accepting connections)              
root      2096     1  0 Jan12 ?        00:00:13 /usr/bin/perl /usr/share/webmin/miniserv.pl /etc/webmin/miniserv.conf
root      2173     1  0 Jan12 ?        00:00:15 /usr/sbin/console-kit-daemon --no-daemon
root      2241     1  0 Jan12 ?        00:00:07 /usr/lib/policykit-1/polkitd --no-debug
root      4895     1  0 03:15 ?        00:00:00 /usr/sbin/xinetd -dontfork -pidfile /var/run/xinetd.pid -stayalive -in
www-data  6494 30181  0 03:41 ?        00:00:06 /usr/sbin/apache2 -k start
www-data  6497 30181  0 03:42 ?        00:00:06 /usr/sbin/apache2 -k start
www-data  6499 30181  0 03:42 ?        00:00:06 /usr/sbin/apache2 -k start
www-data  6500 30181  0 03:42 ?        00:00:07 /usr/sbin/apache2 -k start
root      9477 30027  0 05:09 pts/5    00:00:00 sudo ps -ef
root      9478  9477  0 05:09 pts/5    00:00:00 ps -ef
root     27626     1  0 02:44 ?        00:00:00 sendmail: MTA: accepting connections          
root     27902   110  0 02:51 ?        00:00:01 sshd: root@pts/4    
root     27998 27902  0 02:51 pts/4    00:00:01 -bash
root     29931   110  0 02:59 ?        00:00:03 sshd: root@pts/5    
root     30027 29931  0 02:59 pts/5    00:00:00 -bash
root     30181     1  0 03:00 ?        00:00:02 /usr/sbin/apache2 -k start
www-data 30183 30181  0 03:00 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 30636 30181  0 03:06 ?        00:00:13 /usr/sbin/apache2 -k start

2
Você reiniciou o servidor? Olhando para os comentários da resposta de Oli, o problema desapareceu após uma reinicialização.
Douggro

Respostas:


18

Eu experimentei o mesmo problema no Ubuntu 16.04.01 LTS. A seguinte mensagem de log ocorreu /var/log/mail.loge o correio de saída falhou ao ser enviado:

postfix/master[5072]: fatal: bind 127.0.0.1 port 25: Address already in use

Recebi a seguinte saída ao tentar matar o sendmail:

$ sudo killall sendmail
sendmail: no process found

Os seguintes comandos funcionaram para mim (não é necessário reiniciar o servidor):

sudo killall sendmail-mta
sudo service postfix restart

2
Isso funcionou para mim! Parabéns!
Thelambofgoat 21/0318

10

Eu tive o mesmo problema e o que fiz foi parar de enviar e-mail, reiniciar o postfix e iniciar novamente o sendmail com os seguintes comandos:

service sendmail stop
service postfix restart
service sendmail start

Tudo voltou muito bem.


9

Bem, a resposta é profundamente insatisfatória, mas depois de algumas horas trabalhando nisso hoje, reiniciei o servidor e o postfix está em execução. Obrigado a todos que emprestaram algumas dicas.


5

Basta matar o processo do sendmail e tente novamente:

sudo kill 27626

ou

sudo killall sendmail

Obrigado pela resposta Braiam. Deveria ter especificado na pergunta, na verdade dei uma chance a ambas e isso me dá um no process found. Vou atualizar a pergunta com esse pouco de informação.
Neanderslob

killall sendmailnão encontrou nenhum processo para mim, ainda ps aux | grep sendmailmostrou um em execução, e a morte por seu PID resolveu o problema. Ele foi listado da seguinte sendmail: MTA:[...]maneira: acho que o processo real do daemon foi rotulado novamente, mas tem um nome diferente. Infelizmente, incapaz de me investigar mais neste momento, no entanto.
Synexis 23/01


1

Você pode usar o fusercomando (como root) para obter uma lista de todos os processos que estão ouvindo na porta 25 e matá-los.

fuser -uv  25/tcp
fuser -kuv 25/tcp
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.