web-dev-qa-db-fra.com

Comment changer l'ordre d'exécution des services au démarrage?

J'ai quelques services dans mon dossier init.d pour par exemple hdfs, zookeeper, elasticsearch, hbase et ainsi de suite.

Maintenant, j'ai ajouté tous ces services au démarrage en exécutant la commande update-rc.d 'service' defaults. Comme nous le savons, hbase ne peut pas fonctionner si hdfs et zookeeper ne sont pas démarrés. Donc, je veux commencer hdfs en premier, puis zookeeper et enfin hbase.

comment puis-je faire cela?

2
Punit Naik

update-rc.d (8) active ou désactive les services, tandis que la commande de services est gérée par insserv (8) et peut être personnalisée en modifiant l'en-tête LSB du service et en définissant/ajoutant:

Required-Start: $all

Dans les versions les plus anciennes, je peux faire quelque chose comme ceci pour déterminer l'ordre:

update-rc.d myservice start 95 2 3 4 5 . stop 70 0 1 6 .

Mais après Ubuntu 14, j'ai essayé cette Ubuntu 16.04 (4.4.0-31-generic):

update-rc.d myservice defaults 95 70

Et ne fonctionne pas, crée toujours l'ordre défini dans l'en-tête:

 Sudo find /etc/ -name ???myservice | sort
/etc/rc0.d/K01myservice
/etc/rc1.d/K01myservice
/etc/rc2.d/S03myservice
/etc/rc3.d/S03myservice
/etc/rc4.d/S03myservice
/etc/rc5.d/S03myservice
/etc/rc6.d/K01myservice

Aussi al essayer:

update-rc.d myservice defaults any_text_wath_you_want lalala

Ands semble ignorer tout le texte après "par défaut". Je ne sais pas ce qui se passera lors de ma commande d’installation, je ne pense pas que les commandes aient déjà été installées.

3
Federico Firenze