Control de Servicios en Debian


Para comenzar los servicios en debian están en esta dirección /etc/init.d/ que contiene enlaces simbólicos a los servicios reales y que arrancan con niveles de ejecución en el inicio de debian.
Cuando agregamos un servicio ya sea de forma manual o hasta un servicio personalizado que queremos que arranque con debian después de crear su enlace simbólico o copiar su archivo script personalizado en /etc/init.d/ lo debemos iniciar y agregar a la carga de Linux, bien suponiendo queremos iniciar apache:
Iniciando Apache
update-rc.d servicio defaults
Iniciando un script.sh creado por nosotros
update-rc.d script.sh defaults

El inicio de los servicios están en la zona Inicialización (Init).
Ahora hay niveles de ejecución lo correcto es que si asignamos un nivel de ejecución de inicio sea 20 y un nivel de ejecución terminal de 80 dependiendo de nuestra prioridad así iniciara el servicio una prioridad mas alta dará como resulta el inicio mas rápido si hay varios procesos en la misma prioridad los iniciara de forma ordenada por su nombre, veamos los siguientes ejemplos:
update-rc.d servicio defaults 20/etc/rc0.dd/K20servicio -> ../init.d/servicio/etc/rc1.dd/K20servicio -> ../init.d/servicio/etc/rc6.dd/K20servicio -> ../init.d/servicio/etc/rc2.dd/S20servicio -> ../init.d/servicio/etc/rc3.dd/S20servicio -> ../init.d/servicio/etc/rc4.dd/S20servicio -> ../init.d/servicio/etc/rc5.dd/S20servicio -> ../init.d/servicio
Inicia el servicio con un nivel de prioridad 20 para inicio y para terminar el servicio.
Ahora eso es cuando queremos inicie con un nivel de 20 y termine con el mismo nivel si queremos que el proceso sea de los primeros en terminar seria así:
update-rc.d servicio defaults 20 80/etc/rc0.dd/K80servicio -> ../init.d/servicio/etc/rc1.dd/K80servicio -> ../init.d/servicio/etc/rc6.dd/K80servicio -> ../init.d/servicio/etc/rc2.dd/S20servicio -> ../init.d/servicio/etc/rc3.dd/S20servicio -> ../init.d/servicio/etc/rc4.dd/S20servicio -> ../init.d/servicio/etc/rc5.dd/S20servicio -> ../init.d/servicio
Ahora los niveles de ejecucion si notan el resultado de update-rc.d muestra 7 distintos niveles rc (0,1,2,3,4,5,6) de ejecucion, acontinuacion su explicación:
0 Halt – Apaga el sistema1 Single-User Mode – sin red, daemons ni usuarios no-root2 Multi-User Mode – sin red ni daemons3 Multi-User Mode with Networking – Inicio normal4 No utilizado5 X11 – Inicia la interfaz gráfica6 Reboot – Reinicia el sistema.
Bien ahora que ya saben cada uno de sus niveles ya no usaremos update-rc.d defaults ahora una prueba con update-rc.d start:
update-rc.d servicio start PrioridadNiveles stop PrioridadNiveles
Por ejemplo ya sabemos que en los niveles 0,1,6 se debe detener el servicio:
update-rc.d servicio start 20 2 3 4 5 . stop 80 0 1 6 .
Explicación:
Que pasa con el nivel de inicio dice que se iniciara en 4 niveles según la tabla seria en:
2 Multi-User Mode – sin red ni daemons3 Multi-User Mode with Networking – Inicio normal4 No utilizado5 X11 – Inicia la interfaz gráfica
Y se detendrá estos niveles:
0 Halt – Apaga el sistema1 Single-User Mode – sin red, daemons ni usuarios no-root6 Reboot – Reinicia el sistema.
Creo que queda claro cuando y por que se inicia y detiene un servicio.
Esto quiere decir que el parámetro update-rc.d start|Stop le podemos especificar mejor el inicio y cuando se detendrá un servicio según su nivel de ejecución.
Ahora en uno de mis post escribí sobre rcconf que sirve para manejar si iniciar o no iniciar un o varios servicios:

Pero voy a poner 2 herramientas mas que son mas especificas
apt-get install chkconfig 
Este nos muestra la lista de procesos que se inician aqui una imagen:



El otro paquete es sysv-rc-conf
apt-get install sysv-rc-conf Este nos muestra los procesos de inicio y su nivel de actividad podran notar que los servicio que se inician en los niveles de 0,1,6 son los que apagan el sistema aqui una imagen:

Manejo de servicios a nivel de ejecución


En cualquier momento podremos si necesitamos iniciar, detener, reiniciar o recargar un servicio
Iniciar el servicio:  /etc/init.d/servicio start
Detiene el servicio: /etc/init.d/servicio stop
Reinicia el servicio: /etc/init.d/servicio restart
Recarga la configuracion del servicio: /etc/init.d/servicio reload
Recarga forzada del servicio:  /etc/init.d/servicio force-reload
Para que ste blog siga creciendo:


Visitenos en:

Instagram