Gentoo Logo

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


10. Configurando el gestor de arranque

Contenido:

10.a. Elegir un gestor de arranque

Introducción

Ahora que su núcleo está configurado y compilado se necesita un gestor de arranque, o bootloader, para poder iniciar su nueva instalación de linux. El gestor de arranque que usaremos dependerá del tipo de máquina PPC de que se trate.

Si está utilizando una máquina IBM o Apple NewWorld, necesita usar yaboot. Con las máquinas Apple OldWorld tenemos dos opciones, BootX (recomendado) y quik. Las Pegasos no necesitan gestor de arranque, pero se necesita instalar BootCreator para crear un menú de inicio SmartFirmware.

10.b. Por defecto: yaboot

Introducción

Importante: ¡yaboot sólo puede usarse en sistemas NewWorld Apple e IBM!

Para poder encontrar los dispositivos de arranque yaboot necesita acceder al sistema de ficheros /dev. Para ello, necesitará hacer "bind-mapping" del sistema de ficheros /dev del CD de instalación en el /dev del entorno de chroot.

Listado de Código 2.1: Montando y enlazando el sistema de ficheros /dev

# exit   # para salir del chroot
# mount -o bind /dev /mnt/gentoo/dev
# chroot /mnt/gentoo /bin/bash
# /usr/sbin/env-update && source /etc/profile 

Para configurar yaboot, puede usar yabootconfig para que se cree automáticamente un fichero de configuración. Si estamos instalando Gentoo en un G5 (donde yabootconfig no siempre funciona), o pensamos arrancar desde firewire o USB, debemos configurarlo manualmente.

Nota: Necesitaremos editar el fichero yaboot.conf si usamos genkernel, incluso habiendo utilizado yabootconfig. La sección de la imagen del núcleo de yaboot.conf deberá ser modificada así:

Listado de Código 2.2: Añadiendo opciones de arranque de genkernel a yaboot.conf

###########################################################
## Esta sección se puede duplicar si tenemos más de un 
## núcleo o conjunto de opciones de arranque - reemplazaremos 2.6.12
## con el nombre exacto del fichero del núcleo
###########################################################
image=/boot/kernel-2.6.12
  label=Linux
  root=/dev/ram0	# es /dev/ram0 si se usa genkernel
  partition=3
  append="real_root=/dev/hda3 init=/linuxrc"
  # Podemos añadir argumentos adicionales al kernel tal como
  # rootdelay=10 for a USB/Firewire Boot
  read-only
##########################################################

Por defecto: yabootconfig

yabootconfig autodetectará las particiones en nuestra máquina y configurará un arranque múltiple con Linux, Mac OS y Mac OS X.

Para usar yabootconfig, el disco debe tener una partición Apple_Bootstrap, y /etc/fstab debe estar configurado con las particiones Linux. Ambos requisitos deben de haberse satisfecho ya anteriormente. Para empezar, nos aseguraremos tener instalada la versión más reciente de yaboot.

Listado de Código 2.3: Instalación de yaboot con GRP

# emerge --usepkg --update yaboot

Ahora saldremos del chroot y ejecutaremos yabootconfig --chroot /mnt/gentoo. El programa se ejecutará y pedirá confirmación de la ubicación de la partición Apple_Bootstrap. Pulsaremos Y si es correcta. Si no lo es, comprobaremos /etc/fstab. Entonces yabootconfig revisará la configuración del sistema, creará /etc/yaboot.conf y ejecutará por nosostros mkofboot. mkofboot se utiliza para formatear la partición Apple_Bootstrap, e instalar el fichero de configuración de yaboot en ella. Después de esto, entraremos en el chroot nuevamente.

Listado de Código 2.4: Entrar en el chroot

# chroot /mnt/gentoo /bin/bash
# /usr/sbin/env-update && source /etc/profile

Puede que queramos verificar el contenido de /etc/yaboot.conf. Si lo modificamos (por ejemplo para indicar el sistema operativo por defecto) debemos asegurarnos de volver a ejecutar ybin -v para aplicar los cambios en la partición Apple_Bootstrap.

Ahora, continuaremos en Reiniciando el sistema.

