k0derz crewq [k0c]
Grub – Iniciar multiples Sistemas Operativos
Eh decidido actualizar este documento gracias “Javier” quien me solicito la instalación de un Unix que detecte su Atheros, obviamente FreeBSD lo hace y nativo por lo que en proceso me encontré con nuevas problemáticas al momento de escribir en el disco.
La instalación y su configuración, en forma detallada.
Instalación:
# cd /usr/ports/sysutils/grub/
# make build install clean
Esto dejara los binarios listos para su configuración y puesta en marcha, por lo que desde ahora en adelante todo lo que se debe hacer es con mayor cuidado ya que no hay que olvidar que se está trabajando con el particionado del disco y la información completa de este.
Luego de haber instalado GRUB:
# cd /boot
# mkdir grub
Crear el directorio donde se almacenaran los archivos capaces de leer los posibles Archivos de Sistemas (File Systems) que se instalaran en la estación de trabajo, dejando en claro que maneja mucho mas que 2 booteos de sistema:
# cd /boot/grub
# cp -v /usr/local/share/grub/i386-freebsd/* /boot/grub/
Quedando el directorio algo similar a esto:
# ls -l
-r–r–r– 1 root wheel 9236 Dec 12 23:34 e2fs_stage1_5
-r–r–r– 1 root wheel 9028 Dec 12 23:34 fat_stage1_5
-r–r–r– 1 root wheel 8180 Dec 12 23:34 ffs_stage1_5
-r–r–r– 1 root wheel 8276 Dec 12 23:34 iso9660_stage1_5
-r–r–r– 1 root wheel 9888 Dec 12 23:34 jfs_stage1_5
-r–r–r– 1 root wheel 8372 Dec 12 23:34 minix_stage1_5
-r–r–r– 1 root wheel 11060 Dec 12 23:34 reiserfs_stage1_5
-r–r–r– 1 root wheel 512 Dec 12 23:34 stage1
-r–r–r– 1 root wheel 121768 Dec 12 23:34 stage2
-r–r–r– 1 root wheel 121768 Dec 12 23:34 stage2_eltorito
-r–r–r– 1 root wheel 8520 Dec 12 23:34 ufs2_stage1_5
-r–r–r– 1 root wheel 7860 Dec 12 23:34 vstafs_stage1_5
-r–r–r– 1 root wheel 10652 Dec 12 23:34 xfs_stage1_5
Pudiendo así con estos archivos leer varios sistemas en tiempo de booteo, bueno ahora con solo esto no basta es necesario para esto su archivo de configuración el cual sale un poco de los esquemas de lo normalmente acostumbrado, ya que este archivo no es “grub.conf” como por defecto alguien pensaría que se pudiese llamar si no que “menu.lst”.
Este archivo contiene toda la configuración de particionamiento, de cómo y en donde debe ir a obtener el o los Sistemas Operativos con los que va a presentar una lista de selección de booteo, en este caso en particular les comento que solo veremos FreeBSD y Microsoft por lo que voy a presentarles la configuración y posteriormente la explicaremos:
# cat menu.lst
default 1
timeout 10
title Microsoft Windows
root (hd0,0)
savedefault
makeactive
chainloader +1
title FreeBSD
root (hd0,a)
kernel /boot/loader
boot
Así se ve la configuración más básica de el archivo menu.lst.
Hasta aquí todo aun es en cierto modo es simple. Lo que a partir de ahora se les enseñara es a tomar toda esta recopilación de archivos y de configuraciones y activarlos al sistema en su MBR (Lease Master Boot Record) para que de esta forma GRUB tome el control de la selección de MultiBooteo de el o los Sistemas Operativos residentes en la maquina.
NOTA: Es muy importante recalcar que para poder ejecutar lo que a continuación se les va a explicar, y que es el instalar GRUB en el MBR que este proceso en FreeBSD no se va a llevar a cabo mientras no se le diga al sistema que esto se esta haciendo y la forma de hacerlo es:
# sysctl kern.geom.debugflags=16
Permitiendo con esto a GRUB poder almacenar su información de ejecución en el MBR.
Luego a partir de consola se debe ejecutar su instalación de la siguiente forma:
# grub
NOTA: Debo recalcar que este paso es distinto a los pasos que van a encontrar en la red o googleando, ya que lo que se está ejecutando es la escritura del MBR en forma directa y no como los demás tutórales dicen que se debe hacer; y que es creando un diskette de booteo previo a la instalación que aquí se está haciendo.
Continuando, esto nos mostrara una ventana como la siguiente en la cual se mostraran los pasos a seguir que después se explicaran con detalle:
GNU GRUB version 0.97 (640K lower / 3072K upper memory)
[ Minimal BASH-like line editing is supported. For the first word, TAB
lists possible command completions. Anywhere else TAB lists the possible
completions of a device/filename. ]
grub> root (hd0,a)
Filesystem type is ufs2, partition type 0xa5
grub> setup (hd0)
Checking if “/boot/grub/stage1″ exists… yes
Checking if “/boot/grub/stage2″ exists… yes
Checking if “/boot/grub/ufs2_stage1_5″ exists… yes
Running “embed /boot/grub/ufs2_stage1_5 (hd0)”… 17 sectors are embedded.
succeeded
Running “install /boot/grub/stage1 (hd0) (hd0)1+17 p (hd0,1,a)/boot/grub/stage2 /boot/grub/menu.lst”… succeeded
Done.
grub> quit
Ahora explicaremos paso a paso lo realizado en este proceso.
En el prompt de GRUB se escribieron 3 comandos para su instalación, de los cuales 2 son extremadamente importantes, el primero de ellos root (hd0,1,a) le dice a GRUB que el su configuración y binarios de Sistemas de Archivos se encuentra en esa partición. El segundo comando es setup (hd0) le esta ordenando a GRUB que en base a su configuración de el archivo menu.lst se instale en el HD0 que es el disco en donde se encuentran el o los Sistemas Operativos yendo a buscar a su ruta por defecto y que es /boot/grub/, encontrando así todo lo necesario para que esta condición de instalación se cumpla.
Solo nos queda aprender como personalizar aun mas nuestro grub para mejor presentación del mismo por lo que voy a darles una muestra de los que se puede lograr con él, ya que la interface que todos conocemos de Grub en las versiones de Linux es grafica, aquí explicaremos el cómo se logra que esto sea así
Esta es la línea que se debe agregar al archivo de configuración de Grub para que puedan ver la imagen que aquí se muestra pero como fondo de nuestro menú de selección de sistema:
splashimage=(hd0,a)/boot/grub/zion.xpm.gz
| Imprimir artículo | Este artículo fue publicado por KuArZo el septiembre 26, 2008 a las 10:01 am, y está archivado en FreeBSD. Sigue las respuestas a esta entrada a través de RSS 2.0. Puedes dejar un comentario o enviar un trackback desde tu propio sitio. |

hace 1 año
Una de las fallas encontradas en este proceso pasa por un descuido en el particionamiento, y que es tan simple que es casi indetectable, el archivo:
ufs2_stage1_5
No lee “Soft Updates”, por lo que a quien se le ocurra instalar “FreeBSD” en la raiz “/” asegurece de que esto no sea así.