web-dev-qa-db-fra.com

Qu'est-ce que start_daemon?

J'essaie de comprendre start_daemon dans le script de démarrage suivant /etc/init.d/nagios-nrpe-server:

  start)
        if [ "$INETD" = 1 ]; then
                exit 1
        fi
        log_daemon_msg "Starting $DESC" "$NAME"
        start_daemon -p $PIDDIR/nrpe.pid $NICENESS $DAEMON  -c $CONFIG -d $DAEMON_OPTS
        log_end_msg $?
        ;;

En particulier, lorsque je lance ce service, le fichier PID n’écrit pas comme prévu. La commande stop service nagios-nrpe-server ne fonctionne donc pas (je dois supprimer manuellement les processus).

J'essaie de voir comment résoudre le problème, mais je ne peux pas exécuter start_daemon ... à partir de la ligne de commande.

Je veux reproduire ce que le script fait manuellement pour pouvoir travailler sur le problème.

5
David Parks

C'est une fonction Shell dans /lib/lsb/init-functions. Vous devriez voir . /lib/lsb/init-functions plus tôt dans le script init.

6
tumbleweed

Cela ressemble à l'appel de fonction dans le script Shell.

Vérifiez le manuel bash (man bash) et recherchez "Définition de la fonction shell" (commande /).

0
lgarzo