Programming/MacOS

(mac) Port was already in use. 포트 찾아서 종료시키는 방법

Jan92 2021. 10. 26. 00:09

Port 8081 was already in use.

 

Web server failed to start. Port was already in use.

 

개발 중 어플리케이션을 실행한 포트에 이미 다른 어플리케이션이 동작하고 있을 경우 발생하는 현상입니다.

해결 방법은 해당하는 포트에서 동작 중인 프로세스를 식별하여 중지하거나, 이 응용 프로그램을 다른 포트에서 실행하는 것인데요.

 

아래는 macOS Terminal에서 포트를 찾고, 중지시키는 방법입니다.

 

 


 

 

lsof -i tcp:8081

lsof -i tcp:8081

 

특정 포트를 찾고 싶을 때 사용하는 명령어입니다. 여기서 8081이 port 번호입니다.

해당 명령어를 통해 프로세스가 실행되고 있는 PID를 알아냅니다.

 

* lsof는 list open files의 약자로 시스템에서 열려있는 모든 파일과 해당 파일들을 열고 있는 프로세스들의 목록을 출력합니다.

 

 

 

kill -9 1561

 

찾은 포트를 종료시키기 위해 사용하는 명령어입니다. 여기서 1561이 위에서 찾은 PID입니다.

 

 

 

 

sudo lsof -PiTCP -sTCP:LISTEN

 

sudo lsof -PiTCP -sTCP:LISTEN

 

(추가로) 열려있는 전체 포트를 확인할 수 있는 명령어입니다.

 

 

 

* 맨 앞에 붙는 sudo는 권한을 가지지 않은 사용자에게 '관리자 권한이 필요한 명령어'를 터미널 내에서 수행 가능하게 해주는 커맨드입니다.