VPS DigitalOcean
와 Ubuntu 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
시스템이 재부팅될 때 프로세스를 다시 시작할 필요가 없으며 이전 실행이 어떤 이유로 충돌하더라도 향후 작업을 실행할 수 있습니다.