Quando você copia inicialmente um novo arquivo conf na pasta / etc / init, você precisa chamar:
initctl reload-configuration
Por este seu upstart deve ser registrado corretamente.
Estou usando o upstart para serviços em meus servidores. Escrever um arquivo conf e colocá-lo em /etc/init
é bastante fácil, mas isso não parece ser completamente instalado. Por um lado, o service --status-all
não lista meu novo serviço. Eu verifiquei e se eu fizer um link em /etc/init.d
to /lib/init/ubstart-job
ele aparecerá no status. Mas fazer isso manualmente me faz pensar que não estou fazendo certo, e pode haver outras etapas de configuração que não estão sendo feitas.
Qual é a maneira correta de instalar um serviço upstart de modo que ele seja registrado corretamente em todas as ferramentas que lidam com serviços?
Quando você copia inicialmente um novo arquivo conf na pasta / etc / init, você precisa chamar:
initctl reload-configuration
Por este seu upstart deve ser registrado corretamente.
Confira o manual de serviço:
service --status-all executa todos os scripts init, em ordem alfabética, com o comando status. Esta opção só chama o status para tarefas sysvinit, as tarefas upstart podem ser consultadas de maneira similar com a lista initctl.
(ênfase adicionada)
É por isso que adicioná-lo ao /etc/init.d (onde as tarefas do sysvinit estão localizadas) fez esse trabalho. Então, tente executar initctl list em vez disso :).
Amigo, certifique-se de seguir os seguintes passos ao adicionar / criar um novo serviço no Ubuntu.
/etc/init.d/<service name>
chmod 700 /etc/init.d/<service name>
update-rc.d <service name> defaults
update-rc.d <service name> enable
veja agora você atende em
service --status-all
Descobri que um erro no arquivo .conf pode tornar o trabalho não reconhecível para o initctl. por exemplo, ter uma linha setuid
na versão 1.3 do Upstart ou anterior.
Enquanto a atual resposta escolhida está correta para obter o novo serviço adicionado ao upstart, não é particularmente útil descobrir porque uma configuração em / etc / init / está falhando ao carregar - a parte que falta está usando o init-checkconf primeiro para ter certeza de que sua configuração é válida e, em seguida, usando a configuração de recarregamento:
####Test the new config - resolving any issues before continuing:
ERROR: File /etc/init/test.conf: syntax invalid:
test.conf:35: Unterminated quoted string
####then fix and recheck:
# init-checkconf /etc/init/test.conf
File /etc/init/test.conf: syntax ok
####then reload:
# initctl reload-configuration
#### and start:
# start test
Tags upstart