Arranque del sistema
La BIOS
La BIOS se compone de dos partes:
SETUP: Es la parte de la BIOS para configurar algunas opciones, por ejemplo la secuencia de arranque.
POST: Se encarga de revisar que funcionen todos los componentes principales para poder arrancar. (Esto es lo que se encarga de pitar cuando hay algun error).
UEFI
Significa Unified Extensible Firmware Interface. Tiene varias ventajas:
Compatible con BIOS
Compatible con la tabla de particiones GPT (Esta tabla permite discos mayores de 2tb).
Capacidad de arrancar desde unidades de almacenamiento grandes.
Entorno amigable y flexible.
Diseño modulas y adaptable.
Trae opción de arranque seguro (secure boot).
Ejemplo de UEFI:
Secuencia_de_Arranque
PASOS CUANDO ENCENDEMOS EL PC
Cuando encendemos el PC se ejecuta el firmware (BIOS o UEFI).
El POST se encarga de comprobar que el hardware está bien.
Se busca un cargador de arranque por orden en las unidades que hayamos indicado en la secuencia de arranque del setup.
Si es BIOS se lee la unidad MBR y aquí se encuentra el código que busca el gestor de arranque.
Si es UEFI, se ejecuta el gestor de arranque que se encuentra en una partición especial (ESP)
Particiones de disco MBR y GPT
MBR
Contiene una tabla de 4 particiones dentro de cada disco; y una de estas
particiones se puede dedicar a una extendida para poder guardar varias
particiones lógicas; y de esta forma que acaba con la restricción de las 4
particiones.
Tampoco puede manejar particiones de más de 2 TB.
GPT
En primer lugar es compatible con MBR. Pero no funciona con BIOS, sino que necesita EFI o UEFI.
Soporta tamaños de disco de hasta 9,4 zettabytes.
Puede gestionar aproximadamente 128 particiones.
Gestiona mejor el arranque del S.O.
COMANDO PARTED
Si queremos comprobar la tabla de particiones de nuestro sistema, podemos
ejecutar el comando parted -l:
Por ejemplo si fuese MBR, nos lo mostraría de esta ofra forma, donde vemos que
nos pone msdos, que es lo mismo que MBR:
Inicio_del_sistema_Linux-SysVinit
Una vez cargado el gestor de arranque y todo listo, es cuando se inicia el
demonio init, que se encargará de ejecutar todo lo demas y el resto de procesos
para que el sistema pueda arrancar.
Tenemos 3 tipos de procesos que se encargan de iniciar y gestonar los demonios en Linux:
SysVinit : Utiliza scripts y niveles de ejecución para controlar el inicio, apagado y gestión de los procesos del sistema. (ya no se encuentra en sistemas modernos)
Systemd : Desde el 2015 fue adoptado por parte de las distribuciones Linux como su sistema de inicio.
Upstar : Utiliza eventos para gestionar el arranque o parada de los procesos.