Python服务/守护进程

我正在编写一个Python脚本,我需要从启动开始(它应该在启动后继续运行)。 我想能够通过运行命令来pipe理服务,如:

sudo service my-service (and either start, stop, restart, etc.) 

我一直在阅读很多内容,真的很想完成我的项目。 我看到了这一点,但如果要使用Linux启动脚本 ,则需要实施它。 我甚至不知道从哪里开始,我真的不知道如何在bash中编程,但我对所有的解决scheme都是开放的。 提前谢谢你,我感谢所有的回应!

看看zdaemon 。 它提供了一个简单的方法来守护一个Python进程。

然后你可以为它编写一个init.d脚本 – 基于你的操作系统。 或者你可以使用像Upstart,supervisord这样的工具来控制守护进程。

我的init.d脚本(在5.8版上)看起来像这样:

 . /etc/rc.d/init.d/functions . /etc/sysconfig/network APP_PATH=/path/to/your/app PYTHON=/usr/local/bin/python USER=user start() { cd $APP_PATH zdaemon -C app.zdconf start } stop() { cd $APP_PATH zdaemon -C app.zdconf stop } check_status() { cd $APP_PATH zdaemon -C app.zdconf status } case "$1" in start) start ;; stop) stop ;; status) check_status ;; restart) stop start ;; *) esac exit 0 

其中app.zdconf是zdaemon配置文件。