OVH Cloud OVH Cloud

création d'un demon en php

1 réponse
Avatar
Etienne SOBOLE
Salut

J'ai un script php qui tourne a l'infini (avec un sleep au milieu pour qu'il
ne prenne pas tout le temps cpu)
j'aimerai savoir comment je fais pour le lancer afin qu'il s'execute des le
démarrage.

j'ai ecris un petit script genre

#! /bin/sh

CHKMD=/opt/monscript.php
case "$1" in
start)
$CHKMD
;;
stop)
kill `cat $CHKMD`
;;
reload)
kill -HUP `cat $CHKMD`
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: /etc/init.d/monscript {start|stop|restart}"
exit 1
;;
esac
exit 0

mais comment je le lance a présent.
parce que si je fais un simple

/etc/init.d/monscript start
le process s'arrete lorsque je ferme la connexion ssh...

sinon j'avais dans l'idee de la mettre dans
/ect/inittab avec une ligne genre

ph:2345:respawn:/opt/monscript.php

est ce que c'est une bonne idée?
merci.
a+

Etienne

1 réponse

Avatar
Basile Starynkevitch [news]
Le 12-08-2004, Etienne SOBOLE a écrit :

J'ai un script php qui tourne a l'infini (avec un sleep au milieu
pour qu'il ne prenne pas tout le temps cpu)


A mon avis, Php n'est vraiment pas fait pour écrire un démon.

j'aimerai savoir comment je fais pour le lancer afin qu'il s'execute des le
démarrage.


Utiliser la commande daemon - faite pour ça. Je propose le script
suivant que je n'ai pas testé!


#! /bin/sh
CHKMD=/opt/monscript.php
case "$1" in
start)
daemon -X monscript $CHKMD
;;
stop)
daemon -X monscript --stop
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: /etc/init.d/monscript {start|stop|restart}"
exit 1
;;
esac
exit 0


Par curiosité, que fait ce script en php?

--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net
aliases: basile<at>tunes<dot>org = bstarynk<at>nerim<dot>net
8, rue de la Faïencerie, 92340 Bourg La Reine, France