![localhost에서 수신 대기 포트를 닫습니다.](https://linux55.com/image/169823/localhost%EC%97%90%EC%84%9C%20%EC%88%98%EC%8B%A0%20%EB%8C%80%EA%B8%B0%20%ED%8F%AC%ED%8A%B8%EB%A5%BC%20%EB%8B%AB%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
답변1
Unix 및 Linux StackExchange에 오신 것을 환영합니다!
귀하의 사진에 따르면 SIGTERM을 사용하여 현재 포트를 점유하고 있는 프로세스를 종료하면 새로운 프로세스가 대신 발생합니다. 따라서 systemd
프로세스가 종료될 때 자동으로 프로세스를 다시 시작하도록 구성되거나 포트를 보유하는 프로세스가 주 서버 응용 프로그램의 "작업자" 하위 프로세스일 뿐입니다.
문제의 프로세스 이름은 node
귀하의 출력을 기반으로 한 것 같습니다 netstat -tlpn
. 그래서 먼저 다음과 같은 이름의 시스템 서비스가 있는지 확인하려고 했습니다.
systemctl | grep -i node
서비스의 정확한 이름(예 node.service
: )을 알고 나면 다음을 사용하여 서비스를 중지할 수 있습니다.
systemctl stop node.service
잘못된 것으로 판명되면 재부팅하십시오.
systemctl start node.service
올바른 서비스가 중지되었음을 확인한 후에는 다음에 시스템을 재부팅할 때 서비스가 자동으로 시작되지 않도록 서비스를 비활성화할 수 있습니다.
systemctl disable node.service
답변2
특정 포트에서 수신 대기하는 프로세스를 검색하려면 lsof 또는 열린 파일 나열을 사용하십시오.
lsof
-i
특정 포트 필터링 옵션 에서 실행 중인 프로세스 찾기
lsof -i TCP:[PORT]
lsof -i TCP:5601
특정 포트에서 수신 대기 중인 모든 프로세스를 종료합니다. 이 -t
명령은 정확히 파이프에 대한 PID만 반환하며 xargs
반환된 각 줄에서 사용됩니다.
lsof -ti tcp:[PORT] | xargs kill
lsof -ti tcp:5601 | xargs kill
프로세스가 더 지속적이고 종료가 작동하지 않으면 kill -9 [PID]
더 적극적으로 종료해 보십시오.
인용하다