Remover serviços do upstart

9

Eu tenho o mysql instalado (a partir de repositórios) em uma máquina de desenvolvimento (laptop) e não preciso do daemon em execução em cada inicialização. Eu copiei /etc/init/mysql.conf para /etc/init/mysql.conf.old e, em seguida, removi tudo seguindo a linha "start on". 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 ponto):

$ 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 que li até agora sugere que é assim que os serviços podem ser impedidos de iniciar na inicialização. Existe uma maneira melhor de fazer isso ou cometi um erro no script inicial?

UPDATE : movi o arquivo conf de backup para fora do / etc / init e reiniciei pensando que talvez houvesse um conflito, mas o upstart ainda diz Unknown job: mysql

    
por xst 04.08.2012 / 06:35

2 respostas

17

Se você estiver no Ubuntu 11.04 ou posterior, você pode usar os arquivos manual keyword e .override em / etc / init para desativar a inicialização automática:

sudo sh -c 'echo manual >> /etc/init/mysql.override'

manual efetivamente remove a sub-rotina start on da configuração da tarefa.

Se você está no Ubuntu 10.04, você pode fazer isso:

sudo sh -c 'echo start on never >> /etc/init/mysql.conf'

O último start on no arquivo substituirá os anteriores, portanto, isso deve funcionar, embora presuma que não há nenhum evento chamado never .

    
por SpamapS 05.08.2012 / 16:35
0

De esta postagem : A seção "iniciar em" precisa estar completa e correta na sintaxe.

start on runlevel [!0123456]

Esta 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 é usar chkconfig conforme este post.

    
por xst 05.08.2012 / 02:57

Tags