Gentoo Logo

[ << ] [ < ] [ Inicio ] [ > ] [ >> ]


10. Configurando el gestor de arranque

Contenido:

10.a. Haga su elección

Introducción

Ahora que su núcleo está configurado y compilado y los ficheros de configuración necesarios han sido llenados correctamente, ha llegado la hora de instalar el programa que iniciará el núcleo cuando arranque el sistema. Este programa es conocido como gestor de arranque.

Opcional: Framebuffer

Si ha configurado su núcleo con soporte framebuffer (o ha utilizado la configuración predeterminada de genkernel) puede activarlo añadiendo el parámetro vga y/o video al fichero de configuración del gestor de arranque.

Los sistemas de 64 bits deben usar el controlador vesafb y también tendrán que configurar el parámetro vga. El parámetro vga controla la resolución y la profundidad de color de su pantalla framebuffer usando vesafb. Como se indica en /usr/src/linux/Documentation/fb/vesafb.txt (el cual está presente cuando se instala el paquete con las fuentes del núcleo) necesita pasar el número VESA correspondiente con la resolución y profundidad de color que quiera.

La siguiente lista muestra las resoluciones y profundidades de color disponibles y su correspondiente valor para el parámetro vga.

640x480 800x600 1024x768 1280x1024
256 0x301 0x303 0x305 0x307
32k 0x310 0x313 0x316 0x319
64k 0x311 0x314 0x317 0x31A
16M 0x312 0x315 0x318 0x31B

El parámetro video controla las opciones de visualización. Necesita que se le indique el controlador de framebuffer (vesafb para núcleos 2.6, o vesa para núcleos 2.4) seguido de los parámetros de control que quiera activar. Todas las variables se pueden encontrar en /usr/src/linux/Documentation/fb/vesafb.txt, pero aquí le informamos sobre las tres más utilizadas:

Control Descripción
ywrap Asume que su tarjeta gráfica puede volver sobre su memoria. (e.j. continuar al principio cuando se aproxima al final)
mtrr:n Configura los registros MTRR. n puede ser: 0 - disabled (desactivado) 1 - uncachable (no en caché) 2 - write-back 3 - write-combining 4 - write-through

El resultado de estas dos configuraciones podría ser algo como: vga=0x318 video=vesafb:mtrr,ywrap o video=vesafb:mtrr,ywrap,1024x768-32@85. Recuerde (o anote) esta configuración. La necesitará dentro de poco.

Aunque LILO funciona en AMD64, Gentoo sólo da soporte a GRUB. Ahora continúe con la instalación de este.

10.b. Usar GRUB

Comprender la terminología de GRUB

La parte más crítica para la comprensión de GRUB, es el habituarse a la manera en que GRUB se refiere a los discos duros y las particiones. Su partición Linux /dev/hda1 (para dispositivos IDE) o /dev/sda1 (para dispositivos SATA/SCSI) suele ser denominada (hd0,0) por GRUB. Note los paréntesis alrededor de hd0,0, que son obligatorios.

La numeración de los discos duros comienza con un cero, en lugar de utilizar una "a" y las particiones empiezan con cero en lugar de con un uno. Advertimos también que entre los dispositivos hd, sólo se cuentan los discos duros y no los dispositivos atapi-ide como cdroms y grabadoras. Además, la especificación es igual para dispositivos SCSI. (Usualmente son asignados números mayores, excepto cuando el BIOS está configurado para arrancar desde los dispositivos SCSI). Cuando le pide al BIOS que arranque de un disco duro distinto (por ejemplo, de su disco primario esclavo), ese disco duro se ve como hd0.

Asumiendo que tiene un disco duro en /dev/hda, un lector de CD-ROM en /dev/hdb, una grabadora en /dev/hdc, un segundo disco duro en /dev/hdd y ningún disco duro SCSI, la partición /dev/hdd7 queda descrita como (hd1,6). A lo mejor puede sonar raro y bien podría serlo, pero como veremos, GRUB ofrece un mecanismo de terminación por tabulador que es de gran ayuda para los que tienen una gran cantidad de discos duros y que andan algo perdidos con este esquema de numeración.

Habiéndole tomado la medida, es hora de instalar GRUB.

Instalar GRUB

Para instalar GRUB, primero lo instalamos con emerge:

Listado de Código 2.1: Instalar GRUB

# emerge grub

Aunque GRUB esté instalado, todavía necesitamos crear un archivo de configuración para él e instalar GRUB en nuestro MBR para que pueda arrancar automáticamente nuestro núcleo recién creado. Cree el archivo /boot/grub/grub.conf con nano, o cualquier otro editor:

Listado de Código 2.2: Crear el archivo /boot/grub/grub.conf

# nano -w /boot/grub/grub.conf

