본문 바로가기

Linux/Linux공통

[Linux] Cannot bind socket error(포트 이미 사용 중) 해결법

오류메시지: cannot bind socket [IP주소:포트번호]

원인: 바인딩하고자하는 포트를 다른 프로세스가 사용 중

해결방법:

1) 포트번호로 네트워크 연결 상태를 확인합니다.

$ netstat -np | grep 포트번호​

2) 실행 중인 프로세스를 확인하고 해당 프로세스 번호를 알았다면 프로세스를 Kill합니다.

$ ps -ef // 예) 프로세스 확인 $ kill -9 프로세스ID // 예) kill -9 2020

3) 프로세스를 죽여도 같은 현상이라면 네트워크 자원을 Kill하고 해제합니다.

자원을 해제하는데 길게는 몇 분까지도 소요됩니다.

$ fuser -k -n 프로토콜 포트번호
예1) fuser -k -n tcp 1001
예2) fuser -k 1001/tcp
 
만약 'fuser command not found' 오류가 발생한다면 설치합니다.
 $ yum install psmisc