Saludos para todos. En este documento les enseñare como instalar GRUB (The Grand Unified Boot Loader). Puedes bajar el paquete de ftp://ftp.slackware.com/pub/slackware/slackware-10.2/extra/grub/grub-0.97-i486-1.tgz *Por defualt Slackware usa como boot loader al legendario LILO. 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.97-i486-1.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í: /usr/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 , 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 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 el 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. En este caso los archivos se encuentran en: /usr/lib/grub/i386-pc/ Por lo que hay que copiarlos a /boot # cp -r -v /usr/lib/grub/i386-pc/ /boot/grub 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,2) Filesystem type is ext2fs, partition type 0x83 grub> setup (hd0) Checking if "/boot/grub/stage1" exists... yes Checking if "/boot/grub/stage2" exists... yes Checking if "/boot/grub/e2fs_stage1_5" exists... yes Running "embed /boot/grub/e2fs_stage1_5 (hd0)"... 17 sectors are embedded. succeeded Running "install /boot/grub/stage1 (hd0) (hd0)1+17 p (hd0,2)/boot/grub/stage2 /boot/grub/menu.lst"... succeeded Done. grub> 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/hda3 o (hd0,2) 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/menu.lst Puedes bajar un archivo de configuracion de ejemplo de: http://tuxjm.net/docs/menu.lst-sample Y copiarlo a /boot/grub como 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. Si no te gusto esto, que lo dudo, siempre puedes desinstalar grub con: # removepkg grub Por el momento es todo, y Felices Booteos. Jorge Armando Medina. Linux Tijuana. http://www.linuxtj.org