Gentoo Logo

1.  Kiezen van de Bootloader

Inleiding

Nu dat de kernel geconfigureerd en gecompileerd is zal je een bootloader nodig hebben om jouw nieuwe linux installatie op te starten. De bootloader die je zal gebruiken hangt af van het type van PPC machine je hebt.

Indien je een NewWorld Apple of IBM machine gebruikt, gebruik je yaboot. OldWorld Apple machines hebben twee opties, BootX (aanbevolen) en quik. The Pegasos heeft geen bootloader nodig maar je zult wel BootCreator moeten emergen om de SmartFirmware opstartmenu's te maken.

1.  Default: Yaboot gebruiken

Inleiding

Belangrijk: yaboot kan enkel gebruikt worden op NewWorld Apple en IBM systemen!

Om de opstartapparaten te vinden moet yaboot de device nodes aanspreken die aangemaakt zijn door udev bij het opstarten en sysfs filesystem. Deze twee filesystems zijn respectievelijk te vinden in /dev en sys. Om dit te doen zal je de filesystems moeten "bind mount'en" vanaf de Installatie CD's root naar de /dev en de /sys mount points in de gechroote omgeving. Als je deze alreeds "ge-bind mount" hebt, moet je dit niet meer opnieuw doen.

Codevoorbeeld 1.1: Bind-mounten van het apparaat en sysfs filesystem

# exit  # hiermee ga je uit je chroot
# mount -o bind /dev /mnt/gentoo/dev
# mount -o bind /sys /mnt/gentoo/sys
# chroot /mnt/gentoo /bin/bash
# /usr/sbin/env-update && source /etc/profile 

Om yaboot te configureren kan je yabootconfig gebruiken om automatisch een configuratiebestand aan te maken. Indien je Gentoo op een G5 machine installeert (waarop yabootconfig niet altijd werkt), of je wilt van firmware of USB opstarten, zal je yaboot manueel moeten configureren.

Nota: Je zal yaboot.conf manueel moeten aanpassen als je genkernel gebruikt, zelfs als yabootconfig gebruikt is. De kernel image sectie van yaboot.conf moet zo aangepast worden:

Codevoorbeeld 1.1: Genkernel opstart argumenten bijvoegen aan yaboot.conf

###########################################################
## Deze sectie kan gekopieerd worden als je meer dan 1 kernel
## of paar bootopties hebt. - verander kernel-naam
## en initrd-naam met dezelfde naam van je kernel en initrd image.
###########################################################
image=/boot/kernel-name
  label=Linux
  root=/dev/ram0
  partition=3
  initrd=/boot/initrd-name
  append="real_root=/dev/hda3 init=/linuxrc"
  # Je kan extra kernel argumenten bijvoegen zoals:
  # rootdelay=10 voor op USB/Firewire op te starten
  read-only
##########################################################

Standaard: yabootconfig gebruiken

yabootconfig zal de partities van u systeem automatisch detecteren en zal een tweevoudige en drievoudige opstartcombinatie met Linux, Mac OS, en Max OS X maken.

Om yabootconfig te gebruiken, moet je schijf een Apple_Bootstrap partitie hebben, en /etc/fstab moet geconfigureerd zijn om jouw Linux partities aan te geven. Deze stappen zouden al vroeger moeten uitgevoerd zijn, maar controleer toch /etc/fstabeven alvorens verder te gaan. Controleer nu of dat je yaboot reeds geinstalleerd hebt.

Codevoorbeeld 1.1: yaboot installeren met GRP

# emerge --usepkg yaboot

Verlaat nu de gechroote omgeving en voer yabootconfig --chroot /mnt/gentoo uit. Eerst zal het programma de locatie van de bootstrap partitie bevestigen. Als je het aanbevolen partitieschema hebt gebruikt zou je bootsrap partitie /dev/hda2 moeten zijn. Druk Y indien de uitvoer correct is. Indien niet, controleer je /etc/fstab. yabootconfig zal daarna je systeemconfiguratie scannen,/etc/yaboot.conf creeeren en mkofboot uitvoeren voor jou. mkofboot wordt gebruikt om de Apple_Bootstrap partitie te formateren, en het yaboot configuratiebestand erin te installeren. Ga na dit terug in je gechroote omgeving.

