Capítulo 2.9 - Proceso de Arranque (Boot)
Objetivos de Aprendizaje
Al final de este capítulo, usted será capaz de:
- Comprender el proceso de arranque de Linux
- Explicar las etapas del boot
- Identificar los componentes (BIOS/UEFI, bootloader, kernel, init)
- Solucionar problemas de arranque
Visión General del Boot
El arranque de Linux sigue una secuencia bien definida:
Etapas del Arranque
1. BIOS/UEFI
Rol: Inicialización básica del hardware
Acciones:
- Verificación de hardware (POST)
- Detección de periféricos
- Carga del bootloader desde el disco
Diferencia BIOS vs UEFI:
- BIOS: Antiguo, limitaciones (disco de 2TB)
- UEFI: Moderno, soporte GPT, Secure Boot
2. Bootloader (GRUB)
Rol: Cargar el kernel
Acciones:
- Muestra el menú de arranque
- Carga el kernel e initramfs
- Pasa los parámetros al kernel
Archivos:
/boot/grub/grub.cfg(configuración)/boot/vmlinuz-*(kernel)/boot/initrd.img-*(initramfs)
3. Kernel Linux
Rol: Inicialización del sistema
Acciones:
- Detección e inicialización de hardware
- Montaje del sistema de archivos raíz
- Inicio del proceso init
Parámetros del kernel:
root=: Partición raízquiet: Menos mensajessplash: Pantalla de arranque
4. Init/systemd (PID 1)
Rol: Primer proceso de usuario
Acciones:
- Montaje de los sistemas de archivos
- Inicio de los servicios
- Cambio al nivel de ejecución objetivo
Secuencia systemd:
default.targetactivado- Servicios requeridos iniciados
- Sistema listo
Initramfs
initramfs (Initial RAM File System) es un sistema de archivos temporal en memoria:
Roles:
- Cargar los módulos necesarios del kernel
- Detectar el hardware
- Montar el sistema de archivos raíz
- Preparar el entorno para init
Secuencia Detallada de systemd
Solución de Problemas de Arranque
Problemas Comunes
1. Bootloader dañado:
# Reparar GRUB
sudo grub-install /dev/sda
sudo update-grub
2. El kernel no arranca:
- Verificar los parámetros del kernel
- Probar con un kernel anterior
- Verificar los logs:
dmesg
3. Falta initramfs:
# Regenerar initramfs
sudo update-initramfs -u
4. Sistema de archivos dañado:
# Modo rescue
fsck /dev/sda1
Comandos Útiles
# Ver los mensajes de arranque
dmesg
journalctl -b
# Ver el tiempo de arranque
systemd-analyze
systemd-analyze blame
# Ver la cadena de dependencias
systemd-analyze critical-chain
# Ver los servicios que ralentizan el arranque
systemd-analyze blame | head -10
Resumen
En este capítulo, usted ha aprendido:
Secuencia de Arranque: BIOS → GRUB → Kernel → initramfs → systemd
BIOS/UEFI: Inicialización de hardware
GRUB: Bootloader, carga el kernel
Kernel: Inicializa el sistema
initramfs: Sistema de archivos temporal en memoria
systemd: Primer proceso, inicia los servicios
Solución de problemas: Reparación de GRUB, logs, fsck
Próximos Pasos
Capítulo 2.10: Comunicación entre Procesos
Módulo 3: Sistema de Archivos
Capítulo creado el: diciembre 2024