포트에서 수신 대기하는 특정 애플리케이션이 어떻게 실행되는지 알아내려고 노력하는 동안 8088
PID가 있음을 확인했습니다 15020
.
$ netstat -ntulp
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:7070 0.0.0.0:* LISTEN 17593/node
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:8088 0.0.0.0:* LISTEN 15020/node
tcp6 0 0 :::22 :::* LISTEN -
tcp6 0 0 :::8983 :::* LISTEN 14995/java
udp 0 0 0.0.0.0:68 0.0.0.0:* -
나는 그것이Node.js애플리케이션:
$ ps aux | grep 15020
ubuntu 15020 0.0 0.8 670940 32764 pts/4 Sl+ 15:58 0:00 node app.js
ubuntu 15367 0.0 0.0 8080 620 pts/8 S+ 16:33 0:00 grep --color=auto 15020
이제 실행 중인 위치를 어떻게 찾을 수 있나요? 실행 중인 screen
세션 이 표시되지 않습니다 tmux
. 이 작품을 디자인한 창작자는 댓글을 달 수 없습니다. 무엇 향후 계획? 나는 그것을 실행했고 find / -name app.js
수십 개의 결과가 반환되었지만 모두가 서로 다른 버전은 아니었습니다!
8088 인터페이스에서 반환된 텍스트 에 대해 찾은 각 파일을 app.js
Greping하면 대부분의 파일이 일치하는 것으로 나타났습니다.논리적인 다음 문제 해결 단계는 무엇입니까?
답변1
PID를 사용하여 lsof를 실행해 볼 수 있지만 런타임 시 애플리케이션에서 파일을 열었지만 열린 상태로 유지되지 않았을 가능성이 높습니다.
lsof -p 15020 | grep app.js
또는 애플리케이션을 추적하고 출력을 확인하여 파일의 전체 경로를 얻을 수 있습니다.
strace -p 15020