2016-10-10 12 views
-1

로 데몬 프로세스를 만들었습니다. linktosite 나는 물통 ssh에 연결하고 python myDaemon.py start로 프로세스를 시작합니다.파이썬 데몬이

데몬 메서드 내에서 루프를 사용하여 작업을 수행합니다. 하지만 로그 아웃하면 데몬이 멈 춥니 다.

PID 파일을 루트 폴더가 아닌 사용자에게 저장하기 때문에 이런 현상이 발생합니까?

누구나 생각해보십시오. 코드를 전달할 수는 있지만 지금 스레드 생성. (+ 3h)

+1

당신이'detach' 옵션을 통과 했는가, 터미널에서 사용 과정을 다시 보려면? 'nohup python myDaemon.py start &'를하면 차이가 있습니까? (그렇지 않아야합니다. 그렇다면 문제가 있습니다). – RemcoGerlich

+0

호스트가 원칙적으로 로그 아웃 후 백그라운드 프로세스를 실행할 수 있다고 확신합니까? 일부 시스템은 대화식 세션이 끝나면 모든 프로세스를 종료하도록 구성됩니다. ('nohup cat &'과 같이 실행하고 로그 아웃 한 후 다시 로그인하여'ps'에서'cat'이 여전히 발생하는지 확인하십시오.) – Phillip

+0

nohop 또는 프로세스없이 ps가 ps와 함께 표시되지 않습니다. & e는 무엇입니까? – Offset

답변

-1

python 스크립트에서 shebang 행을 사용하십시오. 명령을 사용하여 실행 가능하게 만듭니다. chmod + x test.py 터미널을 닫더라도 백그라운드에서 프로그램을 실행하려면 전화 끊김을 사용하지 마십시오.

nohup /path/to/test.py & 

&을 사용하는 것을 잊지 마세요.

ps ax | grep test.py 

Answer

Another way would be actually make it an upstart script

+0

여전히 동일한 행동을 했습니까? 프로세스가 표시되었지만 로그 아웃 후 - 로그인이 사라졌습니다. – Offset