Codevoorbeeld 1.1: De gechroote omgeving terug binnengaan

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

Je zou de inhoud van /etc/yaboot.conf kunnen willen verifieren. Als je aanpassingen maakt in /etc/yaboot.conf (zoals het standaard opstart OS veranderen), wees dan zeker dat je ybin -v heruitvoert om de veranderingen toe te passen op de Apple_Bootstrap partitie.

Ga nu verder met Het systeem herstarten.

Alternatief: Manuele yaboot Configuratie

Controleer eerst dat je yaboot op je systeem geinstalleerd hebt hebt:

Codevoorbeeld 1.1: yaboot installeren met GRP

# emerge --usepkg yaboot

Een voorbeeldbestand van yaboot.conf is hieronder gegeven, maar je zal het moeten veranderen om aan jouw noden te voldoen. G5 gebruikers en gebruikers die opstarten vanop firmware en USB moeten weten dat hun schijven als SCSI schijven aanzien worden door de Linux kernel, zo zal je dus /dev/hda door /dev/sda moeten verwisselen.

Codevoorbeeld 1.1: /etc/yaboot.conf

## /etc/yaboot.conf
##
## voer "man yaboot.conf" uit voor details. Maak geen veranderingen aan tot
je deze stap hebt uitgevoert!!
## bekijk ook: /usr/share/doc/yaboot/examples voor voorbeeldconfiguraties
## Voor een dual-boot menu, voeg een of meer toe:
## bsd=/dev/hdaX, macos=/dev/hdaY, macosx=/dev/hdaZ
## De bootstrap partitie:
boot=/dev/hda2

## ofboot is de openfirmware manier om de bootstrap partitie te
## bepalen. Indien dit niet bepaald is zal yaboot er niet in
## slagen om op G5 en op  sommige G4's je de noodzakelijke argumenten door te
## geven aan het mkofboot/ybin programma. hd:x betekent hier /dev/sdaX
## (of /dev/hdaX).
## G5 gebruikers moeten deze lijn decommentarieren!!

#ofboot=hd:2

## Gebruikers die opstarten vanop firmware moeten zoiets als dit
gebruiken:
# ofboot=fw/node/sbp-2/disk@0:

## Gebruikers die opstarten vanop USB moeten zoiets als dit gebruiken:
# ofboot=usb/disk@0:

## hd: is de korte schrijfwijze voor de eerste harde schijf die OpenFirmware
## herkent
device=hd:

## Firmware en USB gebruikers zullen de volledige
## OF device naam moeten specifieren  Deze kan gevonden worden door
## ofpath te gebruiken, dat bij yaboot inbegrepen is.

# 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

#################
## Deze sectie kan gekopieerd worden als je meer dan 1 kernel
## of paar bootopties hebt. - verander kernel-naam met je kernel-versie
#################
image=/boot/kernel-name
  label=Linux
  root=/dev/hda3
  partition=3
#  append="rootdelay=10"  # Nodig om USB/Firewire op te
starten
  read-only
##################

## G5 gebruikers en sommige G4 gebruikers zullen dit moeten gebruiken:
##   macos=hd:13
##   macosx=hd:12
## in plaats van de voorbeeld instellingen.
macos=/dev/hda13
macosx=/dev/hda12
enablecdboot
enableofboot

Eens dat yaboot.conf geconfigureerd is, voer mkofboot -v uit om de Apple_Bootstrap partitie te formateren en de instellingen te installeren. Als je yaboot.conf aanpast nadat de Apple_Bootstrap partitie gecreeerd is, kan je de instellingen updaten door ybin -v uit te voeren.

Codevoorbeeld 1.1: De boostrap partitie instellen

# mkofboot -v

Voor meer informatie over yaboot, bekijk het yaboot project eens. Maar nu de installatie voortzetten met Het systeem her(op)starten.

