Боюсь, модуль демонов, упомянутый @Dustin, не работает для меня. Вместо этого я установил python-daemon и использовал следующий код:
# filename myDaemon.py
import sys
import daemon
sys.path.append('/home/ubuntu/samplemodule') # till __init__.py
from samplemodule import moduleclass
with daemon.DaemonContext():
moduleclass.do_running() # I have do_running() function and whatever I was doing in __main__() in module.py I copied in it.
Запуск легко
> python myDaemon.py
только для полноты здесь - содержимое каталога образцового модуля
>ls samplemodule
__init__.py __init__.pyc moduleclass.py
Содержимое moduleclass.py может быть
class moduleclass():
...
def do_running():
m = moduleclass()
# do whatever daemon is required to do.