Je crée mon premier script d'initialisation sur CentOS 7. Et je veux exécuter un processus en tant que deamon sur ce script, et essayer d'utiliser la fonction démon de/etc/Fichier init.d/functions, mais lorsque j'inclus ce script, l'exécution s'arrête.Le script Bash s'arrête après avoir inclus /etc/init.d/functions
mon fichier créé Supposons est "/etc/init.d/UpdateScript" Si j'écris:
echo "Script start"
. /etc/init.d/functions
echo "After add functions"
Ainsi, après commande: /etc/init.d/UpdateScript commencer
I avoir seulement "Script start" en sortie. Mais si je commente "#. /etc/init.d/functions", j'ai aussi "After add functions" mais bien sûr "daemon: command not found". Quelle est la raison de ce comportement étrange? Comment le réparer?
Essayez 'set -x' pour voir où'/etc/init.d/functions' se termine. –
'/ etc/init.d' est obsolète dans CentOS 7 avec le passage à systemd. Essayez d'utiliser '/ lib/lsb/init-functions' pour une alternative plus portable. Vous devrez installer le paquet 'redhat-lsb-core' si vous ne l'avez pas déjà. Mieux encore, écrivez un fichier systemd '.service' au lieu d'un script de démarrage init.d-style. –
Utilisez-vous 'set -e' dans votre script? –