Eu tenho o mysql instalado (a partir de repositórios) em uma máquina de desenvolvimento (laptop) e não preciso do daemon em cada inicialização. Copiei o /etc/init/mysql.conf para /etc/init/mysql.conf.old e depois removi tudo seguindo a linha "iniciar". No entanto, após a reinicialização, não consigo mais iniciar o mysqld por meio do upstart:
$ sudo service mysql start
start: Unknown job: mysql
Isso também falha (tentando qualquer coisa neste momento):
$ sudo service mysql restart
stop: Unknown job: mysql
start: Unknown job: mysql
Este é o meu script inicial:
# /etc/init/mysql.conf
....
start on
stop on starting rc RUNLEVEL=[016]
Este é o script padrão:
# /etc/init/mysql.conf.old
....
start on runlevel [2345]
stop on starting rc RUNLEVEL=[016]
Tudo o que li até agora sugere que é assim que os serviços podem ser impedidos de iniciar no momento da inicialização. Existe uma maneira melhor de fazer isso ou cometi um erro no script inicial?
UPDATE : Mudei o arquivo conf de backup para / etc / init e reiniciei pensando que talvez houvesse um conflito, mas o iniciante ainda dizUnknown job: mysql
Respostas:
Se você estiver no Ubuntu 11.04 ou posterior, poderá usar a
manual
palavra - chave e os arquivos .override em / etc / init para desativar a inicialização automática:manual
remove efetivamente astart on
estrofe da configuração da tarefa.Se você estiver no Ubuntu 10.04, pode fazer o seguinte:
O último
start on
no arquivo substituirá os anteriores, portanto, isso deve funcionar, embora assuma que não há nenhum evento chamadonever
.fonte
A partir deste post: O "iniciar em" necessidades de seção para ser completa e correta na sintaxe.
Essa linha significa executar quando o nível de execução não está em [0,1,2,3,4,5,6] (esses são os únicos níveis de execução, portanto, isso nunca é executado).
Outra opção está usando
chkconfig
conforme este post.fonte