

Tema: Gestores de Arranque: Configurar GRUB y Configurar LILO
Autor: Raul Rodas Hinostroza
E-mail: raul@linuxcentro.net
Web:http://www.linuxcentro.net
Copyright :©2005. LinuxCentro.Net permite la libre distribución y modificación de este documento por cualquier medio y formato mientras esta leyenda permanezca intacta junto con el documento, la distribución y modificación se deben hacer de acuerdo con los términos de la Licencia Pública General GNU publicada por la Free Software Foundation; sea la versión 2 de la licencia o (a su elección) cualquier otra posterior. La información contenida en este documento y los derivados de éste se proporcionan tal cual son y los autores no asumirán responsabilidad alguna si el usuario o lector hace mal uso de éstos.
El gestor de arranque es el primer programa que se ejecuta al arrancar una computadora, transfiere el control al núcleo del sistema operativo que a su vez inicia el resto del sistema operativo.
En las computadoras con Windows y Linux, o con sólo Linux, siempre se instala un gestor de arranque permitiendo la selección del sistema operativo a utilizar.
GNU GRand Unified Boot loader o GRUB es un gestor de arranque que permite al usuario seleccionar el sistema operativo para arrancar, también permite transmitir argumentos al kernel.
Fue escrito en 1995 por Erich Boleyn para el proyecto FreeBSD y en 1999 Gordon Matzigkeit y Yoshinori K. Okuji adoptaron a GRUB como proyecto GNU oficial.
Los sistemas operativos Linux generalmente utilizan el método de carga directa sin punto medio entre el gestor de arranque y el kernel, GRUB soporta los métodos de arranque directo y carga encadenada, utilizado por sistemas propietarios como Windows, permitiendo arrancar desde casi cualquier sistema operativo.
Cuando Windows se instala (cualquier versión) sobrescribe completamente el MBR, destruyendo cualquier gestor de arranque existente. Si va a tener sistemas duales en su pc se recomienda primero instalar los sistemas operativos propietarios y luego Linux.
GRUB se instala durante el proceso de instalación de Linux, pero en caso no lo haya instalado puede hacerse después. Puede instalarse de 2 maneras:
Esta es la forma más sencilla de instalar grub, para que funcione debe tener el archivo menú.lst o grub.conf en el directorio /boot/grub/:
# /sbin/grub-install /dev/hda
/dev/hda : Es el disco duro donde debe ser instalado. hda hace referencia al disco duro primario.
Para este método de instalación es necesario utilizar la línea de comandos de grub, para ello debemos tener en cuenta los siguientes criterios:
Luego se procederá a la instalación con los siguientes pasos:
Ahora debemos crear el archivo grub.conf con la configuración de arranque (el archivo menú.lst es un enlace blando a grub.conf). Este archivo cuenta con 2 secciones: Preferencias globales y Entradas para los sistemas operativos. El siguiente es un ejemplo de archivo de configuración grub.conf para una Pc con Windows y Linux
# ********** SECCION PREFERENCIAS GLOBALES **********
# Arranca la entrada por defecto
default 0
# Arrancar
automáticamente luego de 5 segundos
timeout 5
# Escondemos el menu para que no se visto a menos que se presione cualquier
tecla
hiddenmenu
# ********** SECCION ENTRADAS PARA LOS SISTEMAS OPERATIVOS **********
# El titulo para identificar la
entrada a un sistema operativo
title CentOS 4.0 (2.6.9-5.0.3.EL)
# montar la partición donde está el sistema operativo
root (hd0,2)
# especificar el kernel a utilizar
kernel /boot/vmlinuz-2.6.9-5.0.3.EL ro root=LABEL=/ rhgb quiet
# especificar
imagen INIT a cargar
initrd /boot/initrd-2.6.9-5.0.3.EL.img
# El título para identificar la segunda entrada
title Sistema
Propietario
# Fijamos el dispositivo raiz donde está instalado el sistema operativo propietario sin montarlo
rootnoverify (hd0,0)
# Carga en cadena el gestor de este sistema operativo
chainloader +1
La próxima vez que arranque el sistema aparecerá el menú que acabamos de crear.
GRUB utiliza diferentes términos para hacer referencia a los dispositivos.
GRUB usa las siguientes reglas para nombrar a los dispositivos y las particiones:
Veamos otro ejemplo para señalar a un disco duro:
(hd0,1) => {tipo de dispositivo}{Número de dispositivo},{Número de partición}
Para poder especificar la ubicación de un archivo desde GRUB se hace asi:
(hd0,0)/vmlinuz = /dev/hda1/vmlinuz
Esto especifica un archivo llamado vmlinuz en la primera partición del disco duro primario.
GRUB dispone de tres interfaces, cada una permite arrancar el kernel de Linux u otros sistemas operativos.
Cuando GRUB se instala por defecto, lo primero que vemos al reiniciar la computadora es una lista de opciones para seleccionar, esa es la interfaz de menú. Presionando la tecla [e] se podrá ingresar a la interfaz del editor de menú de entrada o si presiona la [c] cargará la interfaz de línea de comandos.
Presionando la tecla [e] desde el menú del gestor de arranque se accede a esta interfaz, pudiendo alterar las líneas de comando antes de arrancar el sistema operativo. Tiene algunos comandos como:
La tecla [b] ejecuta los comandos y arranca el sistema operativo. La tecla [Esc] omite los cambios y el usuario vuelve a la interfaz de menú estándar. Con la tecla [c] se carga la interfaz de línea de comandos.
Es la interfaz que proporciona mayor control. Se puede escribir cualquier comando seguido de ENTER para ejecutarlo. Esta interfaz cuenta con algunas funciones similares a las de shell avanzadas, incluyendo el uso de [Tab] para autocompletar, y las combinaciones de teclas con [Ctrl] al escribir comandos, tales como [Ctrl]-[a] para moverse al comienzo de la línea y [Ctrl]-[e] para moverse al final. Además, las teclas de flecha, [Inicio], [Fin], y [Supr] funcionan de forma similar al bash shell.
GRUB permite varios comandos en su línea de comandos. A continuación listamos los más útiles:
LILO es un acrónimo de LInux LOader (cargador) y ha sido usado para arrancar linux en sistemas x86 por muchos años, muchos prefieren usar LILO porque es más familiar.
2.1. LILO y el proceso de arranque de x86
LILO se carga a sí mismo en la memoria en dos etapas.
Para acceder a la línea de comandos boot:, presione [Ctrl]+[X] ó [TAB].
LILO funciona de forma parecida a GRUB a diferencia de:
Lilo se configura por medio del archivo /etc/lilo.conf, y cada que se realice un cambio deberá ejecutarse el comando /sbin/lilo para escribir los cambios al MBR.
Un archivo de ejemplo para /etc/lilo.conf será así:
# ********** SECCION DEFINICIONES GLOBALES **********
# Instruye a
Lilo a que se arranque desde el primer disco duro.
boot=/dev/hda
#
Localiza el archivo del mapa, no se debe modificar
map=/boot/map
#
Indica a lilo el nuevo sector de arranque
install=/boot/boot.b
#
Muestra un mensaje en la línea message
prompt
# Tiempo a esperar
antes de arrancar el sistema operativo por defecto. Décimas de
segundo.
timeout=50
# Pantalla que Lilo mostrará para escoger el
sistema operativo a arrancar.
message=/boot/message
# Describe la
geometría del disco duro. Recomendable no cambiarla si esta
presente.
lba32
# Sistema operativo por defecto a arrancar luego del
timeout
default=linux
# ********** SECCION ENTRADAS PARA SISTEMAS
OPERATIVOS **********
# Entrada para un sistema operativo.
Especificamos kernel a usar
image=/boot/vmlinuz-2.4.0-0.43.6
#
nombre de la entrada
label=linux
# Imagen initial ram disk usada
para arrancar los dispositivos requeridos por el
kernel
initrd=/boot/initrd-2.4.0-0.43.6.img
# La partición root es
de solo lectura
read-only
# Identificando donde está la partición de
éste sistema Linux
root=/dev/hda5
# Especifica que existe otra partición con sistema operativo diferente
a Linux
other=/dev/hda1
# nombre de la entrada
label=windows
Tanto LILO como GRUB permiten cambiar los niveles de ejecución en tiempo de arranque.
LILO
GRUB