J'ai eu un problème où faire un script parvenu à l'appel appelait le script plusieurs fois, provoquant l'apparition de mon IRCd environ 8 fois. Afin de rectifier cela, j'ai utilisé le démon start-stop:
description "IRC Daemon Upstart Script"
start on startup
start on runlevel [2345]
stop on runlevel [016]
respawn
nice -5
exec start-stop-daemon --start --chuid ircuser --chdir /home/ircuser/inspircd/run --exec /home/ircuser/inspircd/run/bin/inspircd -- --config=/home/ircuser/inspircd/run/conf/inspircd.conf
Cela fonctionne exactement comme je le veux, SAUF que:
stop ircd
dit qu'il l'arrête, mais inspircd fonctionne toujours après.
Existe-t-il un meilleur moyen que d'utiliser start-stop-daemon qui empêchera le script d'ouvrir 8 instances, ou existe-t-il un moyen de le rendre compatible avec le start-stop-daemon?
expect fork
résolu le problème. Cependant, je ne peux toujours pas appeler «stop ircd» et faire arrêter le script. Cependant, je vais m'en passer (ps aux, tuer), mais si vous pouvez modifier votre réponse pour inclure un moyen de le faire, je serai un utilisateur Ubuntu très heureux;)