Un cargador de arranque sirve de puente entre el descubrimiento del firmware y la ejecución del kernel. GRUB es habitual en los PC con Linux, pero systemd-boot, U-Boot, la carga por el firmware de un kernel con EFI stub y otros diseños implementan partes distintas de esta función.
Arrancar el Sistema · Lección 3
Proceso de arranque: cargador
Aprende cómo un cargador selecciona los elementos de Linux, construye la línea de órdenes del kernel y transfiere el control.
Seleccionar los elementos de arranque
Una entrada del cargador puede identificar:
- una imagen del kernel de Linux
- una imagen initramfs opcional o initrd heredada
- una línea de órdenes del kernel
- metadatos específicos de la plataforma o el cargador de otro sistema operativo
GRUB puede presentar varios kernels y entradas de recuperación. Un kernel alternativo solo resulta útil si sus módulos e initramfs correspondientes siguen disponibles y se han probado. El cargador lee archivos mediante sus módulos compatibles de almacenamiento y sistemas de archivos; no depende del VFS de Linux, que todavía no está en ejecución.
¿A qué transfiere normalmente el control un cargador de arranque de Linux?
Parámetros de la línea de órdenes del kernel
El cargador pasa una línea de texto que analizan el kernel y el espacio de usuario inicial. Algunos ejemplos habituales son:
root=...para identificar el sistema de archivos raíz previsto o una especificación de fuente para el espacio de usuario inicialroorwpara solicitar un modo inicial de montaje de la raízquietpara reducir los mensajes del kernel en la consolainit=...para solicitar otro primer programa del espacio de usuario en una recuperación especializada- parámetros
rd.*específicos de la distribución que interpretan las herramientas de initramfs
initrd suele ser una directiva del cargador que nombra una imagen, no un parámetro genérico del kernel. BOOT_IMAGE= puede aparecer en una línea generada por algunas configuraciones de GRUB, pero no es el mecanismo que carga el kernel.
Examina la línea utilizada en el arranque actual con:
$ cat /proc/cmdline
¿Cuál es la finalidad del parámetro root= de la línea de órdenes del kernel?
¿Qué solicita normalmente el parámetro quiet?
Edición temporal y recuperación
GRUB suele permitir que un usuario de consola autorizado edite una entrada para un único arranque, a menudo mediante una tecla de edición mostrada por el menú. Esto resulta útil para retirar quiet, elegir parámetros de recuperación o corregir un identificador de raíz incorrecto. La interfaz y la autorización varían, especialmente con Secure Boot y configuraciones de GRUB protegidas con contraseña.
Los parámetros pueden exponer texto confidencial mediante /proc/cmdline, los registros de arranque y los informes de fallos. También pueden debilitar la seguridad o hacer imposible arrancar el sistema. Nunca introduzcas secretos y conserva una entrada válida conocida y una vía de recuperación mediante consola.
¿Cuál es una propiedad habitual de editar interactivamente una entrada de GRUB para un arranque?
Configuración persistente de GRUB
Las distribuciones suelen generar la configuración final de GRUB a partir de plantillas, valores predeterminados, scripts y kernels detectados. No edites directamente el grub.cfg generado salvo que la distribución documente explícitamente ese flujo; volver a generarlo puede sobrescribirlo.
Realiza un cambio limitado en la fuente, ejecuta la orden de regeneración documentada por la distribución, examina su salida y prueba conservando una entrada anterior válida y un medio de recuperación arrancable. La orden y la ruta de salida difieren entre Debian, Fedora y las instalaciones UEFI y BIOS.
¿Por qué suele ser poco fiable editar directamente un grub.cfg generado?
Utiliza Personalizar el menú de arranque de GRUB2 únicamente en su entorno de laboratorio con capacidad de recuperación.
Lección completada
Has completado Proceso de arranque: cargador
Ahora puedes separar las directivas del cargador de los parámetros de la línea de órdenes del kernel.
Identifica el kernel, initramfs, la línea de órdenes y las entradas alternativas.
Utiliza
root=,royquietconforme a sus funciones reales.Examina los parámetros del arranque en ejecución mediante
/proc/cmdline.Trata las ediciones interactivas como temporales y sensibles para la seguridad.
Cambia la configuración generada persistente mediante el flujo de la distribución.
Guarda tu progreso
Crea una cuenta gratuita para guardar esta lección y continuar en cualquier dispositivo.
Crear una cuenta gratuita