débogage /etc/init.d les scripts de démarrage de Ubuntu
Ont personnalisé dropr message de la file d'attente pollers je suis en train de commencer par /etc/init.d dans ubuntu.
Tous les 3 scripts sont super-simple, revêtements et fonctionnent parfaitement via la ligne de commande, mais pour une raison quelconque, un seul d'entre eux fonctionne réellement lorsque le serveur démarre. Tous ont 775 permanentes, et cela fonctionne très bien:
sudo /etc/init.d/app-poller.sh
Voici un exemple de script (à exécuter en tant que www-data de l'utilisateur):
[/etc/init.d]$ cat /etc/init.d/app-poller.sh
#!/bin/sh
su - www-data -c "bash -c '/path/to/dropr-server/daemons/app-poller.php'"
J'ai couru supprimé /re-entré dans le fichier inittab entrées plusieurs fois via:
updates-rc.d -f app-poller.sh remove
updates-rc.d app-poller.sh defaults
rcconf script aussi dit que tout commence bien.
J'ai suivi toutes les instructions ici: http://jonathonhill.net/2009-04-23/auto-start-a-shell-script-on-ubuntu-server/ ici et ici: http://stringofthoughts.wordpress.com/2009/04/16/adding-removing-shell-scripts-ubuntu-810/
Et j'ai regardé pour la sortie dans tous les suspects habituels (/var/log/messages et /var/log/démons, etc)... toujours aucune idée.
Voudrais bien au moins avoir un aperçu de pourquoi c'est un échec. Quelqu'un sait qui logfiles je peut faire référence à voir ce qui ne va pas & pourquoi?
OriginalL'auteur rICh | 2011-11-01
Vous devez vous connecter pour publier un commentaire.
J'ai trouvé adjonction, près du haut de mon /etc/init.d/nomduscript était tout ce dont j'avais besoin:
OriginalL'auteur Chris Kerlin
Essayer d'appeler l'init-script tout en simulant le démarrage de l'environnement:
Ne ajouter un peu de la sortie de débogage de votre script si vous ne voyez pas toute sortie de la commande.
OriginalL'auteur Rias A. Sherzad
L'exécuter dans un sous-shell avec -x.
http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_02_03.html
OriginalL'auteur Grasshopper
Essayez de changer:
su - www-data -c "bash -c '/path/to/dropr-server/daemons/app-poller.php'"
:
/bin/su - www-data -c "/bin/bash -c '/path/to/dropr-server/daemons/app-poller.php'"
Au-delà de ce qui suggère à l'aide de
grep
dans le/var/log
répertoire de recherche pourdropr
, je ne sais pas quoi dire d'autre. Confirmer vials
que les liens symboliques nécessaires que vous attendez sont en fait créés pour votreS97
,S98
, etS99
scripts (et de même pour votreK
scripts) dans/etc/rc?.d/
répertoires...?OriginalL'auteur Mike