노는게 제일 좋습니다.
포트가 사용중이어서 서버프로그램을 실행 할 수 없을 때 본문
문제
돌아가고 있던 서버의 프로세스가 문제가 생겼는데, 포트가 사용중이어서 프로그램을 재실행 할 수 없는 경우가 있다.
이 경우 사용중인 포트에서 어떤 프로세스가 돌아가고있는지, 해당 프로세스를 어떻게 죽일 수 있는지 알면 된다.
events.js:292
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE: address already in use :::8080
at Server.setupListenHandle [as _listen2] (net.js:1313:16)
at listenInCluster (net.js:1361:12)
at Server.listen (net.js:1447:7)
at Object.<anonymous> (/home/wonjinyi/Desktop/LearnNode/200823.js:9:6)
at Module._compile (internal/modules/cjs/loader.js:1137:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10)
at Module.load (internal/modules/cjs/loader.js:985:32)
at Function.Module._load (internal/modules/cjs/loader.js:878:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
at internal/main/run_main_module.js:17:47
Emitted 'error' event on Server instance at:
at emitErrorNT (net.js:1340:8)
at processTicksAndRejections (internal/process/task_queues.js:84:21) {
code: 'EADDRINUSE',
errno: 'EADDRINUSE',
syscall: 'listen',
address: '::',
port: 8080
}
해결
1. lsof로 사용중인 포트에서 죽이고자 하는 프로세스ID를 알아낸다. 아래 내용에서는 node의 PID인 22731이다.
(base) wonjinyi@wonjinYi:~/Desktop/LearnNode$ lsof -i tcp:8080
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
chrome 2189 wonjinyi 64u IPv6 396182 0t0 TCP ip6-localhost:54042->ip6-localhost:http-alt (ESTABLISHED)
node 22731 wonjinyi 28u IPv6 396158 0t0 TCP *:http-alt (LISTEN)
node 22731 wonjinyi 36u IPv6 396183 0t0 TCP ip6-localhost:http-alt->ip6-localhost:54042 (ESTABLISHED)
node 22731 wonjinyi 37u IPv6 396994 0t0 TCP ip6-localhost:http-alt->ip6-localhost:54044 (CLOSE_WAIT)
2. kill -9 <프로세스ID> 로 프로세스를 죽인다.
(base) wonjinyi@wonjinYi:~/Desktop/LearnNode$ kill -9 22731
[1]+ 죽었음 node 200823
3. 이후 다시 프로그램을 실행하면 해당 포트에서 정상적으로 실행된다.
'웹' 카테고리의 다른 글
외부에서 홈서버에 접속할 수 있게 설정하기 (1) | 2020.08.25 |
---|---|
구글시트 내용을 가져와 웹에서 보여주는 방법 (2) | 2020.08.23 |
fade-in/out 적용된 modal (0) | 2020.08.10 |
JS eventlistener로 호출된 객체의 메소드에서 멤버변수에 접근하기 (0) | 2020.07.12 |
Naver Maps API v3 지도 가변크기적용 (0) | 2020.05.25 |
Comments