Chrooting
Optioneel: Mirrors selecteren
Om broncodes snel te kunnen downloaden, is het aanbevolen om een snelle mirror
te kiezen. Portage zal in het make.conf bestand zoeken naar de
GENTOO_MIRRORS variabele, de mirrors die deze bevat worden gebruikt. Je kunt
naar nze mirror lijst surfen en naar een
mirror (of mirrors) die dicht bij jou is (omdat deze vaak de snelste zijn),
maar we bieden ook een mooie tool genaamd mirrorselect aan. Deze biedt
een mooie interface om de mirrors die jij wil te kiezen.
# mirrorselect -i -o >> /mnt/gentoo/etc/make.conf
Kies geen IPv6 mirrors. Onze huidige stages ondersteunen geen IPv6.
Een tweede belangrijke instelling, is de SYNC instelling in
make.conf. Deze variabele bevat de rsync server die je wil
gebruiken als je de Portage boom (de verzameling ebuilds, alle informatie die
Portage nodig heeft om software te downloaden en te installeren) update. Hoewel
je handmatig een SYNC server kan opgeven, mirrorselect kan dit veel
makkelijker maken:
# mirrorselect -i -r -o >> /mnt/gentoo/etc/make.conf
Het is sterk aan te bevelen om na het draaien van mirrorselect alle
instellingen in /mnt/gentoo/etc/make.conf te controleren!
DNS Info kopieren
Voor we kunnen chrooten moet eerst de DNS informatie naar
/etc/resolv.conf gekopieerd worden. Dit is nodig omdat de nieuwe
omgeving de nameservers voor je netwerk moet kennen.
(De "-L" optie is nodig zodat zeker is dat we geen symbolische link copieren)
# cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf
Het proc filesystem mounten
Mount het /proc filesystem op /mnt/gentoo/proc om de
installatie toe te staan informatie die de kernel levert te gebruiken, zelfs in
de gechroote omgeving.
# mount -t proc none /mnt/gentoo/proc
De Nieuwe Omgeving
Nu alle partities aangemaakt zijn en de basis omgeving geïnstalleerd is,
kunnen we naar de nieuwe omgeving overstappen. Dit gebeurt door te
chrooten, dit betekent dat we van de installatie omgeving (LiveCD of
een ander installatie medium) overstappen naar de geïnstalleerde omgeving
(namelijk jouw aangemaakte partities).
Dit chrooten gebeurt in drie stappen. Eerst passen we de root aan van
/ (op het installatie medium) naar /mnt/gentoo (op je
partities) met chroot. Daarna maken we de nieuwe omgeving aan met
env-update welke alle omgevingsvariabelen aanmaakt. Als laatste laden
we die variabelen in het geheugen met source.
# chroot /mnt/gentoo /bin/bash
# env-update
* Caching service dependencies...
# source /etc/profile
Proficat! Je bent nu in je eigen Gentoo Linux omgeving. Uiteraard bent je nog
niet klaar, daarom wachten er nog een aantal secties op je :-)
Updaten van de Portage tree
Je dient nu je Portageboom to updaten naar de meest recente versie.
emerge --sync doet dit voor je.
# emerge --sync
Als er een waarschuwing komt dat er een update is voor Portage kun je dit
veilig negeren. We zullen Portage later tijdens de installatie wel updaten.
USE variabele configureren
USE is een van de meest krachtige variabelen die Gentoo biedt.
Verschillende programmas kunnen met optionele support voor bepaalde zaken
gecompileerd worden Bijvoorbeeld, sommigen met gtk-support of qt-support.
Anderen met of zonder SSL support. Sommige programmas kunnen zelfs met
framebuffer support (svgalib) in plaats van X11 support (X-server) gecompileerd
worden.
De meeste distributies compileren hun packages met support voor zoveel als
mogelijk, dit zorgt voor grotere programmas, langere laadtijden en meer
afhankelijkheden. Bij Gentoo ben je vrij in welke opties jij zelf wilt.
Dit is waar USE komt bij kijken.
In de USE variabele definieer je sleutelwoorden die aan compile-opties
gelinked zijn. Bijvoorbeeld, ssl zal ssl-support compileren bij alle
programmas die dat ondersteunen. -X verwijderd X-server support (let op
de min). gnome gtk -kde -qt zal je programmas met gnome (en gtk)
support, maar niet met kde (en qt) support compileren, zo is je systeem
volledig getweaked voor GNOME.
De standaard USE instellingen staan in de make.defaults
bestanden van jouw profiel. Je zult make.defaults bestanden vinden
in de map waarnaar /etc/profile verwijst en tevens in alle
bovenliggende mappen. De standaard USE instelling is de som van alle
USE instellingen in alle make.defaults bestanden. Wat je
zelf in /etc/make.conf plaatst, wordt berekend tegen de standaard
instellingen. Als je iets toevoegt aan USE wordt het in de standaard
opgenomen. Als je iets verwijdert van USE wordt dit uit de standaard
weggehaald (indien het er in zat). Pas nooit iets aan binnen
/etc/make.profile; dit bestand wordt overschreven bij een een
update van Portage!
Een volledige beschrijving van USE is te vinden in het tweede deel van
het Gentoo Handboek, USE vlaggen. Alle
beschikbare USE vlaggen zijn te vinden op je systeem onder
/usr/portage/profiles/use.desc.
# less /usr/portage/profiles/use.desc
(Je kunt scrollen met je pijltjes toetsen, afsluiten door 'q' in te drukken
Als voorbeeld USE instelling: een KDE-gebaseerd systeem met DVD, ALSA
en CD Recording support:
# nano -w /etc/make.conf
USE="-gtk -gnome qt kde dvd alsa cdr"
Optional: GLIBC Locales
Je zult waarschijnlijk slechts een of misschien twee locales op je systeem
willen. Als je nu glibc compileert zal een volledige set van alle
beschikbare locales gemaakt worden. Je kunt userlocales als USE vlag
instellen en alleen de locales die je nodig hebt in
/etc/locales.build neerzetten. Doe dit alleen als je weet welke
locales je wilt.
# mkdir /etc/portage
# echo "sys-libs/glibc userlocales" >> /etc/portage/package.use
kies nu de locales die jij nodig hebt:
# nano -w /etc/locales.build
De volgende locales zijn een voorbeeld om Engelse (Verenigde Staten) en Duitse
(Duitsland) locales te krijgen met bijpassende character formaten (zoals UTF-8).
en_US/ISO-8859-1
en_US.UTF-8/UTF-8
de_DE/ISO-8859-1
de_DE@euro/ISO-8859-15
van Stage1 naar Stage2
Introductie tot Bootstrapping
Dus je wil alles vanaf nul compileren? Ok dan :-)
In deze stap zullen we het Gentoo systeem bootstrappen. Dit duurt lang maar
het resulteert in een volledig geoptimaliseerd systeem voor jouw machine.
Bootstrapping betekent de GNU C Library, GNU Compiler Collectie en een
aantal andere systeem programmas compileren.
Voor we met de bootstrap beginnen wil je misschien eerst alle benodigde
broncodes downloaden. Indien je deze niet wilt kan je verder met
het Systeem Bootstrappen.
Optioneel: De sources eerst downloaden
Het is mogelijk om eerst alle source code af te halen en daarna pas het
bootstrappen te starten (als je niet wil dat je internet connectie de hele
tijd open staat). Indien je dit niet doet gebeurt dit wel automatisch, maar
dan heb je een permanente netwerk connectie nodig. Gebruik hiervoor de
-f optie van het bootstrap script, dit fetcht alle code voor u.
# cd /usr/portage
# scripts/bootstrap.sh -f
het Systeem Bootstrappen
Nu kan je het bootstrap script starten. Daarna kan je maar best wat anders
gaan doen, want dit duurt redelijk lang. (Bijvoorbeeld de Gentoo developers
lastig vallen op #gentoo)
# cd /usr/portage
# scripts/bootstrap.sh
Als je de ntpl USE vlag hebt gebruikt, dan is het mogelijk dat
bootstrap.sh mislukt met het bericht dat linux-headers de
installatie van linux26-headers blokkeert. Als je deze foutmelding
krijgt, verwijder linux-headers en probeer het opnieuw:
# emerge -C linux-headers
# emerge --oneshot --nodeps linux26-headers
# scripts/bootstrap.sh
Ga nu door met de volgende stap van Stage2
naar Stage3.
van Stage2 naar Stage3
Introductie
Als je deze sectie leest heb je een gebootstrapped systeem (ofwel omdat je
het daarnet zelf gedaan hebt, ofwel gebruik je een stage2).
Dan is het nu tijd om alle syteem pakketten te compileren.
Allemaal? Nee, in deze stap worden enkel deze gemaakt waarvoor er geen
alternatieven zijn. Sommige pakketten hebben meerdere alternatieven (onder
andere system loggers) en Gentoo draait rond keuzes, dus we leggen er
je geen op.
Optioneel: Zien wat er gaat gebeuren
Als je wil weten welke pakketten er geinstalleerd zullen worden, voer dan
emerge --pretend system uit. Dit geeft een lijst van alle te
installeren pakketten. Het kan gebeuren dat je hiervoor less of
more nodig hebt omdat de lijst aardig lang kan worden.
# emerge --pretend system | less
Optioneel: de Sources downloaden
Als je wil dat emerge eerst de sources download voor je verder gaat
(als je niet wil dat uw connectie open staat terwijl je het syteem compileert)
kan je de --fetchonly optie van emerge gebruiken.
# emerge --fetchonly system
het Systeem compileren
Om te starten met het systeem te compileren, voer je emerge system uit.
Dit duurt ook een tijdje, dus kan je je maar beter ergens anders mee bezig
houden.
# emerge system
Je kunt nu veilig iedere waarschuwing over het updaten van configuratie
bestanden (en etc-update draaien) negeren. Als je Gentoo systeem volledig
is geïnstalleerd en opgestart, lees dan onze documentatie over Configuratie bestanden bescherming.
Als hij klaar is, ga je verder met de Kernel
configureren.