私はしようとしていますサーバーで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
しかし、postfixを再び開始したとき、同じエラーが発生しました。
Oliの不測の事態に応じて、ポート25を占有するプロセスを次のように探しました。
$ Sudo netstat -pel | grep smtp
tcp 0 0 localhost.localdom:smtp *:* LISTEN root
35704126 27626/sendmail: MTA
しかし、ここで混乱を招きました:それからプロセス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
答えは非常に不満足ですが、今日これに取り組んで数時間燃やした後、サーバーを再起動し、postfixを実行しています。洞察力を貸してくれたすべての人に感謝します。
Ubuntu 16.04.01 LTSでも同じ問題が発生しました。 /var/log/mail.log
で次のログメッセージが発生し、送信メールの送信に失敗しました。
postfix/master[5072]: fatal: bind 127.0.0.1 port 25: Address already in use
Sendmailを強制終了しようとすると、次の出力が表示されました。
$ Sudo killall sendmail
sendmail: no process found
次のコマンドが機能しました(サーバーを再起動する必要はありません)。
Sudo killall sendmail-mta
Sudo service postfix restart
私は同じ問題を抱えていましたが、次のコマンドでメールの送信を停止し、postfixを再起動し、sendmailを再起動するだけでした。
service sendmail stop
service postfix restart
service sendmail start
すべてが正常に戻ってきました。
Sendmailプロセスを強制終了して、もう一度やり直してください。
Sudo kill 27626
または
Sudo killall sendmail
私にとって解決策はSudo killall sendmail-mta
でした
fuser
コマンド(rootとして)を使用して、ポート25でリッスンしているすべてのプロセスのリストを取得し、それらを強制終了できます。
fuser -uv 25/tcp
fuser -kuv 25/tcp