2.2. 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.

2.2.1. Proceso de arranque en un sistema x86 y GRUB

Esta sección explica con más detalle el papel específico que desempeña GRUB al arrancar un sistema x86. Para hacerse una idea del proceso de arranque, vea la Sección 1.2.

GRUB se carga asímismo en la memoria en las diferentes etapas:

  1. La etapa 1 o cargador de arranque primario se lee en la memoria por el BIOS desde el MBR[1]. El gestor de arranque primario existe en menos de 512 bytes de espacio en disco dentro del MBR y es capaz de cargar bien sea la etapa 1.5 o la etapa 2 del gestor de arranque.

  2. La Etapa 1 del gestor de arranque se lee en la memoria por el gestor de arranque de la Etapa 1, si es necesario. Determinados hardware requieren un paso intermedio para pasar a la Etapa 2 del gestor de arranque. Esto sucede a menudo cuando la partición /boot/ está por encima del cilindro 1024 del disco duro o cuando se usa el modo LBA. La Etapa 1.5del gestor de arranque se encuentra en la partición /boot/ o en una pequeña parte del MBR y 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 también los contenidos de /boot/sysroot/ en memoria. Una vez que GRUB determina qué sistema operativo iniciar, éste lo carga en la memoria y transfiere el control de la máquina a dicho sistema operativo.

El método usado para arrancar Red Hat Enterprise Linux se conoce como método de carga directa porque el gestor de arranque carga el sistema operativo directamente. No existe un 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.

AvisoAviso
 

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.

2.2.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:

Notas

[1]

Para obtener más información sobre BIOS y el MBR, vaya a la Sección 1.2.1.