Tengo instalado mysql (desde repositorios) en una máquina de desarrollo (computadora portátil) y no necesito que se ejecute el demonio en cada arranque. Copié /etc/init/mysql.conf en /etc/init/mysql.conf.old y luego eliminé todo siguiendo la línea "inicio en". Sin embargo, al reiniciar, ya no puedo iniciar mysqld a través del arranque:
$ sudo service mysql start
start: Unknown job: mysql
Esto también falla (intentando algo en este momento):
$ sudo service mysql restart
stop: Unknown job: mysql
start: Unknown job: mysql
Este es mi script de inicio:
# /etc/init/mysql.conf
....
start on
stop on starting rc RUNLEVEL=[016]
Este es el guión predeterminado:
# /etc/init/mysql.conf.old
....
start on runlevel [2345]
stop on starting rc RUNLEVEL=[016]
Todo lo que he leído hasta ahora sugiere que así es como se puede evitar que los servicios se inicien en el momento del arranque. ¿Hay una mejor manera de hacer esto o cometí un error en el script inicial?
ACTUALIZACIÓN : moví el archivo de configuración de copia de seguridad de / etc / init y lo reinicié pensando que tal vez hubo un conflicto, pero aún así diceUnknown job: mysql
Respuestas:
Si está en Ubuntu 11.04 o posterior, puede usar la
manual
palabra clave y los archivos .override en / etc / init para deshabilitar el inicio automático:manual
elimina efectivamente lastart on
estrofa de la configuración del trabajo.Si estás en Ubuntu 10.04, puedes hacer esto:
El último
start on
en el archivo anulará los anteriores, por lo que esto debería funcionar, aunque se supone que no se llama a ningún eventonever
.fuente
De esta publicación: La sección "inicio" debe ser completa y correcta en sintaxis.
Esta línea significa ejecutar cuando el nivel de ejecución no está en [0,1,2,3,4,5,6] (esos son los únicos niveles de ejecución, por lo que nunca se ejecuta).
Otra opción es usar
chkconfig
según esta publicación.fuente