Alternativa: Configuración manual de yaboot

En primer lugar, nos aseguraremos que se ha instalado en el sistema la versión más reciente de yaboot.

Listado de Código 2.5: Instalación de yaboot

# emerge --usepkg --update yaboot

A continuación se encuentra un ejemplo del fichero yaboot.conf, pero deberemos adaptarlo a nuestras necesidades. Los usuarios de un G5 y los que arranquen de firewire o USB deben tener cuidado que sus discos sean vistos como discos SCSI por el núcleo Linux, por lo que necesitaremos cambiar /dev/hda por /dev/sda).

Listado de Código 2.6: /etc/yaboot.conf

## /etc/yaboot.conf
##
## Más detalles en "man yaboot.conf". ¡No se deben hacer cambios hasta
## haberlo consultado!
## Hay más ejemplos de configuración en /usr/share/doc/yaboot/examples.
##
## En un menú de arranque múltiple, se añadirían una o más de las
## siguientes opciones:
## bsd=/dev/hdaX, macos=/dev/hdaY, macosx=/dev/hdaZ

## nuestra partición de bootstrap:

boot=/dev/hda2

## ofboot es la forma openfirmware para especificar la partición de arranque.
## Si no se especifica nada, yaboot falla en los G5 y algunos G4 (a menos que
## se pasen los parámetros necesarios al programa mkofboot/ybin program).
## hd:X significa /dev/sdaX (o /dev/hdaX).
## 
## ¡¡Los usuarios de G5 deben descomentar esta línea!!

#ofboot=hd:2

## Los usuarios que arranquen desde firewire deben usar una línea similar 
## a esta:
# ofboot=fw/node/sbp-2/disk@0:

## Los usuarios que arranquen desde USB deben tener algo como:
# ofboot=usb/disk@0:

## hd: es la abreviatura del primer disco duro que ve OpenFirmware
device=hd:

## Los usuarios de Firewire y USB deberán especificar el nombre entero
## del dispositivo OF.
## Se puede encontrar usando ofpath, incluido con yaboot.
	
# device=fw/node@0001d200e00d0207/sbp-2@c000/disk@0:


delay=5
defaultos=macosx
timeout=30
install=/usr/lib/yaboot/yaboot
magicboot=/usr/lib/yaboot/ofboot

#################
## Esta sección puede duplicarse si tiene más de un núcleo o conjunto de
## opciones de arranque - reemplazaremos 2.6.9 con nuestra versión del núcleo
#################
image=/boot/kernel-2.6.9
  label=Linux
  root=/dev/hda3
  partition=3
  #  append="rootdelay=10"  # Necesario para arranque con
  USB/Firewire
  read-only
##################

## Los usuarios de G5 y algunos de G4 deben indicar
##   macos=hd:13
##   macosx=hd:12
## en lugar de los valores de ejemplo.
macos=/dev/hda13
macosx=/dev/hda12
enablecdboot
enableofboot

Una vez que yaboot.conf esté configurado, ejecutaremos mkofboot -v para formatear la partición Apple_bootstrap e instalar las configuraciones. Si cambiamos yaboot.conf después de que la partición Apple_bootstrap haya sido creada deberemos actualizar la configuración ejecutando ybin -v.

Para más información a cerca de yaboot, se puede hojear yaboot project. Ahora continuaremos la instalación con Reiniciando el sistema.

10.c. Alternativa: BootX

Importante: ¡BootX sólo puede usarse en sistemas Apple OldWorld!

Puesto que BootX arranca Linux después de MacOS, el núcleo necesitará ser copiado desde la partición Linux a la partición MacOS. Primero montaremos la partición MacOS fuera del chroot. Usaremos mac-fdisk -l para encontrar el número de la partición MacOS, que en el ejemplo siguiente será sda6. Una vez que la partición esté montada, copiaremos el núcleo en la carpeta del sistema donde BootX pueda encontrarlo.

Listado de Código 3.1: Copia del kernel en la partición MacOS

# exit
cdimage ~# mkdir /mnt/mac
cdimage ~# mount /dev/sda6 /mnt/mac -t hfs
cdimage ~# cp /mnt/gentoo/usr/src/linux/vmlinux "/mnt/mac/System Folder/Linux Kernels"