Ahora vamos a escribir el grub.conf. A continuación encontrará dos posibles archivos grub.conf para las particiones de ejemplo que manejamos en esta guía, con una imagen del núcleo kernel-2.6.12-gentoo-r10. Sólo hemos comentado exhaustivamente el primer grub.conf.

  • El primer grub.conf es para quienes no hayan usado genkernel para compilar su núcleo
  • El segundo grub.conf es para quienes hayan utilizado genkernel para compilar su núcleo

Nota: Si el sistema de archivos raíz es JFS, debe agregar "ro" a los parámetros del núcleo ya que JFS requiere repasar su registro de transacciones (log) antes de permitir el montaje para lectura y escritura.

Listado de Código 2.3: grub.conf para quienes no hayan usado genkernel

# Cuál título arrancar por defecto. 0 es el primero, 1 el segundo, etc.
default 0
# Cuántos segundos esperar antes de arrancar el título por defecto.
timeout 30
# Una bella, hermosa imagen para ensalzar las cosas un poco :)
# Coméntela si no tiene una tarjeta gráfica instalada
splashimage=(hd0,0)/boot/grub/splash.xpm.gz

title=Gentoo Linux 2.6.12
# Partición donde se encuentra la imagen del núcleo (o sistema operativo)
root (hd0,0)
kernel /boot/kernel-2.6.12-gentoo-r10 root=/dev/hda3

# Las siguientes cuatro líneas sólo se usan en caso de arranque dual con un sistema Windows.
# En este caso, Windows reside en la partición /dev/hda6.
title=Windows XP
rootnoverify (hd0,5)
makeactive
chainloader +1

Listado de Código 2.4: grub.conf para usuarios del genkernel

default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz

title=Gentoo Linux 2.6.12
root (hd0,0)
kernel /boot/kernel-2.6.12-gentoo-r10 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/hda3 udev
initrd /boot/initramfs-genkernel-amd64-2.6.12-gentoo-r10

# Sólo en caso de arranque dual
title=Windows XP
root (hd0,5)
makeactive
chainloader +1

Si usó un esquema de particiones y/o imagen del núcleo distinta, haga los ajustes respectivos. Sin embargo, asegúrese que cualquier cosa que siga un dispositivo GRUB (tal como (hd0,0)) sea relativa al punto de montaje y no de la raíz. En otras palabras, (hd0,0)/grub/splash.xpm.gz es en realidad /boot/grub/splash.xpm.gz ya que (hd0,0) es /boot.

Además, si eligió usar un esquema de particiones diferente y no colocó /boot en una partición separada, el prefijo /boot usado en los códigos de ejemplo señalados arriba es realmente requerido. Si siguió nuestro plan sugerido de particionamiento, el prefijo /boot no se necesita pero un enlace simbólico a boot hace que este funcione. En resumen, los ejemplos de arriba deberían funcionar ya sea si definió un partición /boot separada o no.

Si necesita pasar algún parámetro adicional al núcleo, sencillamente agréguelo al final de la línea de comando del núcleo. Ya estamos pasando una opción (root=/dev/hda3 o real_root=/dev/hda3), pero se pueden pasar otras también, como el parámetro video de los que hablamos previamente.

Los usuarios de genkernel deben saber que sus núcleos usan las mismas opciones de arranque que el CD de Instalación. Por ejemplo, si tiene dispositivos SCSI, debería agregar el parámetro doscsi al núcleo.

Ahora grabe el archivo grub.conf y salga. Aún necesita instalar GRUB en el MBR (Master Boot Record) para que GRUB se ejecute automáticamente cuando arranque su sistema.

Los desarrolladores de GRUB recomiendan utilizar grub-install. Sin embargo, si por alguna razón grub-install no funciona correctamente todavía tiene la opción de instalar GRUB manualmente.

Continúe con Predeterminado: Configurar GRUB utilizando grub-install o Alternativa: Configurar GRUB a mano.

Predeterminado: Configurar GRUB utilizando grub-install

Para instalar GRUB necesita ejecutar el comando grub-install. Sin embargo grub-install no funcionará tal como se espera ya que estamos dentro de un entorno enjaulado. Antes de seguir, necesitará crear /etc/mtab, que es el archivo que contiene la información relativa a todos los sistemas de archivos montados. Afortunadamente hay una manera sencilla de realizar esto, simplemente copie /proc/mounts a /etc/mtab, excluyendo la línea que contiene rootfs si no ha creado una partición boot separada. El siguiente comando funcionará en ambos casos:

Listado de Código 2.5: Crear /etc/mtab

# grep -v rootfs /proc/mounts > /etc/mtab

Ahora podemos instalar GRUB utilizando grub-install:

Listado de Código 2.6: Ejecutar grub-install

# grub-install /dev/hda

Si tiene alguna pregunta más acerca de GRUB, por favor consulte el FAQ de GRUB (en inglés) o el Manual de GRUB (en inglés).

