[FUG-BR] Script perl em daemon.

Tiago N. Sampaio tiago em codigobinario.com.br
Terça Novembro 7 12:20:45 BRST 2006


No inicio do seu script, via funcao interna do perl (em C seria getpid() 
), identifique o pid que o processo pegou,
veja se não existe o arquivo /var/run/nomedoseuperl.pid, se existir é pq 
ele já está rodando
se não existir, crie esse arquivo contendo apenas o pid do seu processo.


Assim quando ele der o cat, vai ter o numero do pid, no qual ele pode 
dar um kill :)

Abraços
Tiago N. Sampaio

Rodrigo Salvador wrote:
> Eu tenho um script em Perl e preciso colocar ele para rodar como Daemon.
> Ok, até ae basta eu chamar "./script.pl &" e tudo funciona perfeito.
> Mas além disso eu gostaria de colocá-lo na inicialização do sistema.
> Para isso eu encontrei em
> http://doc.fug.com.br/doc/pt_BR.ISO8859-1/books/handbook/configtuning-starting-services.html 
>
>
>
> uma solução, criando o shell script que inicializa e interrompe a
> execução do daemon.
>
> Um exemplo do shell script:
>
> #!/bin/sh
> echo -n ' MeuScript'
>
> case "$1" in
> start)
>     /usr/local/bin/script.pl &
>     ;;
> stop)
>     kill -9 `cat /var/run/foobar.pid`	<<==== COMO IDENTIFICAR E MATAR O
> SCRIPT EM PERL ??!!
>     ;;
> *)
>     echo "Usage: `basename $0` {start|stop}" >&2
>     exit 64
>     ;;
> esac
>
> exit 0
>
>
>
> A minha dúvida fica no 'stop'. Como eu consigo identificar e matar o
> processo do meu script ?
> Alguém tem alguma sugestão ?
>
> Rodrigo Salvador
> rodrigo at allnet.com.br
>
>
>
>
>
>
>
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>   


-- 
+------------------------------------------------------+
| Tiago N. Sampaio   | tiago at codigobinario.com.br      |
| CodigoBinario      | http://www.codigobinario.com.br |
| The UNIX is a true legend, linux is big bull shit!   |
+------------------------------------------------------+



Mais detalhes sobre a lista de discussão freebsd