Si se usa genkernel, tanto el núcleo como el initrd deberán ser copiados en la partición MacOS.

Listado de Código 3.2: Copia del kernel e initrd compilados con genkernel a la partición MacOS

# exit
cdimage ~# mkdir /mnt/mac
cdimage ~# mount /dev/sda6 /mnt/mac -t hfs
cdimage ~# cp /mnt/gentoo/boot/kernel-* "/mnt/mac/System Folder/Linux Kernels"
cdimage ~# cp /mnt/gentoo/boot/initramfs-* "/mnt/mac/System Folder"

Ahora que el núcleo ha sido copiado, necesitaremos reiniciar para configurar BootX.

Listado de Código 3.3: Desmontando todas las particiones y reiniciando

cdimage ~# cd /
cdimage ~# umount /mnt/gentoo/proc /mnt/gentoo/dev /mnt/gentoo /mnt/mac
cdimage ~# reboot

Desde luego, no nos olvidemos de extraer el CD arrancable, en caso contrario el CD volverá a iniciarse en lugar de MacOS.

Ahora que la máquina ha arrancado en MacOS, abriremos el panel de control de BootX. Si no estamos usando genkernel seleccionaremos Options, desactivando Use specified RAM disk. Usando genkernel, nos aseguraremos que el initrd de genkernel está seleccionado en lugar del initrd del CD de instalación. Si no se usa genkernel, hay una opción para especificar el disco y la partición raíz de Linux. La rellenaremos con los valores apropiados. Dependiendo de la configuración del núcleo probablemente deberemos aplicar algunos parámetros adicionales de inicio del núcleo.

BootX puede ser configurado para arrancar Linux en el inicio. Si queremos hacer esto primero haremos arrancar la máquina en MacOS y después, durante el arranque, se cargará BootX que a su vez iniciará Linux. Hay más información disponible en Boot X home page.

Ahora reiniciaremos otra vez cargando Linux, y luego continuaremos con Finalizando la instalación de Gentoo.

10.d. Alternativa: quik

quik permite a los Macs OldWorld arrancar sin MacOS. Sin embargo, no está bien soportado y tiene algunas peculiaridades. Si tiene opción, es recomendable usar BootX en su lugar, porque es mucho más de fiar y fácil de configurar que quik.

Primero, necesitamos instalar quik:

Listado de Código 4.1: Emerge quik

# emerge quik

A continuación, necesitaremos configurarlo. Editaremos /etc/quik.conf e indicaremos la imagen del núcleo que hemos copiado en la partición de arranque.

Listado de Código 4.2: Configuración de quik.conf

# Ejemplo de quik.conf
init-message = "Gentoo 2005.1\n"
partition = 2           # Esta es la partición de boot
root = /dev/hda4
timeout = 30
default = gentoo
image = /vmlinux-2.6.12
        label = gentoo

El fichero quik.conf debe estar en el mismo disco que las imágenes de arranque quik, sin embargo puede estar en una partición diferente del mismo disco, a pesar de lo cual es recomendable tenerlo en la partición de arranque.

Listado de Código 4.3: Mover quik.conf a /boot

# mv /etc/quik.conf /boot/quik.conf

Necesitaremos ahora indicar las variables de arranque que cargará quik al inicio. Para hacerlo, usaremos un programa llamado nvsetenv. Las variables que hay que configurar cambian de una máquina a otra, por lo que es mejor buscar primero nuestra máquina en quirks antes de hacer esto.

Listado de Código 4.4: indicando las variables de arranque

# nvsetenv auto-boot true # Establezca a false si quiere arrancar en OF, no todos los modelos muestran los mensajes de OF
# nvsetenv output-device video # Mire la página de quirks, hay algunas variantes posibles
# nvsetenv input-device kbd
# nvsetenv boot-device scsi/sd@1:0 # Para SCSI
# nvsetenv boot-device ata/ata-disk@0:0 # Para ATA
# nvsetenv boot-file /boot/vmlinux-2.6.12 root=/dev/hda4  # El primer ítem es la ruta al núcleo, el segundo es la partición root. Se pueden añadir las opciones del núcleo al final de esta línea.
# nvsetenv boot-command boot # Establezca esta opción para arrancar desde Linux

