카테고리 없음

[Apache] port 점유 프로세스 찾기 - netstat

이주성 2013. 1. 3. 16:41

여유가 있어서 오랜만에 Apache서버를 설치하고 있다. 그런데 Apache 서버가 start가 안된다.ㅠㅜ 

도대체 왜 안될까?? 울고 싶다.

 jlee3-desk$ sudo service start apache2

 (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
 Action 'start' failed.

그래서 googling을 해봤다. 구글신이여 대답을 주소서.. 대부분은 구글 검색결과는 다음과 같이 말한다.

80포트를 점유하는 녀석이 있을것이다. netstat -nlp로 검색해서 80포트를 점유한 녀석을 찾아서 kill -9로 죽여라.. 라고

 jlee3-desk$ netstat -nlp | grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1234/apache2
 jlee3-desk$ kill -9 1234

기쁜마음으로 netstat -nlp를 해봤다.^^ 

 jlee3-desk$ netstat -nlp | grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      -

그러나 결과는 위처럼 누군지 알수없다.ㅠㅜ; 누군가 분면 80포트를 점유한다. 그러나 netstat에서는 -로 표시한다. netstat가 만능의 툴은 아니다.

그래서 한참을 헤매다가.. 방법을 찾았다.

분명이 어떤 Server가 80포트로 뜨고 있다. 그렇다면 /etc폴더에 포트설정이 있을것이다. 그래서 검색을 해봤다.

sudo find . -name "*.conf" -exec grep --color "80" {} /dev/null \;
./tntnet/tntnet.conf:  Listen	    0.0.0.0 80

이럴수가 80포트를 Listen하고 있는 서비스가 있다. tntnet이라는 놈이.... 이놈을 8080포트를 Listen하게 하고 Apache2를 돌리니 잘 돌아간다. 아~ 기쁘다.