Como eu crio um serviço usando o chkconfig no CentOS?

5

Eu quero ser capaz de criar um serviço para que o script bash seja executado toda vez que o servidor for inicializado.

Estou executando o CentOS 5.

Eu tenho lido sobre o chkconfig e criado um arquivo em /etc/init.d para o chkconfig, mas não consigo fazê-lo funcionar sempre que "chkconfig servicename on" e, em seguida, "service servicename start"

Quando faço chkconfig --list, meu serviço é listado lá.

Alguém pode me fornecer uma amostra do arquivo que eu preciso criar em /etc/init.d e como fazer tudo funcionar?

    
por qroberts 16.05.2011 / 22:47

3 respostas

3

Se você precisar apenas de um script bash para executar uma ou mais coisas toda vez que o servidor for iniciado, você poderá executar o script em /etc/rc.local . Aqui está o meu - ele aciona meu aplicativo de servidor de mídia chamando seu script de inicialização:

#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local

#NK make sure nas is mounted:
mount -a
/etc/init.d/serviiod start
    
por 16.05.2011 / 23:23
7

Existe um modelo de script de redação no site do Projeto Fedora.

Na mesma página, abaixo do modelo, estão instruções completas para escrever cabeçalhos para initscripts nos sistemas RedHat / Fedora / CentOS. Você pode precisar fazer isso se precisar garantir que o seu script seja executado depois que outros serviços forem iniciados, você deseja apenas que o script seja executado em determinadas circunstâncias ou queira que as ferramentas gráficas de administração do sistema exibam informações completas sobre o script.

    
por 16.05.2011 / 23:15
2

Coloque seu script, por exemplo (dctm, dctm_jms) no caminho /etc/init.d

chmod +x dctm
chmod +x dctm_jms
chkconfig --add dctm
chkconfig --add dctm_jms
chkconfig --level 345 dctm on
chkconfig --level 345 dctm_jms on
    
por 09.02.2015 / 14:37