Analizando y configurando el modo de inicio en Debian
Vamos a empezar con el funcionamiento del arranque de nuestro Debian, y para esto es importante saber que existen diferentes niveles de ejecución y cada uno de estos levanta ó finaliza procesos, estos se ejecutan a través del proceso padre mas conocido como init, cuyo archivo de configuración se encuentra en /etc/inittab y en este a su vez indica que él es el primero en ejecutarse a través del script /etc/init.d/rcS el cual analizaremos mas adelante.
Por ahora volviendo al tema de los diferentes niveles de ejecución a continuación encontrareis una tabla con una pequeña descripción de cada uno.
Nivel 0
Se le conoce como Halt (detenido) y se utiliza para detener de forma segura todos los procesos, empezando por el proceso padre (init) quien a su vez envía una interrupción para el detenido completo del sistema y consecuente apagado del equipo.
Nivel 1
Se le conoce como Single User Mode (usuario único) y habilita una única terminal para root (Super Usuario) y el resto de los usuarios quedan durante esta sesión “deslogueados” una de las características de este nivel es que no tiene acceso a red. Normalmente se utiliza para realizar mantenimiento seguro del sistema.
Nivel 2
Este nivel permite el trabajo en modo multiusuario, y al igual que en el nivel 1 no se inician los servicios de red como internet, pero si permite la compartición de datos mediante NFS. Ademas nivel por defecto en Debian
Nivel 3
Este nivel al igual que el nivel 2 es multiusuario, con la ventaja de que levanta servicios de red completo. Pero sin entorno gráfico, y es muy usado para servidores ya que evita la carga de aplicaciones que consumen recursos y como es bien sabido la utilización de diferentes aplicaciones gráficas deja al descubierto algunos detalles de seguridad.
Nivel 4
Bueno de este lo mas que encontré es que no se usa normalmente pero si puede utilizarse creando en este un inicio personalizado.
Nivel 5
Es como el nivel 3, trabaja en modo multiusuario, pero agrega el Gestor de Ventanas (X System) lo que significa que soporta entornos gráficos. Ideal para escritorio.
Nivel 6
Mas conocido en el bajo mundo como Reboot y en general reinicia la máquina de forma segura.
Reboot. Y al igual que el nivel 1 envía una interrupción al proceso padre para el reinicio de este.
Otros Niveles
También se puede trabajar con niveles personalizados con los números 7, 8 y 9. El único detalle es que su rc no se va llenando a medida que son instalados los paquetes en nuestro sistema.
Por otra parte cuando ya se ha “elegido” el modo de inicio (Niveles 2 – 5) se cargaran los correspondientes script almacenados en /etc/rcX.d (X = Nivel de ejecucion) y viene un juego de detención o inicio de servicios que es dado por defecto al inicio, y puesto que cada script tiene dentro de su nombre una acción de cierta forma “implícita” de acuerdo al valor S (strat) ó K (stop) los cuales van acompañados de un numero que indica el posición en la cual sera ejecutado. Es importante recordar que estos script contienen enlaces simbólicos a que apuntan a /etc/init.d/ que es donde se encuentran ubicados sus acciones reales por así decirlo. Estos servicios después de haberse levantado o detenido según el caso siguen recibiendo las acciones de start o stop, además de restart y force-reload, los cuales tiene la función de reiniciar el correspondiente servicio o forzar a que se carguen nuevamente los archivos de configuración, finalmente podemos usar status para saber el correspondiente estado del servicio.
Si realizamos un pequeño análisis acerca de los servicios que se levantan o detienen en cada uno de los niveles de ejecución podemos realizar una configuración mucho mas limpia simplemente eliminando el enlace que levanta dicho servicio por medio del comando:
update-rc.d -f nombre_script removeY wuala! Un sistema un poco mas liviano ;)
Por el contrario si lo que deseamos es iniciar un servicio lo hacemos por medio del siguiente comando:
update-rc.d nombre_script start 20 1 2 3 . stop 20 4 5 .Nota: En este caso levantamos nombre_script en los niveles 1, 2, 3 y lo detenemos para los niveles 4, 5 y numero 20 es la prioridad de ejecución del script, en este caso normal.
Un comando de ayuda podría ser: ls -l /etc/rcX.d/ con el cual listamos todos los script que se encuentran dentro de cada uno de los niveles.
También en el caso de desear cambiar el modo de arranque predeterminado podemos hacerlo editando la linea:
id:X:initdefault: Nota: X corresponde al nivel de inicio que deseamos escojer
de el archivo de configuración /etc/inittab