SSH가 다시 연결되면 프로세스 ID가 사라집니다.

SSH가 다시 연결되면 프로세스 ID가 사라집니다.

VPS DigitalOceanUbuntu Droplet.nohup

 # nohup python patrol.py &

모든 것이 잘 작동하지만 SSH 연결을 닫았다가 다시 연결하면 프로세스 ID가 존재하지 않는 것을 볼 수 있습니다. Python 작업은 20분마다 API에 요청을 보냅니다. API 서버 콘솔에서 프로세스가 여전히 유효한 것으로 나타났습니다.하지만 ps명령에서 프로세스 ID를 찾을 수 없습니다.

답변1

ps기본적으로 동일한 터미널에서 실행 중인 프로세스만 표시되므로 SSH 연결이 종료된 후 백그라운드로 전송된 프로세스는 표시되지 않습니다.

설명서에 나와 있듯이 ps -ef다음 중 하나를 사용하십시오(매뉴얼 페이지):

표준 구문을 사용하여 시스템의 모든 프로세스를 보려면 다음을 수행하십시오.

ps -e
ps -ef                            
ps -eF
ps -ely

BSD 구문을 사용하여 시스템의 모든 프로세스를 확인하세요.

ps ax
ps axu

그러나 20분마다 실행하려는 경우 이를 실행하면 cron시스템이 재부팅될 때 프로세스를 다시 시작할 필요가 없으며 이전 실행이 어떤 이유로 충돌하더라도 향후 작업을 실행할 수 있습니다.

관련 정보