web-dev-qa-db-fra.com

Comment puis-je configurer un service?

J'ai un script que j'aimerais exécuter en tant que service sur ma boîte sans tête Ubuntu Server 11.04. C'est-à-dire que je veux avoir les fichiers corrects sous / etc/init.d / et pouvoir le contrôler via la commande service.

Existe-t-il un guide disponible qui me montre comment faire cela?

19
Kent Boogaart

Sauf si vous utilisez 15.04 ou une version ultérieure (qui utilise systemd), vous serez probablement mieux loti si vous transformez votre script en travail Upstart plutôt que de suivre les exemples que vous trouverez dans /etc/init.d/ (qui sont des init scripts, qu'Ubuntu et les autres distributions s'éloignent).

Le pstart Cookbook contient une quantité énorme d'informations sur le fonctionnement des travaux Upstart. Bien que je ne décrirais pas cela comme un HOWTO, si vous combinez les informations là-bas avec une recherche dans les tâches courantes d'Ubuntu Upstart dans /etc/init/, vous commencerez à obtenir l'image.

Je suggère de commencer par les sections 4 et 5 du livre de recettes, "Concepts et terminologie" et "Configuration"

14
Mark Russell

Voici un exemple très simple pour créer un script de mise à jour: https://wiki.frugalware.org/index.php/Upstart_Job_HOWTO

UPDATE: le lien ci-dessus est cassé. Voici un exemple de script:

description "My startup service"
author "You or someone else"
version "3.14"

pre-start script
    echo 'Starting my service ...'
end script

start on net-device-up
stop on runlevel [!2345]

console output

respawn

exec /path/to/your/custom/script

Adapter au besoin.

Vous devez placer le script dans /etc/init/yourfilename.conf

Rechargez ensuite la configuration avec:

Sudo initctl reload-configuration

Et si tout va bien, vous devriez pouvoir commencer avec:

Sudo start yourfilename
10
lenooh