Como arranca Linux explicado paso a paso

Como arranca Linux explicado paso a paso.

Al pulsar el botón de encendido del sistema nos aparece la pantalla de inicio, después la sesión comienza a funcionar.

Desde la primera pantalla que vemos, hasta que inicia la sesión de nuestro linux, existe un proceso de arranque dividido por etapas que seguro muchas veces te has preguntado, ¿como arranca linux?.

Este articulo se crea a raíz de una duda que asalta a un fiel lector de «sololinux.es«, y una vez lanzados los artículos sobre la jerarquía y el grub, este viene como anillo al dedo.

El proceso de arranque de un sistema linux consta de seis etapas, las enumeramos:

  1. BIOS: Sistema básico de configuración. La bios inicia MBR.
  2. MBR: Registro de arranque maestro que inicia el Grub.
  3. GRUB: Cargador de arranque que ejecuta el Kernel.
  4. Kernel: Inicia el /sbin/init.
  5. Init: Lanza los programas de Runlevel.
  6. RunLevel: Aquí encontramos las aplicaciones por nivel de ejecución (la ruta puede variar, pero normalmente » /etc/rc.d/rc*.d/».

Procedemos a conocer las etapas del proceso de arranque.

 

Como arranca Linux explicado paso a paso

1- BIOS:

Bios es el sistema básico de entrada-salida o BIOS (Basic Input/Output System). Su misión es buscar el cargador de arranque y ejecutarlo.

Cuando localiza el cargador de arranque, lo traspasa a la memoria y le da el control. Entonces se inicia y ejecuta el cargador de arranque MBR.

2- MBR:

El MBR (Master Boot Record) lo encontramos en el primer sector de la unidad de arranque. Normalmente en /dev/sda o /dev/had.

Consta de tres partes que se reparten sobre un tamaño total de 512 bytes.

  • En los primeros 446 bytes se guarda la información del cargador de arranque primario.
  • En los segundos 64 Bytes se almacena la información sobre la tabla de particiones.
  • Los 2 bytes restantes son para la MBR validation check.

El MBR guarda toda la información sobre cualquier cargador de arranque instalado en el sistema; nosotros utilizamos GRUB. Por tanto el MBR debe cargar y ejecutar el gestor GRUB.

3- Grub:

En el GRUB (Grand Unified Bootloader), se almacena toda la información sobre la imagen del sistema operativo que se debe cargar y ejecutar.

En el caso que tengamos más de un sistema operativo instalado, las entradas estarán en este archivo y nos ofrecerá la posibilidad de ejecutar el que más nos convenga.

GRUB nos muestra su pantalla de inicio en el arranque del sistema, espera nuestra selección, en caso de no marcar nada… pasados unos segundos se inicia el sistema predeterminado que tengamos definido en el archivo grub.cfg.

En definitiva, carga y ejecuta el Kernel y las imágenes initrd.

4- Kernel:

Al iniciar el kernel, se monta el sistema de archivos raíz y se ejecuta /sbin/init. Como init es lo primero que ejecuta el kernel Linux, siempre le corresponde el numero «1» como ID de proceso (PID), lo puedes verificar con el siguiente comando:

ejemplo…

sololinux sergio # ps -ef|grep init
root              1          0   0   07:03 ? 00:00:04 /sbin/init splash
sergio   1559   1223    0   07:03 ? 00:00:00 /bin/sh /etc/xdg/xfce4/xinitrc — /etc/X11/xinit/xserverrc

Realmente «initrd» lo podemos traducir como «Initial RAM Disk«.

5- Init:

Comprueba el archivo e indica el nivel de ejecución (puede variar dependiendo de las circunstancias y la carga del sistema). Debes tener muy claro que en Linux existen siete niveles de ejecución (del «0» al «6«:

  • 0 – Parar.
  • 1 – Usuario exclusivo.
  • 2 – Modo multiusuario sin acceso a NFS (sistema de archivos de red).
  • 3 – Modo multiusuario sin restricción.
  • 4 – Reservado (no se utiliza salvo excepciones).
  • 5 – X11 (sistema de ventanas X).
  • 6 – Reiniciar.

Init verifica e identifica el nivel de inicio predeterminado del archivo (puede variar, pero es común el «/etc/inittab«), y carga las herramientas y aplicaciones necesarias dependiendo de su nivel de ejecución.

6 – Runlevel / Nivel de ejecución

Dependiendo de su nivel de ejecución, el sistema iniciara las aplicaciones desde los siguientes directorios:

  • Run level 0 – /etc/rc.d/rc0.d/
  • Run level 1 – /etc/rc.d/rc1.d/
  • Run level 2 – /etc/rc.d/rc2.d/
  • Run level 3 – /etc/rc.d/rc3.d/
  • Run level 4 – /etc/rc.d/rc4.d/
  • Run level 5 – /etc/rc.d/rc5.d/
  • Run level 6 – /etc/rc.d/rc6.d/

Es posible que también tengamos directorios con enlaces simbólicos del tipo /etc/rc0.d, /etc/rc1.d, /etc/rc2.d, etc…

Estas son las 6 etapas que corren detrás de la pantalla al encender el sistema.

 

Espero que este articulo te sea de utilidad, puedes ayudarnos a mantener el servidor con una donación (paypal), o también colaborar con el simple gesto de compartir nuestros artículos en tu sitio web, blog, foro o redes sociales.

 

Una respuesta

  1. Henry
    25/08/2019

Agregar comentario