J'ai installé mysql (à partir de repos) sur une machine de développement (ordinateur portable) et je n'ai pas besoin que le démon s'exécute à chaque démarrage. J'ai copié /etc/init/mysql.conf dans /etc/init/mysql.conf.old, puis supprimé tout ce qui suit la ligne "start on". Cependant, au redémarrage, je ne peux plus démarrer mysqld via upstart:
$ sudo service mysql start
start: Unknown job: mysql
Cela échoue également (essayer quoi que ce soit à ce stade):
$ sudo service mysql restart
stop: Unknown job: mysql
start: Unknown job: mysql
Voici mon script parvenu:
# /etc/init/mysql.conf
....
start on
stop on starting rc RUNLEVEL=[016]
Voici le script par défaut:
# /etc/init/mysql.conf.old
....
start on runlevel [2345]
stop on starting rc RUNLEVEL=[016]
Tout ce que j'ai lu jusqu'à présent suggère que c'est ainsi que les services peuvent être empêchés de démarrer au démarrage. Y a-t-il une meilleure façon de le faire ou ai-je fait une erreur dans le script parvenu?
MISE À JOUR : J'ai déplacé le fichier de configuration de sauvegarde hors de / etc / init et redémarré en pensant qu'il y avait peut-être un conflit, mais le début indique toujoursUnknown job: mysql
Réponses:
Si vous utilisez Ubuntu 11.04 ou une version ultérieure, vous pouvez utiliser le
manual
mot clé et les fichiers .override dans / etc / init pour désactiver le démarrage automatique:manual
supprime efficacement lastart on
strophe de la configuration du travail.Si vous utilisez Ubuntu 10.04, vous pouvez le faire:
Le dernier
start on
du fichier remplacera tous les précédents, donc cela devrait fonctionner, même s'il suppose qu'aucun événement n'est appelénever
.la source
De ce post: La section "start on" doit être complète et correcte dans la syntaxe.
Cette ligne signifie exécuter lorsque le niveau d'exécution n'est pas dans [0,1,2,3,4,5,6] (ce sont les seuls niveaux d'exécution, donc ce n'est jamais exécuté).
Une autre option utilise
chkconfig
selon ce post.la source