|
1.
Een stage tarball installeren
De datum/tijd goed zetten
Voordat u verder gaat moet u de datum/tijd controleren en goed zetten. Een
verkeerd ingestelde klok kan leiden tot vreemde resultaten in de toekomst!
Om de datum/tijd te controleren, type date:
Codevoorbeeld 1.1: De datum/tijd controleren |
# date
Fri Mar 29 16:21:18 UTC 2005
|
Als de weergegeven datum/tijd verkeerd is, update hem door middel van date
MMDDuummJJJJ syntax (Maand, Dag, uur, minuten
en Jaar). De tijdzone stellen we pas later in, dus op dit moment kunt u
het beste UTC tijd gebruiken. Om bijvoorbeeld de klok op 16:21 op 29 maart
2005 te zetten, gebruikt ui:
Codevoorbeeld 1.1: De UTC datum/tijd goed zetten |
# date 032916212005
|
Uw keuze maken
De volgende stap die u moet zetten is het installeren van de stage3
tarball op uw systeem. U heeft de keuze om de benodigde tarball van het
internet te downloaden of, wanner u de Gentoo Universele Installatie CDs
gebruikt, van de CD te kopiëren. Als u de Universele CD hebt en de stage die u
wilt staat op de CD, is downloaden van het internet een verspilling van bandbreedte
omdat de stage bestanden toch hetzelfde zijn. In de meeste gevallen kan het
commando uname -m worden gebruikt bij het bepalen van het te downloaden
stage bestand.
1.
Standaard: Een Stage van het internet gebruiken
Downloaden van de stage tarball
Ga naar het Gentoo mountpunt waar uw bestandssysteem is aangekoppeld
(zeer waarschijnlijk /mnt/gentoo):
Codevoorbeeld 1.1: Naar het Gentoo mountpunt gaan |
# cd /mnt/gentoo
|
Afhankelijk van jouw installatie medium zijn er een aantal tools beschikbaar om
een stage te downloaden. Wanner u links tot uw beschikking heeft, kunt u
direct naar de Gentoo mirrorlijst surfen
en een mirror zoeken die dicht bij u is.
Indien u links niet to uw beschikking heeft, dan zou u wel lynx
moeten hebben. Indien u via een proxy moet, exporteer dan de http_proxy
en ftp_proxy variabelen:
Codevoorbeeld 1.1: Uw proxy instellen voor lynx |
# export http_proxy="http://proxy.server.com:port"
# export ftp_proxy="http://proxy.server.com:port"
|
We nemen nu aan dat u links tot uw beschikking hebt.
Zoek de releases map, gevolgd door uw architectuur
(x86/ bijvoorbeeld) en de Gentoo versie (2006.1/) en
tot slot de stages/ map. Daar zou u alle voor jouw architecuur
beschikbare stage bestanden moeten zien (soms zitten zo nog in submappen voor
individuele subarchitecturen). Kies er een en druk op D om te downloaden.
Als het bestand binnen is, drukt u op Q om de browser af te sluiten.
Codevoorbeeld 1.1: Naar de mirror lijst surfen met links |
# links http://www.gentoo.org/main/en/mirrors.xml
# links -http-proxy proxy.server.com:8080 http://www.gentoo.org/main/en/mirrors.xml
|
Check nog een keer of u een stage3 tarball heeft - installaties met een
stage1 of stage2 tarball worden niet meer ondersteund.
Wanner u de integriteit van een gedownloade stage tarball wilt controleren,
kunt u md5sum gebruiken en vergelijken met de MD5 checksum die jouw
mirror levert. Om bijvoorbeeld de correctheid van de x86 stage tarball te
controleren:
Codevoorbeeld 1.1: Voorbeeld controle van een stage tarball |
# md5sum -c stage3-x86-2006.1.tar.bz2.DIGESTS
stage3-x86-2006.1.tar.bz2: OK
|
De stage tarball uitpakken
Belangrijk:
Als je gebruikt maakt van een ${arch}, en gebruik maakt van de
InstallatieLiveCD, zul je de stages niet op de cd staan hebben. Je zult de
instructies moeten volgen voor Een stage Tarball van het
Internet gebruiken.
|
Pak de door u gedownloade stage uit op uw systeem. Wij gebruiken GNU's
tar om verder te gaan, omdat het de simpelste methode is:
Codevoorbeeld 1.1: De stage uitpakken |
# tar xvjpf stage3-*.tar.bz2
|
Zorg dat u dezelfde opties (xvjpf) gebruikt. De x staat voor
Extract (uitpakken), de <v> voor Verbose om te zien wat er
gebeurt tijdens het uitpakken (oke, deze is optioneel), de j voor
Decompress met bzip2, de p voor Preserve permissions
(behoud rechten) en de f om duidelijk te maken dat we een bestand willen
uitpakken en niet standaard input.
Nota:
De Installatie CDs en boot images van sommige architecturen (MIPS bijvoorbeeld)
steunen op de in de BusyBox ingebouwde tar welke op dit moment de
-v optie niet ondersteunt. Gebruik dan alleen xjpf als opties.
|
Nu de stage geïnstalleerd is, gaat u verder met Portage installeren
1.
Alternatief: Een Stage van de Installatie CD gebruiken
De stage tarball uitpakken
Belangrijk:
Wanneer u op een x86 systeem de Installatie LiveCD gebruikt, zijn de stages
niet terug te vinden op de CD. U kunt dan de instructies voor een stage tarball van het internet door nemen.
|
De stages op de CD bevinden zich in de /mnt/cdrom/stages map. Om
een lijst te zien van alle beschikbare stages gebruikt u ls:
Codevoorbeeld 1.1: Alle beschikbare stages zien |
# ls /mnt/cdrom/stages
|
Als het systeem een foutmelding geeft dient u mogelijk eerst de CD te mounten:
Codevoorbeeld 1.1: De CD mounten |
# ls /mnt/cdrom/stages
ls: /mnt/cdrom/stages: No such file or directory
# mount /dev/cdroms/cdrom0 /mnt/cdrom
# ls /mnt/cdrom/stages
|
Ga nu naar uw Gentoo mountpunt (meestal /mnt/gentoo):
Codevoorbeeld 1.1: naar de map /mnt/gentoo gaan |
# cd /mnt/gentoo
|
We zullen nu de stage tarball van jouw keuze uitpakken. We zullen hierbij GNU's
tar gebruiken. Zorg dat u dezelfde opties (xvjpf) gebruikt!
Het v argument is optioneel en wordt niet ondersteund in sommige
tar versies. In het volgende voorbeeld zullen we de stage tarball
stage3-<subarch>-2006.1.tar.bz2 uitpakken.
Zorg dat u de bestandsnaam vervangt door uw stage.
Codevoorbeeld 1.1: De stage tarball uitpakken |
# tar xvjpf /mnt/cdrom/stages/stage3-<subarch>-2006.1.tar.bz2
|
Nu de stage geïnstalleerd is, ga verder met Portage installeren
1.
Portage installeren
Een Portage snapshot uitpakken
Nu kunt u een Portage snapshot installeren, een verzameling van bestanden die
Portage vertellen welke software pakketten u kunt installeren, welke profielen
beschikbaar zijn, etc.
Download en installeer een Portage snapshot
Ga naar het mountpunt waar u het bestandssysteem hebt gemount (zeer
waarschijnlijk /mnt/gentoo):
Codevoorbeeld 1.1: Naar het Gentoo mountpunt |
# cd /mnt/gentoo
|
Start links (of lynx) en ga naar onze Gentoo mirror lijst. Kies een mirror dicht bij
u en open de snapshots/ map. Download daar de laatste Portage
snapshot (portage-latest.tar.bz2) door hem te selecteren en op
D te drukken.
Codevoorbeeld 1.1: Naar de Gentoo mirrorlijst toe gaan |
# links http://www.gentoo.org/main/en/mirrors.xml
|
Sluit nu uw browser af door op Q te drukken. U heeft nu een Portage
snapshot opgeslagen in /mnt/gentoo.
Indien u wilt checken of het bestand dat u hebt gedownload gelijk is aan het
origineel, dan kunt u dat doen met md5sum door het resultaat daarvan te
vergelijken met het resultaat dat u op de mirror waar u van download kunt vinden.
In de volgende stap zullen we de Portage snapshot uitpakken op uw systeem. Zorg
dat u het exacte commando gebruikt; de laatste optie is een hoofdletter C,
geen c.
Codevoorbeeld 1.1: Uitpakken van het Portage snapshot |
# tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr
|
1.
De compilatie opties configuren
Introductie
Om Gentoo te optimaliseren kunt u een aantal variabelen instellen die invloed
hebben op het gedrag van Portage. Al deze variabelen kunnen worden ingesteld
als omgevingsvariabele (met behulp van export), maar dat is niet
permanent. Om deze instellingen te behouden biedt Portage /etc/make.conf
, een configuratie bestand voor Portage. Het is dit bestand die we nu
gaan bewerken.
Nota:
Een lijst met commentaar van alle beschikbare variabelen kan worden gevonden in
/mnt/gentoo/etc/make.conf.example. Voor een succesvolle Gentoo
installatie moet u alleen de variabelen instellen die hieronder worden genoemd.
|
Start uw favoriete editor (in deze handleiding gebruiken we nano) zodat
we de optimalisatie variabelen die hierna worden besproken kunnen aanpassen.
Codevoorbeeld 1.1: /etc/make.conf openen |
# nano -w /mnt/gentoo/etc/make.conf
|
Zoals u waarschijnlijk hebt gemerkt is make.conf.example in een
algemene manier gestructureerd: commentaar regels beginnen met een "#", andere
regels bepalen variabelen door middel van de VARIABELE="inhoud" syntax.
Het make.conf bestand gebruikt dezelfde syntax. Enkele van die
variabele worden nu besproken.
CHOST
De CHOST variabele bepaalt voor welke architectuur wordt gecompileerd.
Deze variabele is al juist ingesteld. Pas deze niet aan
aangezien dit uw besturingssysteem kan beschadigen. Als de CHOST
variabele verkeerd lijkt, kan het zijn dat u de verkeerde stage3 gebruikt.
CFLAGS and CXXFLAGS
De CFLAGS en respectievelijk CXXFLAGS variabelen bepalen de
optimalisatie vlaggen voor de gcc C en respectievelijk C++ compiler.
Hoewel we deze in het algemeen hier bepalen, zult u alleen de maximale
prestaties krijgen wanneer u deze vlaggen apart voor elk programma bepaalt. De
reden hiervoor is dat elk programma anders is.
In make.conf kunt u die optimalisatie vlaggen plaatsen waarbij u
denkt dat uw systeem over het algemeen het meeste baat heeft.
Plaats geen experimentele instellingen in deze variabele; te veel optimalisaties
kunnen programma's zich slecht laten gedragen (crash, of erger, slecht
functioneren).
We zullen niet alle mogelijke optimalisatie opties bespreken. Als u ze allemaal
wilt weten, lees de GNU Online
Manual(s) (Engelstalig) of de gcc info pagina (info gcc --
werkt alleen op een werkend Linux systeem). Het make.conf.example
bestand bevat ook een boel voorbeelden en informatie; vergeet dit niet ook te
lezen.
De eerste instelling is de -march= vlag welke de naam van de doel
architectuur bepaalt. Mogelijke opties worden beschreven in het
make.conf.example bestand (als commentaar). Voor bijvoorbeeld de
x86 Athlon XP architectuur:
Codevoorbeeld 1.1: De GCC march instelling |
-march=athlon-xp
|
Een tweede is de -O vlag (dat is een hoofdletter O, geen nul) welke
de gcc optimalisatie klasse vlag bepaalt. Mogelijke klassen zijn
s (voor bestandsgrootte-optimalisatie (in Engels size)), 0 (nul
- geen optimalisaties), 1, 2 of 3 voor
snelheids-optimalisatie vlaggen (iedere klasse heeft dezelfde vlaggen als de
voorgaande, plus wat extras). Bijvoorbeeld een klasse-2 optimalisatie:
Codevoorbeeld 1.1: De GCC O instelling |
-O2
|
Een andere populaire optimalisatie vlag is -pipe (gebruikt pipes in
plaats van tijdelijke bestanden voor de communicatie tussen de verschillen
stages van het compileren).
Let er op dat het gebruik van -fomit-frame-pointer (welke de frame
pointer niet in een register zet voor functies die dat niet nodig hebben)
serieuze gevolgen kan hebben voor het debuggen van applicaties!
Op het moment dat u de CFLAGS en CXXFLAGS bepaalt, zou u enkele
optimalisatie vlaggen kunnen combineren, zoals in het volgende voorbeeld:
Codevoorbeeld 1.1: Defining the CFLAGS and CXXFLAGS variable |
CFLAGS="-march=athlon-xp -pipe -O2"
CXXFLAGS="${CFLAGS}"
|
MAKEOPTS
Met MAKEOPTS kunt u instellen hoeveel parallelle compilaties tegelijk
plaats moeten vinden als u een pakket installeert. Een goede keuze is het
aantal CPU's in het systeem plus een, maar deze vuistregel is niet altijd
perfect.
Codevoorbeeld 1.1: MAKEOPTS voor een algemeen, 1-CPU systeem |
MAKEOPTS="-j2"
|
Klaar, op uw plaatsen, af!
Update uw /mnt/gentoo/etc/make.conf naar wens en sla
hem op (nano gebruikers zouden Ctrl-X moeten gebruiken). U bent
nu klaar om verder te gaan met (Installatie van
het Gentoo Basis Systeem).
|