Product SiteDocumentation Site

El Gestor de Arranque GRUB

Cuando se enciende un equipo con entorno Linux, el sistema operativo se carga en la memoria gracias a un programa especial llamado gestor de arranque.Usualmente existe un gestor de arranque en el disco rígido primario del sistema (o de cualquier otro dispositivo de medios) y tiene como única responsabilidad la de cargar el kernel de Linux con sus archivos requeridos, o (en otros casos) otros sistemas operativos en la memoria.
Este apéndice trata acerca de los comandos y de las opciones de configuración del gestor de arranque GRUB, incluido junto con Fedora para la arquitectura x86.

E.1. GRUB

GNU Grand Unified Boot loader o GRUB es un programa que habilita al usuario a seleccionar qué sistema operativo instalado o kernel cargar en el momento de arranque del sistema. Permite también que el usuario transmita argumentos al kernel.

E.1.1. Proceso de arranque en un sistema x86 y GRUB

GRUB se carga a sí mismo en la memoria en las diferentes etapas:
  1. La BIOS del MBR lee en la memoria la primera etapa o el gestor de arranque primario[6].. El gestor de arranque primario ocupa menos de 512 bytes de espacio de disco dentro del MBR, y es capaz de cargar tanto el gestor de arranque de la Etapa 1.5, como el de la Etapa 2.
  2. El gestor de arranque de la Etapa 1 lee en la memoria el gestor de arranque de la Etapa 1.5 si es necesario. Algunos hardware requieren un paso intermedio para llegar a la Etapa 2 del gestor de arranque. A veces esto sucede cuando la partición /boot/ se encuentra por encima de los 1024 cilindros de disco duro o cuando utiliza el modo LBA. El gestor de arranque de la Etapa 1.5 se encuentra ya sea en la partición /boot/ o en una pequeña parte del MBR y de la partición /boot/.
  3. La Etapa 2 o el gestor de arranque secundario se lee en la memoria. El gestor de arranque secundario visualiza el menú GRUB y el entorno de comandos. Esta interfaz le permite seleccionar qué sistema operativo o kernel arrancar, pasar argumentos al kernel o ver los parámetros del sistema.
  4. El gestor de arranque secundario lee el sistema operativo o el kernel así como el contenido de /boot/sysroot/ en la memoria. Una vez GRUB determina que sistema operativo o que kernel iniciar, lo carga en la memoria y le pasa el control al la máquina de ese sistema operativo.
El método que se utiliza para arrancar Linux se llama carga directa porque el gestor de arranque carga el sistema operativo directamente. No existe intermediario entre el gestor de arranque y el kernel.
El proceso de arranque usado por otros sistemas operativos puede variar. Por ejemplo, los sistemas operativos de Microsoft® Windows®, así como otros sistemas operativos, se cargan mediante un método de arranque de carga encadenada. Bajo este método, el MBR señala el primer sector de la partición que tiene el sistema operativo. Allí encuentra los archivos necesarios para arrancar el sistema operativo.
GRUB soporta ambos métodos de arranque, directo y de carga encadenada, permitiendo arrancar desde casi cualquier sistema operativo.

Warning

Durante la instalación, los programas de instalación DOS de Microsoft y Windows sobreescriben completamente el MBR, destruyendo cualquier cargador de arranque ya existente. Si crea un sistema de arranque dual, es preferible que instale el sistema operativo Microsoft de primero.

E.1.2. Funciones de GRUB

GRUB contiene una serie de funciones que lo convierten en el método favorito respecto al resto de gestores de arranque disponibles para la arquitectura x86. A continuación tiene una lista de las características más importantes:


[6] . Para obtener más información sobre el BIOS y el MBR del sistema, vea Sección F.2.1, “La BIOS”.