Saludos para todos.
En este documento les enseñare como instalar GRUB (The Grand
Unified Boot Loader) con soporte para splashimage (así como lo
usa redhat), por defualt GRUB no tiene soporte para splashimage, en
este caso yo cree un paquete (en especifico para Slackware 9.1) el cual
ya trae soporte para splashimage.
Puedes bajar el paquete grub-0.93-7-i386-1jm.tgz de:
http://www.tuxjm.net/~jmedina/mypaks/
(ahhh, instalalo con #installpkg paquete.tgz)
*Por defualt Slackware usa como boot loader al legendario LILO, y no
hay un paquete oficial de GRUB para Slackware.
Antes de instalar y configurar GRUB les daré una
explicación de la nomenclatura de GRUB. después les
enseñare
como instalar GRUB en el MBR (Master Boot Record) con el paquete (
grub-0.93-7-i386-1jm.tgz ).
Nomenclatura de GRUB
---------------------
La nomenclatura referente a los dispositivos usada por GRUB es un poco
diferente a la que tu has visto antes en tu sistema operativo, y
tendrás que familiarizarte a esta nomenclatura para poder
especificar el dispositivo/partición que usara GRUB.
Echemos un vistazo a este ejemplo:
(fd0)
Primero que nada, GRUB requiere que los nombres de los dispositivos
estén encerrados entre paréntesis ( ). En este ejemplo la
parte fd quiere decir que es el disco flexible (floppy). el numero 0 es
el numero del drive, los cuales son contados desde cero. esta
expresión quiere decir que GRUB usara el disco flexible completo.
(hd0,1)
Aquí, hd significa que es un disco duro (Hard Disk). El primer
numero indica que el numero del dispositivo, el cual es el primer disco
duro, y el segundo numero, 4, indica el numero de la partición,
de la misma manera que en el floppy los números empiezan desde
cero, no desde 1. En si esto quiere decir que es la segunda
partición de el primer disco duro. En este caso, GRUB usa una
partición del disco, en lugar del disco completo.
(hd0,5)
Este ejemplo especifica la primer partición lógica de una
extendida del primer disco duro. Notar que los números de las
particiones extendidas son contadas a partir de la cuarta, ya que solo
puede haber 4 primarias en un disco duro.
La siguiente tabla muestra una conversión de la nomenclatura de
los dispositivos de Linux a la nomenclatura de GRUB:
/dev/hda1 = (hd0,0)
/dev/hda2 = (hd0,1)
/dev/hda3 = (hd0,2)
etc ......
/dev/hdb1 = (hd1,0)
/dev/hdb2 = (hd1,1)
/dev/hdb3 = (hd1,2)
etc ......
GRUB por default trabaja en una linea de comandos, la cual puede ser
accesada así: /sbin/grub y te mandara al prompt de GRUB:
grub>
Aquí es donde tu puedes teclear los comandos de GRUB (puedes
teclear 'help' para ver una lista de comandos soportados) es en esta
linea de comandos donde puedes usar estas nomenclaturas antes
mencionadas, para hacerlo tienes que decirle en que partición
trabajar, seria así:
root (fd0) o (hd0,4)
Para ayudarte a encontrar cual partición quieres la linea de
comandos de GRUB tiene soporte para auto completar, esto
significa que tu puedes por ejemplo solo teclear: root(, seguido de un
<TAB>, y GRUB te mostrara una lista de dispositivos, particiones
o nombres de archivos, de manera que te sea fácil determinar el
nombre de la partición destino, aun cuando se tiene un
conocimiento mínimo de la sintaxis.
Para poder decirle a GRUB sobre un archivo puedes usarlo algo asi:
(hd0,5)/vmlinuz
lo cual le dice a GRUB del archivo vmlinuz, el cual se encuentra en la
raíz ( / ) de la primera partición lógica de la
extendida del primer disco duro (esto lo puedes encontrar
también con <TAB> si es que no sabes como se llama el
archivo).
Bien, ahora que ya sabemos como usar GRUB desde su interfaz y conocemos
su nomenclatura, ya casi estamos listos para instalar GRUB en el MBR.
Como usuario root teclea en la linea de comandos GRUB, lo cual te
llevara al prompt de GRUB.
grub>
Ahora tendremos que teclear los comandos necesarios para instalar GRUB
( el arrancador) en el disco duro. En el siguiente ejemplo, yo quiero
instalar GRUB en MBR de mi disco duro. primero hay decirle donde
encontrar los archivos necesarios para que trabaje GRUB (los archivos
stage).
Y que son estos "stage"?
Los "stage" son las etapas que toma en cargar GRUB, estos son cargados
en memoria de la siguiente manera:
1.- Stage 1, es el arrancador primario, es leído en memoria por
el BIOS, este existe en menos de 512 bytes dentro del MBR, lo
único que hace este stage es cargar el stage 2.
2.- Stage 2 o arrancador secundario, en este stage es donde se muestra
el menú de GRUB con su linea de comando. En esta interfaz es
donde puedes seleccionar que sistema operativo o Kernel de Linux deseas
arrancar, puedes pasar otro tipo de argumentos al kernel, o ver la
cantidad de memoria disponible antes de arrancar (comando displaymem).
Los stage deben de estar en unos archivos en la partición /boot
o en su defecto en el directorio /boot.
Ahora si, después de tanta teoría, ya podremos en
realidad instalar GRUB en el MBR, en mi caso los comandos que uso son
los que se muestran abajo:
grub> root (hd0,5)
grub> setup (hd0)
grub> quit
Esta es una explicación de lo que hice con los comandos
anteriores. el primer comando root ( ) le dice a GRUB la
localización de la partición boot, en mi ejemplo es
/dev/hda6 o (hd0,5) en la nomenclatura de GRUB. El segundo comando
setup ( ) le dice a GRUB donde instalar el arrancador primario (stage
1) con esto sera configurado para buscar sus archivos especiales
(stage1 y stage2) en root ( ) como ya se le dijo con el comando
anterior. En este caso queremos el arrancador en el MBR del primer
disco duro, el cual es /dev/hda, o (hd0).
******************* IMPORTANTE ***************************
RECUERDA que el primer comando root ( ) le dice a GRUB donde buscar la
partición BOOT ! ---> /boot
Si no hiciste una partición /boot entonces GRUB buscara en la
partición / la cual tiene un directorio /boot.
Con esto ya deberás de tener correctamente instalado GRUB en tu
MBR, lo que sigue es configurar el archivo de configuración de
GRUB /boot/grub/grub.conf (menu.lst es un enlace simbólico a
grub.conf) en el paquete grub-0.93-7-i386-1jm.tgz (empaquetado por mi)
ya trae un archivo de muestra en /boot/grub/ con su link a menu.lst,
este archivo trae algunas configuraciones básicas, y trae
secciones para arrancar el sistema default de Slackware y el sistema
Windows XP Pro.
Te aconsejo que copies este archivo para que puedas trabajar con el
modificándolo a tus necesidades.
NOTA: si haces alguna modificación a este archivo no sera
necesario volver a ejecutar GRUB para que tome los cambios.
SECCIÓN PARA SPLASHIMAGE EN SLACKWARE.
--------------------------------------
Este paquete contiene un directorio /boo/grub/images el cual ya tiene
unas cuantas imágenes que coleccione, da un vistazo para ver
cual te gusta más y usarla por default, cuando hayas elegido una
deberás decirle a GRUB cual usar para su menú al
arranque, con el comando splashimage, también lo puedes hacer
editando el archivo /boo/grub/grub.conf
Podría quedar así:
splashimage=(hd0,5)/boot/grub/images/robin.xpm.gz
esto le dice que use la partición /dev/hda6 o (hd0,5) y busque
en /boot/grub/images/robin.xpm.gz
Bien esto es ya casi todo, solo falta pasarles algunos TIPS para usar
GRUB al arranque.
Ya que en GRUB puedes usar su prompt (en el menú teclea "c" para
pasar al ya visto antes grub>) y decirle algunos comandos con
diferentes argumentos, por ejemplo si quisieras ver alguna otra imagen,
seria un fastidio entrar al sistema y modificar el archivo grub.conf y
volver a arrancar para ver como se ve, esto lo podemos evitar desde el
promtp de GRUB, haciendo algo así:
Cuando arranque el equipo y veas el menú de GRUB (stage 2)
teclea "c" para entrar a su linea de comandos, en el prompt usa el
comando root ( ) para decirle a GRUB donde están sus archivos:
root (hd0,5)
entonces carga la imagen que desees, como ya sabemos que están
almacenadas en /boot/grub/images, puedes hacerlo así:
splashimage=(hd0,5)/boot/grub/images/ #y presinar
<TAB> para que te muestre todos los archivos que hay en ese
directorio. después das Enter y veras el nuevo splashimage
cargado.
De este mismo modo en el modo linea de comandos, puedes cargar el
kernel y otras cosas.
Si no te gusto esto, que lo dudo, siempre puedes desinstalar grub con
removepkg grub-0.93-7-i386-1jm.tgz
o si no te gustan esas imagenes crea las tuyas, o remueve la
opción de splashimage y velo todo en blanco y negreo o usa las
opciones
color light-gray/blue red/light-gray (por
ejemplo)
Por el momento es todo, y Felices Booteos.
Jorge Armando Medina.
Linux Tijuana.
http://www.linuxtj.org