스크립트를 실행 중인 서비스 확인

스크립트를 실행 중인 서비스 확인

저는 일부 동료들과 개발 서버를 공유하고 있습니다. Ubuntu 서버이고 거기에 몇 가지 스크립트가 있으므로 기본적으로 프로세스를 실행하는 일반적인 방법은 session 을 사용하는 것입니다 screen. 내 문제는 이 작업을 수행할 때 ps aux| grep python실행 중인 프로세스가 표시된다는 것입니다.

root     x  x  x x x x  Ss   Apr12  29:58 /usr/bin/python /home/script.py

스크립트는 스크린 세션에서 실행되지 않고 종료될 때 자동으로 시작되므로 어떤 서비스가 프로세스를 시작/다시 시작하는지 알아야 합니다. 도움을 주시면 감사하겠습니다.

답변1

pstree를 사용하면 모든 프로세스와 해당 상위 프로세스에 대한 트리 보기를 얻을 수 있습니다. 아래 예에서는 PID가 1913인 pulseaudio의 상위 프로세스를 가져옵니다.

$ pstree -sU 1913   
systemd───pulseaudio─┬─{alsa-sink-ALC88}
                     └─{alsa-source-ALC}

귀하의 경우에는 다음과 같이 pgrep과 pstree를 사용합니다.

pstree -sU $(pgrep /home/script.py)

스크립트 상위가 종료되면 해당 상위가 초기화될 가능성이 높습니다. 이 경우 상위 프로세스를 얻으려면 보다 공격적인 방법이 필요합니다.

관련 정보