Apacheが開始できない(restartに失敗する)
問題
apacheの様子がおかしいので、restartしようとしたのだが、エラーで開始できない。
# /etc/init.d/httpd restart httpd を停止中: [失敗] httpd を起動中: (98)Address already in use: make_sock: could not bind to address [::]:80 (98)Address already in use: make_sock: could not bind to address 0.0.0.0:80 no listening sockets available, shutting down Unable to open logs [失敗]
答え
エラーメッセージによると、誰かが80番ポート(Apacheが使いたいポート)を使っているので、Apacheを開始できない様子。
apacheが異常な終了をしたときなどに、プロセスが残ったりするとそういうことになることもあるらしい。
プロセスを探して、killすれば、apacheを起動できる。
# lsof -i | grep http httpd 10329 apache 3u IPv6 21161133 TCP *:http (LISTEN) httpd 10329 apache 5u IPv6 21161142 TCP *:https (LISTEN) httpd 10461 apache 3u IPv6 21161133 TCP *:http (LISTEN) httpd 10461 apache 5u IPv6 21161142 TCP *:https (LISTEN)
# kill -9 10329 # kill -9 10461
コメント