2.4. Terminología de GRUB

Una de las cuestiones más importantes que deben entenderse antes de utilizar GRUB es cómo el programa hace referencia a los dispositivos, por ejemplo, a los discos duros y a las particiones. Esta información es muy importante si desea configurar GRUB para arrancar varios sistemas operativos.

2.4.1. Nombres de dispositivos

Cuando se refiera a un dispositivo específico con GRUB, haga esto usando el formato siguiente (observe que los paréntesis y las comas son muy importantes en la sintaxis):

(<tipo-de-dispositivo><numero-dispositivo-bios>,<numero-particion>)

El <tipo-de-dispositivo> especifica el tipo de dispositivo desde el cual inicia GRUB. Las dos opciones más comunes son hd para un disco duro o fd para un disquete de 3.5. Un tipo de dispositivo menos usado también está disponible, llamado nd para un disco de la red. Las instrucciones sobre la configuración de GRUB para arrancar desde la red están disponibles en http://www.gnu.org/software/grub/manual/.

El <numero-dispositivo-bios> es el número del dispositivo BIOS. El disco duro IDE primario se numera 0 y un disco duro IDE secundario se numera 1. La sintaxis es equivalente a aquella utilizada para los dispositivos por el kernel. Por ejemplo, a en hda para el kernel es análogo a 0 en hd0 para GRUB, b en hdb es análogo a 1 en hd1, y así sucesivamente.

El <numero-particion> hace referencia al número de una partición concreta en un dispositivo. Al igual que en el caso de <número-dispositivo-bios>, la mayoría de los tipos de particiones son numeradas comenzando por 0. Aunque la mayoría de las particiones se especifican con números, si el sistema usa particiones BSD a éstas se hará referencia con letras, con a correspondiendo a 0, b correspondiendo a 1 y así sucesivamente.

SugerenciaSugerencia
 

El sistema de numeración para dispositivos bajo GRUB empieza por 0 y no por 1. Este es uno de los errores que cometen con más frecuencia los usuarios que empiezan a utilizar GRUB.

Para dar un ejemplo, si un sistema tiene más de un disco duro, GRUB se refiere al primer disco duro como (hd0) y al segundo como (hd1). De la misma forma, GRUB se refiere a la primera partición en la primera unidad como (hd0,0) y a la tercera partición en el segundo disco duro como (hd1,2).

En general, GRUB usa las reglas siguientes para denominar los dispositivos y las particiones:

2.4.2. Nombres de archivos y listas de bloqueo

Al escribir comandos en GRUB que hagan referencia a un archivo, como una lista de menús, es necesario especificar una ruta de archivos absoluta después de los números de dispositivo y partición.

Lo siguiente ilustra la estructura de tal comando:

(<tipo-dispositivo><numero-dispositivo>,<numero-particion>)</ruta/a/archivo>

En este ejemplo, reemplace <tipo-dispositivo> con hd, fd o nd. Reemplace <numero-dispositivo> con el número entero para el dispositivo. Reemplace </ruta/a/archivo> con una ruta absoluta relativa al nivel más superior del dispositivo.

También puede especificar archivos a GRUB que no aparecen realmente en el sistema de archivos, tal como un gestor de arranque en cadena que aparece en los primeros bloques de la partición. Para cargar tales archivos, deberá indicar una lista de bloques, que indique a GRUB, bloque por bloque, la ubicación exacta del archivo en la partición. Puesto que un archivo puede estar formado por varios conjuntos de bloques, hay una sintaxis específica para escribir listas de bloques. Cada bloque que contiene el archivo se describe con un número de desplazamiento de bloques seguido de un número de bloques de ese punto de desplazamiento. Los desplazamientos de bloques se listan secuencialmente y delimitados por comas.

La siguiente es una lista de bloques de ejemplo:

0+50,100+25,200+1

Esta lista de bloques de ejemplo especifica un archivo que empieza en el primer bloque de la partición y que usa los bloques del 0 al 49, del 99 al 124, y el 199.

Saber cómo escribir listas de bloques es útil al utilizar GRUB para cargar sistemas operativos que usan el método de carga encadenada. Puede suprimir el número de desplazamiento de bloques si empieza por el bloque 0. Por ejemplo, el archivo de carga encadenada de la primera partición del primer disco duro tendrá el nombre siguiente:

(hd0,0)+1

Lo siguiente muestra el comando chainloader con una designación de lista de bloques similar en la línea de comandos de GRUB después de establecer el dispositivo correcto y la partición adecuada como raíz:

chainloader +1

2.4.3. El Sistema de archivos raíz y GRUB

Algunos usuarios se confunden con el uso del término sistema de archivos raíz tiene un significado diferente con relación a GRUB. Es importante recordar que el sistema de archivos raíz de GRUB no tiene nada que ver con el sistema de archivos raíz de Linux.

El sistema de archivos raíz de GRUB es el nivel superior del dispositivo especificado. Por ejemplo, el archivo imagen (hd0,0)/grub/splash.xpm.gz está ubicado dentro del directorio /grub/ en el nivel superior (o raíz) de la partición (hd0,0) (la cual es en verdad la partición /boot/ para el sistema).

Luego, se ejecuta el comando kernel con la ubicación del archivo del kernel como una opción. Una vez que el kernel de Linux inicia, establece el sistema de archivos raíz con el cual los usuarios de Linux están familiarizados. El sistema de archivos raíz de GRUB original y sus montajes se olvidan; la única finalidad de su existencia era arrancar el archivo del kernel.

Consulte las notas sobre los comandos root y kernel en la Sección 2.6 para obtener más información.