1.  Alternatief: BootX

Belangrijk: BootX kan alleen gebruikt worden op OldWorld Apple systemen met MacOS 9 of ouder!

Omdat BootX Linux opstart vanuit MacOS, zal de kernel van de Linux partitie naar de MacOS partitie moeten gekopieerd worden. Mount eerst de MacOS partitie vanbuiten de gechroote omgeving. Gebruik mac-fdisk -l om het MacOS partitie nummer te vinden, sda6 is hier als voorbeeld gebruikt. Als de partitie gemount is, zullen we de kernel naar de systeemmap kopieren zodat BootX de kernel kan vinden.

Codevoorbeeld 1.1: De kernel naar de MacOS partitie kopieren

# 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"

Indien genkernel wordt gebruikt, moet je, en de kernel en de initrd kopieren naar de MacOS partitie.

Codevoorbeeld 1.1: De Genkernel kernel en de initrd naar de MacOS partitie kopieren

# 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"

Nu dat de kernel gekopieerd is moeten we herstarten om BootX op te zetten.

Codevoorbeeld 1.1: Alle partities unmounten en herstarten

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

Vergeet natuurlijk niet de opstartbare CD uit te halen, anders zal de CD opnieuw opstarten in plaats van MacOS.

Als de machine is opgestart in MacOS, open je het BootX controle paneel. Indien je genkernel niet gebruikt, selecteer Options en deselecteer Use specified RAM disk. Indien je genkernel gebruikt, zorg dat de genkernel initrd is geselecteerd in plaats van de de installatie CD initrd. Indien je genkernel niet gebruikt, is er een optie om de Linux root disk en partitie van de machine te bepalen. Vul deze met de gepaste waarden in. Afhangend van u kernelconfiguratie, zullen extra opstartargumenten mee gegeven moeten worden.

BootX kan geconfigureerd worden om Linux te starten tijdens het opstarten. Indien je dit doet, zal je eert je machine zien opstarten in MacOS en dan, tijdens het opstarten, zal BootX Linux laden en starten. Bekijk de BootX home page voor meer informatie.

Belangrijk: Wees zeker dat je ondersteuning voor HFS en HFS+ filesystems hebt in je kernel, anders zal je niet in staat zijn om de kernel te veranderen of up te daten op je MaxOS partitie.

Herstart nu opnieuw en start op in Linux, ga dan verder met (Je Gentoo Installatie afwerken).

1.  Alternatief: quik

quik zorgt dat OldWorld Macs kunnen opstarten zonder MacOS. Nochtans, het is niet goed ondersteunt en heeft enkele grillen. Indien je de keuze hebt is het aangeraden om BootX te gebruiken omdat het meer betrouwbaar is en gemakkelijker op te zetten dan quik.

Eerst zullen we quik moeten installeren:

Codevoorbeeld 1.1: Emerge quik

# emerge quik

Vervolgens zullen we het moeten configureren. Pas /etc/quik.conf aan en stel je image in naar de kernel die we naar de opstartpartitie gekopieerd hebben.

Codevoorbeeld 1.1: quik.conf configureren

# Voorbeeld van quik.conf
init-message = "Gentoo 2006.1\n"
partition = 2           # Dit is de boot partitie
root = /dev/hda4
timeout = 30
default = gentoo
image = /vmlinux        # Dit is jouw kernel
label = gentoo

Uw quik.conf bestand moet op dezelfde partitie als de quik opstartimages staan, nochtans kan het op een andere partitie staan op dezelfde schijf, toch is het aangeraden het naar je opstart partitie te verplaatsen.

Codevoorbeeld 1.1: quik.conf naar /boot verplaatsen

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

We zullen nu u opstartvariabelen veranderen zodat quik geladen wordt bij het opstarten. Om dit te doen zullen we een programma dat nvsetenv noemt gebruiken. De variabelen die je zal veranderen hangen af van machine tot machine, het is best om jouw machine's grillen eerst op te zoeken alvorens een poging te ondernemen.

