I
- Intro
La primera vez que instalé con éxito Linux, recuerdo pensar “¿Qué es ese GRUB que sale siempre?” Aunque…lo más común era leer mensajes de error porque rompía cosas del sistema =)
Aprendí mucho probando el famoso “dual boot”. Por supuesto que el primer intento fue fallido porque…sí, adivinaron: instalé primero Linux y luego Windows. Técnicamente es posible configurar el bootloader de Windows para que sea compatible y lea la partición de Linux, pero extremadamente complejo y propenso a errores. Es por eso que siempre se recomienda instalar primero Windows y luego Linux. Grub en este sentido es más flexible y no requiere configuración adicional. Lección aprendida.
Si querés saber más acerca de qué procesos intervienen y qué función cumplen en el inicio de un sistema operativo, seguí leyendo.
II
- Bootloader | Cargador de Arranque
¿Qué es? Es el primer programa que se ejecuta luego del POST y el firmware y su responsabilidad es iniciar el proceso de arranque del Sistema Operativo.
Lo hace cargando la imagen del Kernel y la imagen del disco RAM inicial del sistema elegido (initramfs
o initrd
) en la memoria RAM.
Es posible que un bootloader
| cargador de arranque
contenga también un menú inicial con alternativas de inicio del sistema (opciones y otros “modos de inicio”), como así también otros SOs (sistemas operativos) que puedan estar instalados. Este menú suele ser llamado Boot Manager
| Gestor/Administrador de Arranque
.
Es importante diferenciar entre bootloader
y bootmanager
ya que no todos los bootloaders son bootmanagers, ni todos los bootmanagers son bootloaders. En ese caso, es viable utilizar determinado bootloader y un bootmanager distinto.
El bootloader
se ubica usualmente en uno de los discos y, si bien hay distintos tipos, suelen almacenarse en :
-
MBR
Master Boot Record
: alojado en el primer sector, el sector 0 del disco. Usado en los sistemas tradicionales con firmwareBIOS
|Basic Input Output System
. -
EFI
Extensible Firmware Interface
: alojado en una partición EFI dedicada del tipoFAT32
. Utilizado en los sistemas modernos desde hace años con firmwareUEFI
|Unified Extensible Firmware Interface
y esquema de particionadoGPT
.
Ejemplo de un entorno Fedora 42
donde se ve la partición EFI
con formato FAT32
:
sudo lsblk -f
proyectoleeti@fedora42:~$ sudo lsblk -f
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
nvme0n1
├─nvme0n1p1 vfat FAT32 A1B2-C3D4 580M 3% /boot/efi
├─nvme0n1p2 ext4 1.0 2f8a9b1c-... 890M 12% /boot
└─nvme0n1p3 btrfs fedora42 8c4d2a5f-... 420G 65% /
Hay muchos y distintos tipos de bootloaders, según la arquitectura del hardware, nombrando sólo algunos pocos:
-
GRUB
GRand Unified Bootloader
el más común en los sistemas Linux. -
Das U-Boot
usado en sistemas embebidos como routers, e-books. -
ISOLINUX
utilizado principalmente en medios extraíbles.
En la siguiente galería de imágenes, GRUB muestra múltiples opciones:
-
Ubuntu
Cargar el SO Ubuntu, la versión instalada es la 25.04. -
Advanced options for Ubuntu
Opciones de inicio avanzadas para Ubuntu, por ejemplo si hay más de una versión instalada delKernel
o elrecovery mode
útil durante un mantenimiento o falla. -
Memory test (memtest86+64.efi)
Herramienta para diagnosticar la RAM. -
Memory test (memtest86+64.efi, serial console)
La misma opción anterior, pero con salida a puerto consola (mayormente utilizada en servidores). -
Windows Boot Manager (on /dev/sda1)
Carga el boot manager de Windows, si aparece esta opción es porque hay al menos una instalación de Windows disponible. En este caso es Windows 11. -
UEFI Firmware Settings
Ingresa en la configuración adicional del firmware de UEFI.
Resumen visual paso a paso:

III
- Linux Kernel and initramfs
El bootloader se encarga de cargar la imagen del kernel elegido y el initramfs
/initrd
en la memoria RAM. Luego le cede el control al Kernel.
El kernel usualmente está comprimido y el primer paso es descomprimirse a sí mismo, y luego realizar un chequeo básico del hardware.
Tras el chequeo, ejecuta el initial RAM disk
que puede ser initramfs
o initrd
. Durante este paso se monta un sistema de archivos mínimo y temporal con drivers del hardware, dispositivos y red necesarios para iniciar el sistema.
Una vez cargados estos drivers, se desmonta y descarta el initial RAM disk
y el Kernel monta el filesystem real.
Un kernel puede ser desarrollado y utilizado en distintos sistemas Linux, mientras que el initramfs
se reconstruye y configura cada vez que un sistema es instalado o tiene una actualización o reconfiguración del Kernel, ya que contiene los drivers y configuraciones del hardware específicos.
Resumen visual paso a paso:

🐧 ¿Eso es todo?
Claro que no ;) este es un primer post de una serie de tres. En el próximo te cuento sobre Init
, Servicios
, Systemd
, Systemctl
…y luego terminamos la serie con un lab que abarcará estos tres posts y más.
Hasta el siguiente post! 🐧