Linux démon de démarrage
j'ai écrit un service sur linux(Redhat Server Edition 5.1) . qui est lancé par shell scritpt,
Dans le cas lorsque je démarre mon application, j'ai démarrer manuellement mon service , maintenant, je veux commencer mon service au démarrage,par des moyens que je mets mon service sur init.d dossier par mon démon ne pas invoquer au moment du démarrage,aucune idée de comment démarrer un démon au moment du boot sur linux?
mon échantillon, mais ne fonctionne pas
#!/bin/sh
#
# myservice This shell script takes care of starting and stopping
# the <myservice>
#
# Source function library
. /etc/rc.d/init.d/functions
# Do preliminary checks here, if any
#### START of preliminary checks #########
##### END of preliminary checks #######
# Handle manual control parameters like start, stop, status, restart, etc.
case "$1" in
start)
# Start daemons.
echo -n $"Starting <myservice> daemon: "
echo
daemon <myservice>
echo
;;
stop)
# Stop daemons.
echo -n $"Shutting down <myservice>: "
killproc <myservice>
echo
# Do clean-up works here like removing pid files from /var/run, etc.
;;
status)
status <myservice>
;;
restart)
$0 stop
$0 start
;;
*)
echo $"Usage: $0 {start|stop|status|restart}"
exit 1
esac
exit 0
OriginalL'auteur Mr.Cool | 2012-08-01
Vous devez vous connecter pour publier un commentaire.
Mettre 2 commentaires dans votre script:
En tant que root, lancez :
Ces lignes vont dire chkconfig dans lequel le niveau d'exécution de votre script est censé fonctionner, et de démarrer et d'arrêter les priorités. Voir ceci : linux.die.net/man/8/chkconfig
si le service est déjà inscrit, vous devrez peut-être exécuter chkconfig --del my_service avant de faire le --ajouter
OriginalL'auteur Guillaume USE
une base unix démon est le suivant:
(exemple dans C: démon.c)
Red Hat exemple sur la façon d'installer les scripts de démarrage:
pour lancer un daemon au démarrage du système dans redhat vous avez besoin d'un script d'initialisation.
il doit être placé dans /etc/init.d
exemple de script d'initialisation :
Code:
la première ligne va dire chkconfig pour démarrer le démon en niveau d'exécution 3, avec en priorité 99 et de le tuer en priorité 1 lorsque le serveur se termine.
pour installer le script de démarrage, utilisez les éléments suivants: chkconfig --add ./scriptabove
Maintenant, il va commencer lorsque le serveur démarre.
pour commencer tout de suite utiliser: début du service de
Si vous voulez plus de détails, d'informations, visitez un lien
Espère que cela aide un peu!
OriginalL'auteur Sandy8086
Différentes distributions linux incluent différents services de gestion des installations. Vous devriez jeter un oeil à launchd, OpenRC (présent sur Gentoo) et SystemD (sur l'Arche, par exemple)
Espère que cela aide 🙂
Pinailler: C'est “systemd” (pas de majuscule), comme indiqué sur la page que vous avez lié à :). Aussi, systemd est livré avec Fedora, Arch, Mageia, Mandriva, openSUSE, Chakra, NixOS et de Frugalware. Il est disponible (mais pas le système d'init par défaut) sur Debian et Gentoo. launchd semble toutefois être utilisé que sur Mac OS X, voir aussi en.wikipedia.org/wiki/Launchd
OriginalL'auteur qdii
chkconfig --add votre_service
OriginalL'auteur keltar