我正在使用 Ubuntu 的 upstart 功能运行我的 Python 脚本,这样,如果我的 Python 脚本因某种原因死亡或被终止,它可以自动重新启动,并且一切都正常工作 -
所以我决定使用UPSTART
Ubuntu 的功能自动重启 Python 脚本。
testing.conf
在以下位置创建如下文件后/etc/init/testing.conf
-
start on runlevel [2345]
stop on runlevel [016]
chdir /tekooz
respawn
post-stop script
sleep 30
end script
exec python testing.py
我运行下面的 sudo 命令来启动它,我可以看到该进程正在运行ps ax
,我的 python 脚本也运行良好。当我检查上述进程的 pid 时,我总是看到它以 root 身份运行。我不想以 root 身份运行它。相反,我想以deds
帐户身份运行它
deds@bx13:/$ sudo start testing
testing start/running, process 3635
deds@bx13:/$ ps aux | grep testing
root 3635 2.4 0.1 364136 15660 ? Ssl 12:24 0:00 python testing.py
我是否需要将testing.conf
文件放在其他地方,然后使用其他命令运行它?
更新:-
就像这样 -
start on runlevel [2345]
stop on runlevel [016]
chdir /tekooz
respawn
post-stop script
sleep 30
end script
setuid deds
exec python testing.py