Por que um serviço está sendo iniciado se não é mencionado em /etc/init.d?

Por que um serviço está sendo iniciado se não é mencionado em /etc/init.d?

Após uma instalação limpa do Fedora 17 e distcc-server, fiz um service distccd start, que foi concluído com sucesso.

man serviceindica que ele estaria apenas executando o distccdscript em /etc/init.d/distccd, mas esse arquivo não existe. chkconfigtambém parece não saber sobre o distccd, o que é confirmado por não haver arquivos relacionados no /etc/rc[0-6].d. Láfazexiste um arquivo /etc/sysconfig/distccdque contém opções de execução para o daemon distcc, mas não consigo encontrar nada vinculado servicede /etc/sysconfigqualquer maneira.

Como servicesabe o que fazer quando digito service distccd start?

Além disso, aprendi que o Fedora 17 pode redirecionar servicepara systemd/ systemctl. Mesmo que seja esse o caso, ainda não encontro nenhum distccdarquivo relacionado em /etc/systemd/{system,user}.

Responder1

/etc/systemdé para serviços definidos pelo usuário. O local padrão para serviços definidos pelo sistema é /lib/systemd/system/. Você pode substituir serviços definidos pelo sistema em arquivos /etc/systemd.

Para obter mais informações sobre o systemd, dê uma olhada nopágina wiki do fedora para systemdou dê uma olhada nodocumentação do sistema

Responder2

AFAIK, servicedepende de um script de inicialização presente no /etc/init.d.

distccd pode não ter vindo empacotado com um script de inicialização. Tente o seguinte para iniciar o serviço como um daemon:

distccd --daemon

Se isso funcionar, você pode criar seu próprio script que /etc/init.d/distccddispara o comando acima e poderá tratá-lo como um serviço do sistema com service distccd start. Use /etc/init.d/skeletoncomo modelo.

informação relacionada