Continúe con Reiniciar el sistema.

Alternativa: Configurando GRUB a mano

Para comenzar a configurar GRUB, debe ejecutar los comandos dentro de grub. Conocerá al intérprete de comandos propio de grub (grub>). Ahora necesita ejecutar los comandos necesarios para instalar el registro de arranque de GRUB en su disco duro.

Listado de Código 2.7: Iniciar el intérprete de comandos de GRUB

# grub

Nota: Si su sistema no tiene disqueteras, añada la opción --no-floppy al comando anterior para evitar que grub intente probar los dispositivos (no existentes) de disquetes.

En el ejemplo de configuración queremos instalar GRUB para que lea la información de la partición de arranque /dev/hda1, e instale el registro de arranque de GRUB en el MBR (Master Boot Record) de su disco duro para que lo primero que veamos aparecer al encender el ordenador sea GRUB. Por supuesto, si no ha seguido el ejemplo de configuración durante la instalación, cambie los comandos de acuerdo a su modelo.

El mecanismo de completar comandos por tabulación de GRUB puede utilizarse dentro de GRUB. Por ejemplo, si escribe "root (" seguido de una tabulación, notará que se le presenta una lista de dispositivos (tal como hd0). Si tecleamos "root (hd0," seguido de una tabulación recibiremos una lista de particiones disponibles para elegir (tal como hd0,0).

Al utilizar este mecanismo de completar por tabulación, configurar GRUB no debería resultar tan duro. Ahora vamos por ello, ¡configuremos GRUB!

Listado de Código 2.8: Instalar GRUB en el MBR

grub> root (hd0,0)          (Especifique donde tiene su partición /boot)
grub> setup (hd0)           (Instalamos GRUB en el MBR)
grub> quit                  (Salimos del intérprete de comandos de GRUB)

Nota: Si quiere instalar GRUB en una partición concreta en lugar del MBR, debe modificar el comando setup para que apunte a la partición correcta. Por ejemplo, si quiere que GRUB se instale en /dev/hda3, el comando adecuado sería setup (hd0,2). Sin embargo, pocos usuarios querrán hacer esto.

Si tiene alguna pregunta más acerca de GRUB, por favor consulte el FAQ de GRUB o el Manual de GRUB.

Continúe con Reiniciar el sistema.

10.c. Reiniciar el sistema

Salga del entorno enjaulado y desmonte todas las particiones que continúen montadas. Después podemos ejecutar el mágico comando que hemos estado esperando: reboot.

Listado de Código 3.1: Desmontar todas las particiones y reiniciar

# exit
# cd
# umount /mnt/gentoo/boot /mnt/gentoo/dev /mnt/gentoo/proc /mnt/gentoo
# reboot

Por supuesto, no olvide quitar el CD arrancable, o el CD será arrancado de nuevo en lugar de su nuevo sistema Gentoo.

Una vez que haya reiniciado su instalación de Gentoo, termínela con Finalizar su instalación de Gentoo.


[ << ] [ < ] [ Inicio ] [ > ] [ >> ]


Imprimir

Ver completo

Página actualizada 28 de mayo, 2006

Esta traducción ha dejado de tener soporte

Sumario: Existen varios gestores de arranque . Cada uno tiene su propia configuración. Procederemos paso a paso al configurar el gestor de arranque según sus necesidades.

Sven Vermeulen
Autor

Roy Marples
Autor

Daniel Robbins
Autor

Chris Houser
Autor

Jerry Alexandratos
Autor

Seemant Kulleen
Desarrollador Gentoo x86

Tavis Ormandy
Desarrollador Gentoo Alpha

Jason Huebel
Desarrollador Gentoo AMD64

Guy Martin
Desarrollador Gentoo HPPA

Pieter Van den Abeele
DesarrolladorGentoo PPC

Joe Kallar
Desarrollador Gentoo SPARC

John P. Davis
Editor

Pierre-Henri Jondot
Editor

Eric Stockbridge
Editor

Rajiv Manglani
Editor

Jungmin Seo
Editor

Stoyan Zhekov
Editor

Jared Hudson
Editor

Colin Morey
Editor

Jorge Paulo
Editor

Carl Anderson
Editor

Jon Portnoy
Editor

Zack Gilburd
Editor

Jack Morgan
Editor

Benny Chuang
Editor

Erwin
Editor

Joshua Kinard
Editor

Tobias Scherbaum
Editor

Xavier Neys
Editor

Grant Goodyear
Reviewer

Gerald J. Normandin Jr.
Reviewer

Donnie Berkholz
Reviewer

Ken Nowack
Reviewer

Lars Weiler
Colaborador

José Alberto Suárez López
Traductor

John Christian Stoddart
Traductor

José Luis Rivero
Traductor

Carles Ferrer
Traductor

Andrés Pereira
Traductor

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.