Tengo un servicio foo
que actualmente comienza en el nivel de ejecución 3 y superior. ¿Cómo puedo evitar que lo haga, sin usar update-rc.d foo stop 3 .
, que (si lo entiendo correctamente) apagaría el servicio en cada cambio de nivel de ejecución?
(es decir, si estaba en el nivel de ejecución 1 y habilitado foo
, cuando cambié al nivel de ejecución 3 estaría deshabilitado, ¿no?)
Ejecutando Debian GNU / Linux Lenny.
sudo update-rc.d -f sunrpc remove
No funciona; sigue presente después de un reinicio.ls /etc/rc*.d
16.04
update-rc.d apache2 disable
Configure las aplicaciones de inicio de Linux con sysv-rc-conf :
Como otros han señalado, aquí también está update-rc.d para la línea cmd.
Por ejemplo, ejecutar
para deshabilitar apache2 de todos los niveles de ejecución.
fuente
service foo stop
o reiniciar el servidorCorto:
No hay una forma confiable de hacer esto rápidamente.
Largo:
Debian actual (Debian inestable a partir del 2012-06-01) actualmente no tiene una forma confiable de deshabilitar consistentemente un servicio / demonio. - Debido a que una actualización de un paquete daemon ejecuta incondicionalmente "/etc/init.d/package restart", deshabilitándolo para este nivel de ejecución o no.
Para asegurarte de que un demonio no comience, puedes:
Hay / hubo (?) Algún paso init-policy-something para los scripts de inicio en Debian, que se suponía que llenaba esta funcionalidad faltante. - Intenté usarlo, lo encontré complicado, encontré un error y nunca lo volví a tocar.
Actualizar:
Cambie a "systemd", una alternativa a "initd". Existe un paquete debian, y puede deshabilitar un servicio con algo como esto:
fuente
unlink xyz.service
también?systemd
. - Entonces el enlace le dice que no los busque./etc/default/xyz
archivo para agregar un archivoexit
no impedirá que el empaquetador sobrescriba el archivo con la versión correcta en la próxima actualización. (El paquete guarda los archivos de configuración y, en la mayoría de los casos, los scripts de inicio no se ven como tales). Por lo tanto, en la mayoría de los casos eso no ayudaría.Ejecute este comando
apt-get install rcconf
Una vez instalado, ejecute rcconf en SSH y recibirá un cuadro de diálogo que muestra todos los servicios configurados para ejecutarse en el arranque. Seleccione los que están presionando la barra espaciadora para deshabilitar / habilitar el particular y listo, simplemente haga clic en Aceptar y ese servicio no se molestará en comenzar de nuevo en el próximo arranque. Estar usando esto por años. Herramienta muy útil para usuarios de Debian / Ubuntu como yo.
fuente
Estoy confundido con lo que intentas lograr.
¿En qué niveles de carrera quieres correr?
Si siempre quieres que se ejecute, usa
update-rc.d foo defaults
; eso lo detendrá en 0, 1 y 6, mientras lo deja en ejecución en 2, 3, 4 y 5. (1 no debe ejecutar nada más que un shell, 0 y 6 se detienen y reinician)Si desea especificar exactamente en qué niveles de ejecución ejecutar:
fuente
Creo que esto haría el trabajo: insserv -r foo
fuente
Comience a usar insserv de Debian7
Salida de todos los servicios e información de nivel de ejecución
Eliminar los scripts listados de todos los niveles de ejecución
fuente
Ubuntu Bootup Manager es una especie de sysv-rc-conf light , una versión GUI más amigable, y mucha gente que lea este hilo lo apreciará.
http://www.marzocca.net/linux/bum.html
fuente
En un sistema basado en Red Hat podría usar
eliminar el servidor de los niveles de ejecución
en el sistema basado en Debian, se supone que todos los servicios deben iniciarse mediante los archivos que se encuentran en los directorios /etc/rc?.d/, estos archivos tienen un enlace simbólico a los archivos correspondientes en el directorio /etc/init.d/. Si desea que un servicio no se inicie de manera predeterminada, puede cambiarle el nombre / eliminarlo del directorio /etc/rc?.d y su cambio se conservará en la actualización del paquete siempre que uno de los enlaces de inicio siga apareciendo en uno de los otros directorios (3,4 y 5). O puede usar el comando update-rc.d para cambiar los enlaces y, si desea iniciar el servicio después, puede usar /etc/init.d/service_name start si deja el inicio al final. darle las opciones que se pueden usar como detener, reiniciar, recargar ...
Sin embargo, creo que puedes usar sysv-rc-conf para deshabilitarlo.
fuente
Si desea especificar niveles de ejecución.
Recuerde cambiar el servicio al nombre del programa.
fuente
¿Por qué no hace una copia de seguridad del script de inicio en otro lugar y lo elimina en /etc/init.d/? Si la actualización-rc.d no funciona.
fuente