netstat는 프로세스 이름을 어디에서 얻습니까?


4

노드 응용 프로그램을 개발 중이며 프로세스 제목 (프로세스 이름)을 설정하는 옵션이 있습니다. 이것은 일부 도구 (ps 및 top과 같은)에서만 설정하지만 htopor 에는 없습니다 netstat.

대부분의 응용 프로그램이 어떻게 작동하는지 설명하는 이 기사를 찾았 지만 netstat에서는 변경되지 않습니다.

그로 인해 해당 프로그램이 프로세스 이름을 얻는 위치가 궁금합니다. 그들이 그것을 얻을 것 /proc/##/cmdline입니까? (##은 프로세스의 PID입니다)

나는 물건을 엉망으로 /proc만드는 것은 나쁜 생각 (아마도 가능하지 않음)이라고 생각합니다. 이곳에서 프로그램이 얻는 곳이라면 그것을 바꿀 수있는 방법이 있습니까?

답변:


5

/ proc에서 내용을 읽는 데 아무런 문제가 없습니다. 사실, 그것은 이다 그 도구에서 해당 정보를 얻을 곳. 실제로 명령 이름을 가진 3 개의 파일이 있습니다.

/proc/PID/cmdline
/proc/PID/stat
/proc/PID/status

나는 그것이 보통에서 얻는다고 믿는다 stat.


그러나 왜 ps와 top은 프로세스 이름이 변경되었지만 netstat는 그렇지 않습니까?
— beatgammit

프로세스는 프로세스 이름을 변경하여 / proc / PID / cmdline을 변경할 수 있지만 통계 항목은 변경되지 않습니다. 따라서 도구가 이름을 얻는 곳에 따라 다릅니다. netstat가 stat 항목을 사용하는 것 같습니다.
— Keith

분명히 노드는 stat, status 및 comm의 값을 변경했지만 cmdline은 변경하지 않았습니다. htop 및 netstat와 같은 프로그램이 cmdline에서 읽은 것 같습니다. 어쨌든 정보 주셔서 감사합니다!
— beatgammit
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.