[오류 노트] kill 명령어로 프로세스 종료

오류 발생

REST API 실습을 위해 json-server를 실행했다.

  TodoApp + REST API (with JSON Server) json-server database/db.json --watch

  \{^_^}/ hi!

  Loading database/db.json
  Done

  Resources
  http://localhost:3000/todos
  http://localhost:3000/ediya-menu

  Home
  http://localhost:3000

  Type s + enter at any time to create a snapshot of the database
  Watching...

하지만 오류가 발생한다!!

address already in use 127.0.0.1:3000 → 이미 3000 포트를 사용하고 있다는 것이다.

이럴 경우 구동하는 포트 번호를 3001와 같은 식으로 바꾸거나 이미 사용 되고 있는 3000의 서버를 강제 종료하면 된다.

해결 방법

kill 명령어로 프로세스 종료

서버를 구동시킨 상태에서 losf 명령어를 사용 입력한다. -i 옵션 뒤에 프로토콜과 포트를 명시해주면 TCP 3000번 포트를 사용하는 프로세스 정보가 출력된다.

명령어 출력 결과

위 사진과 같이 정보가 출력된다. 여기서 확인 할 것은 실행된 node의 PID(process ID)이다. 58841번을 기억하고 이제 해당 프로세스를 중지해보자

circle-info

서버를 구동 시켰을 때 명령어를 또 입력할 수 없다면?

터미널의 우측 상단에 이런 아이콘이 있다. 여기서 가운데 아이콘을 클릭하면 터미널 창이 하나 더 생긴다.

kill 명령어

kill -9 명령어를 사용하면 해당 프로세스가 중지 된다.

프로세스가 종료되었다는 안내
triangle-exclamation

참고

Last updated