Nota: También es posible cambiar las variables de arranque desde MacOS. Dependiendo del modelo, tanto bootvars o Apple System Disk pueden usarse. Por favor, busque más información en la página de quik.

Ahora que hemos configurado la máquina para el arranque, necesitaremos asegurarnos que las imágenes de arranque están correctamente instaladas. Ejecutaremos quik -v -C /boot/quik.conf. Nos deberá decir que ha instalado el primer "stage QUIK boot block".

Nota: Si algo no ha ido bien, siempre se puede inicializar la PRAM con los valores por defecto pulsando command + option + p + r antes de apagar la máquina. Esto borra los valores establecidos con nvsetenv y debería permitir arrancar tanto con un disco de inicio MacOS como un disco de inicio Linux.

Ahora, seguiremos con Reiniciando el sistema.

10.e. Alternativa: BootCreator

Importante: BootCreator creará un bonito menú de arranque SmartFirmware escrito en Forth para el Pegasos.

Primero, nos aseguraremos de tener la última versión de bootcreator instalada en el sistema:

Listado de Código 5.1: Instalación de bootcreator

# emerge --usepkg --update bootcreator

Ahora copiaremos el fichero /etc/bootmenu.example en /etc/bootmenu y lo editaremos convenientemente:

Listado de Código 5.2: Edición del fichero de configuración de bootcreator

# cp /etc/bootmenu.example /etc/bootmenu
# nano -w /etc/bootmenu

A continuación se encuentra un fichero de configuración completo de /etc/bootmenu. Lo modificaremos convenientemente:

Listado de Código 5.3: fichero de configuración de bootcreator

#
# Ejemplo de fichero de configuración para bootcreator 1.1
#

[VERSION]
1

[TITLE]
Boot Menu

[SETTINGS]
AbortOnKey = false
Timeout    = 9
Default    = 1

[SECTION]
Local HD -> Morphos      (Normal)
ide:0 boot2.img ramdebug edebugflags="logkprintf"

[SECTION]
Local HD -> Linux 2.6.12 (Normal)
ide:0 linux-2.6.12 video=radeonfb:1024x768@70 root=/dev/hda3

[SECTION]
Local HD -> Genkernel (Normal)
ide:0 kernelz-2.6.12 root=/dev/ram0 real_root=/dev/hda3 init=/linuxrc

Finalmente, el bootmenu debe transferirse a Forth y copiarse a la partición de inicio para que SmartFirmware pueda leerlo. Para ello deberemos llamar a bootcreator:

Listado de Código 5.4: Instalación de bootmenu

# bootcreator /etc/bootmenu /boot/menu

Nota: Durante el siguiente reinicio nos aseguraremos de revisar en la configuración de SmartFirmware que menu es el fichero que se cargará por defecto.

Ahora continuaremos con la instalación en Reiniciando el sistema.

10.f. Reiniciando el sistema

Saldremos del entorno chroot y desmontaremos todas las particiones. Luego teclearemos el comando mágico que estabamos esperando: reboot.

Listado de Código 6.1: Desmontando todas las particiones y reiniciando

# exit
livecd ~# umount /mnt/gentoo/boot /mnt/gentoo/proc /mnt/gentoo
livecd ~# reboot

Una vez que se haya reiniciado nuestra instalación de Gentoo, acabaremos con Finalizando la instalación de Gentoo.


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


Imprimir

Ver completo

Página actualizada 19 de enero, 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
Desarrollador Gentoo 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

Lars Weiler
Editor

Jochen Maes
Editor

Xavier Neys
Editor

Grant Goodyear
Revisor

Gerald J. Normandin Jr.
Revisor

Donnie Berkholz
Revisor

Ken Nowack
Revisor

José Alberto Suárez López
Traductor

John Christian Stoddart
Traductor

José Luis Rivero
Traductor

Carles Ferrer
Traductor

Donate to support our development efforts.

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