我正在尝试在我的服务器上运行 postfix,但在我的服务器中不断收到以下错误/var/log/mail.log:
postfix/master[5041]: 致命: 绑定 0.0.0.0 端口 25: 地址已被使用
我做了一些搜索,发现Oli 的这个很好的答案(关于这个问题),其中建议我基本上删除我的服务器上的 sendmail 包以避免冲突,然后重新安装 postfix,这将依次安装自己品牌的 sendmail。不幸的是,它并没有完全解决问题(参见下文)。
我按照说明进行了以下检查,收到了令人鼓舞的回复:
$ dpkg -S `which sendmail`
postfix: /usr/sbin/sendmail
Run Code Online (Sandbox Code Playgroud)
但是,当我再次启动 postfix 时,我遇到了同样的错误。
根据 Oli 的意外情况,我查找了占用 25 端口的进程,如下所示:
$ sudo netstat -pel | grep smtp
tcp 0 0 localhost.localdom:smtp *:* LISTEN root
35704126 27626/sendmail: MTA
Run Code Online (Sandbox Code Playgroud)
但这就是令人困惑的地方:然后我查找了该过程,27626但随后被告知:
dpkg-query: 没有找到匹配模式27626
连接的路径。
我拉起 htop 并能够找到与以下命令关联的上述 PID:
sendmail:MTA: 接受连接
然后我试图杀死了过程killall sendmail,并killall 27626与不断得到no process found。
问题是(除了显而易见的)我不知道如何解释这些发现。我刷了sendmail的服务器,所以我只能假设postfix自己的sendmail版本在劫持端口?我什至不知道这是否有意义。
无论如何,如果有人可以让我直截了当,或者至少给出一些有趣的诊断问题,我将不胜感激。
如果它有用, 我在服务器上使用 virtualmin 来管理几个不同的域,并且还在运行 wordpress。
提前谢谢了!
为了响应一个请求,我在ps -ef下面发布了一个
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
Run Code Online (Sandbox Code Playgroud)
kjo*_*nes 26
我在 Ubuntu 16.04.01 LTS 上遇到了同样的问题。出现以下日志消息/var/log/mail.log,出站邮件发送失败:
postfix/master[5072]: fatal: bind 127.0.0.1 port 25: Address already in use
Run Code Online (Sandbox Code Playgroud)
我在尝试杀死 sendmail 时收到以下输出:
$ sudo killall sendmail
sendmail: no process found
Run Code Online (Sandbox Code Playgroud)
以下命令对我有用(无需重新启动服务器):
sudo killall sendmail-mta
sudo service postfix restart
Run Code Online (Sandbox Code Playgroud)
小智 11
我遇到了同样的问题,我所做的只是停止发送邮件,重新启动 postfix 并使用以下命令重新启动 sendmail:
service sendmail stop
service postfix restart
service sendmail start
Run Code Online (Sandbox Code Playgroud)
一切都回来就好了。
只需杀死 sendmail 进程并重试:
sudo kill 27626
Run Code Online (Sandbox Code Playgroud)
或者
sudo killall sendmail
Run Code Online (Sandbox Code Playgroud)