Codevoorbeeld 1.1: De opstart variabelen instellen

# nvsetenv auto-boot true # Zet op vals indien je wilt opstarten in OF, niet alle modellen kunnen de OF uitvoer weergeven
# nvsetenv output-device video # Controleer de grillen pagina, er zijn veel mogelijke variaties
# nvsetenv input-device kbd
# nvsetenv boot-device scsi/sd@1:0 # Voor SCSI
# nvsetenv boot-device ata/ata-disk@0:0 # Voor ATA
# nvsetenv boot-file /boot/vmlinux-2.6.17 root=/dev/hda4 Het eerste item is de map van de kernel, het tweede is de root partitie. Je mag eender welke kerneloptie toevoegen aan het einde van deze lijn.
# nvsetenv boot-command boot # Zet dit op bye voor MacOS en boot voor Linux

Nota: Het is ook mogelijk om u opstartvariabelen voor MacOS te veranderen. Afhangend van het model zul je, bootvars of Apple System Disk moeten gebruiken. Bezoek snel de grillenpagina hierboven voor meer informatie.

Nu dat we je machine hebben ingesteld om op te starten, zullen we moeten controleren of de opstartimages correct geinstalleerd zijn. Voer quik -v -C /boot/quik.conf uit. Het zou je moeten vertellen dat het de eerste stage QUIK opstart blok heeft geinstalleerd.

Nota: Indien er iets verkeerd is gegaan, kan je altijd je PRAM resetten naar de standaardwaarden door command + option + p + r ingedrukt te houden voor je de machine opstart. Dit zal de waarden die je met nvsetenv ingesteld hebt verwijderen en zou je moeten toelaten om ofwel een MacOS opstartschijf of op een Linux opstartschijf op te starten.

Ga nu verder met de installatie Het systeem herstarten.

1.  Alternatief: BootCreator

Belangrijk: BootCreator zal een mooi SmartFirmware opstartmenu schrijven in Forth voor de Pegasos.

Verzeker u er eerst van dat je BootCreator op je systeem geinstalleerd hebt:

Codevoorbeeld 1.1: Bootcreator herstarten

# emerge --usepkg bootcreator

Kopieer nu het bestand /etc/bootmenu.example naar /etc/bootmenu en pas het aan je noden aan.

Codevoorbeeld 1.1: Het bootcreator configuratie bestand aanpassen

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

Hieronder staat een volledig /etc/bootmenu configuratie bestand. De kernel-naam en initrd-naam moeten vervangen worden door you kernel en initrd images naam.

Codevoorbeeld 1.1: bootcreator configuratie bestand

#
# Voorbeeld beschrijving bestand voor 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 (Normal)
ide:0 kernel-name video=radeonfb:1024x768@70 root=/dev/hda3

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

Als laatste moet het bootmenu overgebracht worden in Forth en naar de opstartpartitie gekopieerd worden, zodat de SmartFirmware het kan lezen. Daarom moet je bootcreator gebruiken:

Codevoorbeeld 1.1: Installeren van het opstartmenu

# bootcreator /etc/bootmenu /boot/menu

Nota: Kijk zeker eens in de SmartFirmware instellingen als je herstart, dat menu is het bestand dat standaard geladen zal worden.

Ga nu verder met de installatie met Het systeem herstarten.

1.  Het systeem herstarten

Verlaat de gechroote omgeving en unmount alle gemounte partities. Druk dan het magische commando in waar je al heel de tijd zat op te wachten: reboot.

Codevoorbeeld 1.1: De gechroote omgeving verlaten, alle partities unmounten en herstarten

# exit
livecd ~# umount /mnt/gentoo/proc /mnt/gentoo/dev /mnt/gentoo/sys /mnt/gentoo
livecd ~# reboot

Eens herstart in je Gentoo installatie, maak je systeem af met (Je Gentoo Installatie afwerken).

Upgedate op 13 november 2006

De originele versie van dit document wordt niet meer onderhouden

Donate to support our development efforts.

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