Información blog

Linux, tutoriales, noticias, sistemas, redes y seguridad informática, entre otras cosas.

domingo, 12 de abril de 2015

Los niveles de ejecución

Los niveles de ejecución, más conocidos cómo runlevel, son los modos en los que se ejecutan los sistemas operativos basados en la tecnología Linux/Unix. Los niveles de ejecución son representados numéricamente y oscilan entre el nivel 0 y el nivel 6, representando diferentes modos dependiendo del nivel en cuestión. Cada nivel representaría lo siguiente:

     0.  Alto: El sistema operativo se cierra o se apaga.
    1.  Monousuario: En este modo no arrancan ni las tarjetas de red ni los servicios. Además no te permite conectar ningún otro usuario que no sea root. Este modo es habitualmente usado para depurar fallos. Se podría considerar este modo cómo el de aprueba de fallos
     2.  Multiusuario: Se trata del modo usado por defecto que te arranca el sistema de forma normal.
     3-5. Multiusuario: Exactamente igual que el runlevel 2.
     6. Reinicio del sistema: Eso significa que cuando el sistema operativo recibe la señal de reinicio, entra en el modo 6, ejecutando las acciones pertinentes a dicho modo.

El runlevel que se ejecuta por defecto al arrancar el sistema es establecido en el fichero /etc/inittab. Dicho valor queda representado en el fichero tal que así:


Lo más normal es mantener dicho valor tal y cómo está, aunque en caso de tener muchos problemas es recomendable cambiarlo al runlevel 1 para poder buscar cual puede ser la causa de éstos. Otra opción para saber en que runlevel nos encontramos es mediante los comandos who -r o runlevel. Ambos muestran el runlevel actual y pueden servir de ayuda para saber en qué modo se encuentra el sistema operativo en estos momentos.


Otro factor importante del nivel de ejecución es el control de los servicios que se arrancan dependiendo del nivel en cuestión. Estas decisiones se toman en ficheros denominados rc, y van seguidos de un número que indica en nivel (rc0,rc1,rc2...).

Para incluir dichos servicios en los diferentes niveles, se requiere el uso de update-rc.d o insserv. Para el uso de insserv se requiere el script de arranque alojado en /etc/init.d/ contenga el standard LSB explicado aquí. Con el LSB bien cumplimentado sólo habría que escribir insserv ${servicio}. Con update-rc.d en cambio habría que hacer:


  1. update-rc.d ${servicio} start ${orden_arranque} 2 3 4 5 . stop ${orden_parada} 0 1 6 .


No hay comentarios :

Publicar un comentario