Estou executando meu script Python usando o recurso upstart do Ubuntu para que, se por qualquer motivo meu script Python morrer ou for morto, ele possa ser reiniciado automaticamente e tudo esteja funcionando bem -
Então eu decidi usar o recurso UPSTART
do Ubuntu para reiniciar o script Python automaticamente.
Depois de criar o arquivo testing.conf
como este em /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
Corri abaixo do comando sudo para iniciá-lo e vejo esse processo sendo executado usando ps ax
e meu script python também está funcionando bem. E quando eu verifico o pid do processo acima, eu sempre vejo que ele está rodando como root. Eu não quero rodar isso como root. Em vez disso, quero executar isso como deds
account
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
Existe algum outro lugar onde eu preciso colocar o arquivo testing.conf
e depois executá-lo com algum outro comando?
ATUALIZAÇÃO: -
Algo parecido com isto -
start on runlevel [2345]
stop on runlevel [016]
chdir /tekooz
respawn
post-stop script
sleep 30
end script
setuid deds
exec python testing.py