Os scripts * .conf não são scripts de shell, portanto, uma diretiva de interpretador de #!/bin/sh
é APENAS um comentário não funcional nesse contexto.
Verifique se não há uma tarefa do sistema com o mesmo nome, "beta". Eu estou supondo que o .conf está em
/home/alex/.init/beta.conf
As tarefas do usuário realmente não devem precisar da parte setuid / setgid, a menos que você precise alternar o GID para uma que não seja o principal GID do usuário (mas está na lista como visto na saída do id (1) ).
O "cd / home / alex /" sugerido deve, de acordo com os documentos, ser "chdir / home / alex", omitindo também a barra final supérflua. Isso pode ajudar, mas a seção de script provavelmente será suficiente, embora a saída seja boa - talvez se concentrando em capturar a saída do cd (real) e o script pode ajudar, com:
script
export HOME=/home/ubuntu/project
{
cd $HOME/beta
python default.py -dev
} > $HOME/beta/log 2>&1
end script
Muitos problemas relacionados a inicializações gerenciadas pelo sistema de tarefas como essa aparecem na saída de id (1) ou env (1), portanto, você pode adicionar essa linha logo antes da linha do python:
id ; env | sort
As contas pessoais dos usuários geralmente modificam a variável PATH, scripts extras de personalização e dotfiles que eles esquecem, e assim por diante, ou dependem das configurações de ambiente de .bashrc e similares que acontecem apenas durante logins totalmente interativos (.bashrc vs .bash_login e parentes e assim por diante).
Note que se o seu sistema tem um verdadeiro retro /bin/sh
(improvável), a linha de exportação teria que ser escrita como:
HOME=/home/ubuntu/project ; export HOME
: -)