기존에 이런 에러가 발생했을때는 우분투 특정포트 죽이기 게시물의 방법대로 하면 쉽게 사용되는 포트를 죽일 수 있었다.
그런데 80번 포트를 쓸때마다 같은 에러가 발생하는데 아무리 다른 방법을 사용해도 해결이 되지 않았는데, 드디어 해결방법을 찾았다.
ps -ef|grep <파일명>
kill -9
<PID>
위와 같은 명령어를 입력하면 위와 같이 사용자와 PID를 확인할 수 있다. (PID는 ubuntu 뒤의 첫번째 숫자)
현재는 root에서 사용하는 80번 포트가 없어 정상적으로 동작하지만, Error: listen EADDRINUSE
가 발생할때에는 root에서 80번 포트의 PID가 존재했다.
그때 이 PID에 대해 kill -9 <PID>
를 해주니 프로세스가 성공적으로 삭제되었다. 프로세스 삭제 이후에 pm2 log
를 확인해보니 다음과 같이 서버가 잘 실행되었다.
명령어 이해하기
ps -ef
grep node
ps -ef | grep node
kill -9 <PID>