2014-06-22 2 views
0

리눅스에서 실행되는 파이썬 데몬이 있습니다. 이 방법으로 작동하는 자동 업데이트 기능을 구현 중입니다.부모 프로세스가 파이썬에서 종료 될 때 프로세스 종료를 피하는 방법

  1. 새 버전이 감지되면 앱은 subprocess.call을 사용하여 업데이터 스크립트를 호출합니다. 데몬이 중지되기 때문에 (실제로 업데이터 스크립트)
  2. 자식 프로세스는 데몬
  3. 을 중지 업데이터 스크립트는 종료 :/

그래서 제 질문은 내가하는 방식으로 업데이터 스크립트를 실행할 수있는 방법입니다 부모 프로세스에 의존하지 않을 것입니다. 즉, 부모 프로세스 종료로 인해 자식 프로세스가 종료되는 것을 원하지 않습니다.

환경 : 리눅스 민트 16

파이썬 3.3

감사

당신의 라인을 따라 뭔가를 할 수
+0

http://stackoverflow.com/questions/473620/how-do-you-create-a-daemon-in-python 및 https://pypi.python.org/pypi/daemonize/을 살펴보십시오. –

답변

1

:

from subprocess import Popen 

updater = ['/usr/bin/python', '{PATH TO}/updater_script.py', '&'] 
Popen(updater) 
업데이트 프로그램은 데몬에 의해 영향을받지 않습니다

폐쇄.

+0

감사하지만 작동하지 않았습니다. 자식 프로세스가 부모가 멈추었을 때 종료된다 : ( – Davita

+0

나는 작동할만한 것에 대한 나의 대답을 업데이트했다 ... 조금 해킹 된 것 같다.하지만 그럴 가치가있다. – cchristelis

+0

나는 그것을 시도했다. 내가 발견 한 유일한 방법은 자식 프로세스를 대몬 화하는 것이 었습니다. 간단한 작업에 약간의 오버 헤드가 있지만 작동합니다. 어쨌든 고마워요. – Davita

관련 문제