Como configuro um serviço?

19

Eu tenho um script que gostaria de executar como um serviço na minha caixa sem cabeça do Ubuntu Server 11.04. Ou seja, eu quero ter os arquivos corretos em /etc/init.d / e poder controlá-lo através do comando service .

Existe algum guia disponível que me mostre como fazer isso?

    
por Kent Boogaart 23.09.2011 / 20:31

2 respostas

14

A menos que você esteja usando o 15.04 ou qualquer versão posterior (que usa systemd ), provavelmente será melhor se você transformar seu script em um trabalho do Upstart, em vez de seguir os exemplos que você encontrará em /etc/init.d/ ( que são scripts de inicialização no estilo System V, dos quais o Ubuntu e outras distribuições estão se distanciando).

O Cookbook Upstart tem uma enorme quantidade de informações sobre como os trabalhos do Upstart funcionam. Embora eu não o descreva como um HOWTO, se você combinar as informações lá com as buscas do Ubuntu Upstart em /etc/init/ , você começará a entender.

Sugiro começar com as seções 4 e 5 do Livro de Receitas, "Conceitos e terminologia" e "Configuração"

    
por Mark Russell 23.09.2011 / 21:48
10

Aqui está um exemplo muito simples de como criar um script upstart: link

ATUALIZAÇÃO: o link acima está quebrado. Aqui está um exemplo de um script:

description "My startup service"
author "You or someone else"
version "3.14"

pre-start script
    echo 'Starting my service ...'
end script

start on net-device-up
stop on runlevel [!2345]

console output

respawn

exec /path/to/your/custom/script

Adapte conforme necessário.

Você deve colocar o script em /etc/init/yourfilename.conf

Em seguida, recarregue a configuração com:

sudo initctl reload-configuration

E, se tudo estiver correto, você poderá começar com:

sudo start yourfilename
    
por lenooh 19.04.2012 / 21:50