Disclaimer :
This document is not valid and is not maintained anymore.
|
[ << ]
[ < ]
[ Hjem ]
[ > ]
[ >> ]
6. Installation af Gentoo basissystem
Indhold:
6.a. At skifte rod-mappe (Chrooting)
Valgfrit: Valg af filspejle
For at hente kildekoderne hurtigt, er det anbefalet at vælge en hurtig filspejl.
Portage vil kigge i din make.conf-fil efter GENTOO_MIRRORS-variablen
og brug filspejlene deri. Du kan kigge igennem vores Filspejle liste
og søge efter en filspejl (eller filspejle), som er i nærheden af dig (de er typisk
også dem der er de hurtigste), men vi leverer et lækkert værktøj kaldet mirrorselect
som leverer dig en grænseflade til at vælge de filspejle du vil have.
Kode oversigt 1.1: Brug af mirrorselect til GENTOO_MIRRORS-variablen |
# mirrorselect -i -o >> /mnt/gentoo/etc/make.conf
|
Advarsel:
Vælg ikke nogen IPv6 filspejle. Vores stage-filer understøtter på nuværende tidspunkt ikke IPv6.
|
En anden vigtig indstilling er SYNC-indstillingen i make.conf. Denne
variabel indeholder rsync-seren, som du ønsker at bruge, når du opdaterer dit
Portage-træ (samlingen af ebuilds og scripts, som indeholder alle informationer, som
Portage har brug for at hente og installere software). Selvom du kan manuelt indtaste
serveren selv, kan mirrorselect gør dette let for dig:
Kode oversigt 1.2: Valg af rsync-filspejl ved brug af mirrorselect |
# mirrorselect -i -r -o >> /mnt/gentoo/etc/make.conf
|
Efter at have kørt mirrorselect, er det klogt at kigge alle indstillingerne
igennem i /mnt/gentoo/etc/make.conf!
Kopiering af DNS-information
Der mangler stadig én ting, før vi skifter til det nye miljø, og det
er at kopiere DNS-informationerne i /etc/resolv.conf. Du
skal gøre dette for at sikre, at netværket stadig virker, efter
skiftet til det nye miljø. /etc/resolv.conf indeholder
navneserverne til dit netværk.
Kode oversigt 1.3: Kopiering af DNS-information |
# cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf
|
Mount af proc-filsystemet
Mount /proc-filsystemet til /mnt/gentoo/proc for at tillade installationen at bruge de kerne-leverede informationer, selv inde i det chrootede miljø.
Kode oversigt 1.4: Mount af /proc |
# mount -t proc none /mnt/gentoo/proc
|
Skift til det nye miljø
Nu, hvor alle partitionerne er initialiseret og basismiljøet
installeret, er det tid til at skifte til vores nye installationsmiljø,
ved at lave et rod skifte. Det betyder at vi skifter fra
det nuværende installationsmiljø (installationsCD eller andet installationsmedie)
til dit installationssystem (nemlig de initialiserede partitioner).
Denne rodskiftning gøres i tre skridt. Først vil vi ændre roden fra
/ (på installationsmediet) til /mnt/gentoo
(på dine partitioner) ved at bruge chroot. Derefter vil vi
skabe et nyt miljø ved at bruge env-update, som hovedsageligt
opretter miljø-variabler. Til sidst indlæser vi disse variabler ind i
hukommelsen, ved brug af source.
Kode oversigt 1.5: Skifte til det nye miljø |
# chroot /mnt/gentoo /bin/bash
# env-update
* Caching service dependencies...
# source /etc/profile
|
Tillykke! Du er nu inde i dit eget Gentoo Linux miljø.
Selvfølgelig er det langt fra færdig, hvilket er derfor installationen
stadigvæk har nogle sektioner tilbage :-)
Opdatering af Portage-træet
Du bør nu opdatere dit Portage-træ til den sidste nye. emerge --sync
gør dette for dig.
Kode oversigt 1.6: Opdatering af Portage-træet |
# emerge --sync
# emerge --sync --quiet
|
Hvis du er bag en firewall, som blokerer rsync-trafik, kan du bruge
emerge-webrsync, som vil hente og installere en portage-snapshot til
dig.
Hvis du bliver advaret om, at der eksisterer en ny version af Portage og
at du skal opdatere Portage, bør du ignorere det. Portage
bliver opdateret for dig senere under installationen.
Valg af den rigtige profil
Først introducerer vi lige en definition.
En profil er en byggeklods til alle Gentoo-systemer. Den specificere ikke kun
standardværdier til CHOST, CFLAGS og andre vigtige variabler, den låser også
systemet til et specifikt område af pakkeversioner. Disse er alle håndteret af
Gentoo-udviklere.
Tidligere var sådan en profil næsten aldrig rørt af en bruger. Dog kan
x86-, hppa- og alpha-brugere vælge to profiler, en til 2.4-kernen og
en til 2.6-kernen. Dette krav er blevet fremsat for at forbedre
integrationen af 2.6-kerner. ppc- og ppc64-arkitekturerne har også
yderligere profiler tilgængeligt. Vi vil tale om dem senere.
Du kan se hvilke profiler, som du bruger på nuværende tidspunkt, med følgende
kommando:
Kode oversigt 1.7: Verifikation af systemprofil |
# ls -FGg /etc/make.profile
lrwxrwxrwx 1 48 Apr 8 18:51 /etc/make.profile -> ../usr/portage/profiles/default-linux/x86/2005.1/
|
Hvis du bruger en af de tidligere nævnte tre arkitekturer, vil standardprofilen
give dig et Linux 2.6-baseret system. Det er anbefalet som standard, men du har
også mulighed for at vælge en anden profil.
Nogen brugere ønsker at installere et system baseret på den gamle Linux 2.4-profil.
Hvis du har en god begrundelse for dette, bør du først kigge efter om en
yderligere profil eksisterer. På x86, kan vi gøre dette med følgende kommando:
Kode oversigt 1.8: Finding af at yderligere profil eksisterer |
# ls -d /usr/portage/profiles/default-linux/x86/2005.1/2.4
/usr/portage/profiles/default-linux/x86/2005.1/2.4
|
Det ovenstående eksempel viser at den yderligere 2.4 profil eksisterer (f.eks.
klagede den ikke over en manglede fil eller folder). Det er anbefalet at du
bruger standarden, men hvis du ønsker at skifte, kan du gøre som følgende:
Kode oversigt 1.9: Skifte til en 2.4 profil |
# ln -snf /usr/portage/profiles/default-linux/x86/2005.1/2.4 /etc/make.profile
# ls -FGg /etc/make.profile/
total 12
-rw-r--r-- 1 939 Dec 10 14:06 packages
-rw-r--r-- 1 347 Dec 3 2004 parent
-rw-r--r-- 1 573 Dec 3 2004 virtuals
|
Til ppc, er der en del nye profiler leveret med 2005.1.
Kode oversigt 1.10: PPC-profiler |
# ln -snf /usr/portage/profiles/default-linux/ppc/2005.1/ppc /etc/make.profile
# ln -snf /usr/portage/profiles/default-linux/ppc/2005.1/ppc/G3 /etc/make.profile
# ln -snf /usr/portage/profiles/default-linux/ppc/2005.1/ppc/G3/Pegasos/ /etc/make.profile
# ln -snf /usr/portage/profiles/default-linux/ppc/2005.1/ppc/G4 /etc/make.profile
# ln -snf /usr/portage/profiles/default-linux/ppc/2005.1/ppc/G4/Pegasos/ /etc/make.profile
|
Til ppc64, er der en del nye profiler leveret med 2005.1.
Kode oversigt 1.11: PPC64-profiles |
# ln -snf /usr/portage/profiles/default-linux/ppc/2005.1/ppc64/64bit-userland /etc/make.profile
# ln -snf /usr/portage/profiles/default-linux/ppc/2005.1/ppc64/32bit-userland /etc/make.profile
# ln -snf /usr/portage/profiles/default-linux/ppc/2005.1/ppc64/(userland)/970 /etc/make.profile
# ln -snf /usr/portage/profiles/default-linux/ppc/2005.1/ppc64/(userland)/970/pmac /etc/make.profile
# ln -snf /usr/portage/profiles/default-linux/ppc/2005.1/ppc64/(userland)/power3 /etc/make.profile
# ln -snf /usr/portage/profiles/default-linux/ppc/2005.1/ppc64/(userland)/power4 /etc/make.profile
# ln -snf /usr/portage/profiles/default-linux/ppc/2005.1/ppc64/(userland)/power5 /etc/make.profile
|
Opsætning af USE-variabler
USE er en af de mest kraftfulde variabler, som Gentoo udbyder
til dens brugere. Mange programmer kan kompileres med eller uden
valgfri understøttelse af bestemte ting. For eksempel, kan nogle programmer
kompileres med gtk understøttelse, eller med qt understøttelse. Andre
kan kompileres med eller uden SSL understøttelse. Nogle programmer kan
endda kompileres med framebuffer understøttelse (svgalib) i stedet for
X11-understøttelse (X-server).
De fleste distributioner kompilerer deres pakker med understøttelse for så
meget som muligt, hvilket forøger størrelsen og starttiden på
programmerne, for ikke at tale om de enorme mængder af afhængigheder.
Med Gentoo kan du selv definere, hvilke muligheder, dine pakker skal
kompileres med. Det er her USE, kommer ind i spillet.
I USE-variablen, definerer du nøgleord, som bliver lagt oven på
kompileringsparametrene. For eksempel vil ssl kompilere
ssl understøttelse ind i de programmer, der understøtter det. -X vil
fjerne understøttelse af X-server (bemærk minus-tegnet forrest).gnome gtk
-kde -qt vil kompilere dine programmer med gnome (og gtk) understøttelse,
men ikke med kde (og qt) understøttelse, hvilket gør dit system fuldt ud
fin-indstillet til GNOME.
Standard USE-indstillingerne er placeret i make.defaults-filerne
for din profil. Du finder make.defaults-filerne i folderen, som
/etc/make.profile peger på samt alle næstgående foldere. Standard USE-indstilling
er summen af alle USE-indstillinger i alle make.defaults-filere.
Hvad du placerer i /etc/make.conf bliver udregnet mod
disse standardværdier. Hvis du lægger noget til USE-indstillingen,
bliver den lagt til standardlisten. Hvis du fjerner
noget fra USE-indstillingen (ved at placere et minus-tegn foran
det) så bliver det fjernet fra standardlisten (hvis det på noget
tidspunkt var til stede). Redigér ALDRIG noget i
/etc/make.profile biblioteket; det bliver overskrevet når
du opdaterer Portage!
En fuld beskrivelse af USE kan findes i den anden halvdel af
Gentoo-håndbogen, USE-flag.
En fuld beskrivelse er tilgængeligt. USE-flag kan blive fundet i dit system ved
/usr/portage/profiles/use.desc.
Kode oversigt 1.12: Se mulige USE-flag |
# less /usr/portage/profiles/use.desc
|
Som et eksempel, viser vi en USE-indstilling til et KDE baseret system med DVD, ALSA og brænding af CD-ROM understøttelse:
Kode oversigt 1.13: Åbning af /etc/make.conf |
# nano -w /etc/make.conf
|
Kode oversigt 1.14: USE indstilling |
USE="-gtk -gnome qt kde dvd alsa cdr"
|
Valgfrit: GLIBC Locales
Du vil sikkert bruge en eller måske to locales på dit system. Indtil nu
efter samlingen af glibc, var et fuld sæt af locales være tilgængelige og
oprettet. Fra nu af kan du aktivere userlocales USE-flaget og specifere
kun de locales, du har brug for i /etc/locales.build. Gør kun dette,
hvis du ved hvilke locales, som du kan vælge. Dette vil ikke virke til bootstrapping,
men når du gensamler glibc bagefter vil den.
Kode oversigt 1.15: Aktivering af userlocales USE-flag, specielt til glibc |
# mkdir -p /etc/portage
# echo "sys-libs/glibc userlocales" >> /etc/portage/package.use
|
Specificer nu locales, som du ønsker at bruge:
Kode oversigt 1.16: Åbning af /etc/locales.build |
# nano -w /etc/locales.build
|
De følgende er eksempler på hvad du får ved både Engelsk (Amerikansk) og
Tysk (Tyskland) med de tilhørende karakter-formater (som UTF-8).
Kode oversigt 1.17: Specificering af dine locales |
en_US/ISO-8859-1
en_US.UTF-8/UTF-8
de_DE/ISO-8859-1
de_DE@euro/ISO-8859-15
|
6.b. Forskelle mellem Stage1, Stage2, og Stage3
Sæt dig ned og tænk over de tidligere trin. Vi bad dig vælge
stage1, stage2 eller stage3 og advarede dig, om
at dit valg ville være vigtigt for de videre installationstrin.
Her er det første sted, hvor dit valg definerer de følgende trin.
-
Hvis du valgte stage1, så skal du følge begge trin i
dette kapitel (startende med Fra Stage1 til Stage2)
-
Hvis du valgte stage2 skal du kun springe det første
trin over og straks starte med det andet trin (Fra Stage2 til Stage3)
-
Hvis du valgte stage3 så kan du
springe begge trin over og fortsætte med Opsætning af kernen
6.c. Fra Stage1 til Stage2
Introduktion til bootstrapping
Så du vil kompilere alting fra bunden? jamen okay så :-)
I dette trin vil vi bootstrappe dit Gentoo system.
Dette tager lang tid, men resultatet er et system, som er blevet
optimeret, fra bunden og op, til din specifikke maskine og dine behov.
At bootstrappe betyder at man bygger GNU C biblioteket, GNU
Compiler Collection og flere andre nøgle-systemprogrammer. GNU
Compiler Collectionen skal enddag bygges to gange: Først med den
generelle compiler, som vi udbyder, og en anden gang med den compiler,
du lige har bygget.
Før vi starter med at bootstrappe, vil du måske hente alt kildekode først.
Hvis du ikke vil gøre dette, fortsæt med Bootstrap af systemet.
Valgfrit: Hent kildekoden først
Hvis du ikke har kopieret alt kildekoden til dit system tidligere, så
vil bootstrap-scriptet automatisk hente alle de nødvendige filer.
Hvis du vil hente kildekoden først og så senere bootstrappe system
(f.eks. fordi du ikke vil have din internet forbindelse åben under
kompilering) så kan du bruge -f (bogstavet f for det engelske
fetch) parameteren på bootstrap-scriptet,
det vil resultere i at den henter alt kildekoden for dig.
Kode oversigt 3.1: Download den nødvendige kildekode |
# cd /usr/portage
# scripts/bootstrap.sh -f
|
Bootstrappe af systemet
Okay så, tag dit keyboard og tast den næste kommando ind for at starte
bootstrap-processen. Gå derefter et eller andet sted hen og underhold
dig selv fordi det her kommer til at tage en god del tid, at blive færdig med.
Kode oversigt 3.2: At bootstrappe systemet |
# cd /usr/portage
# scripts/bootstrap.sh
|
Forsæt nu med det næste trin, Fra Stage2 til Stage3.
6.d. Fra Stage2 til Stage3
Introduktion
Hvis du læser denne sektion, så har du et bootstrappet system (enten
fordi du selv har bootstrappet tidligere, eller fordi du bruger en
stage2). Du skal nu til at bygge alle systempakkerne.
Alle systempakkerne? Nej ikke rigtigt. I dette trin bygger du
de system pakker, hvor der ikke er nogle alternativer til, og som skal
bruges til et virkende system. Nogle system pakker har flere
alternativer (så som system loggere) og eftersom Gentoo, handler om
valg, så vil vi ikke tvinge en type ned over hovedet på dig.
Valgfrit: Oversigt over hvad der bliver lavet
Hvis du vil vide hvilke pakker, der vil blive installeret, så kan du køre
emerge --pretend --emptytree system.
Dette vil vise en liste med alle pakker der vil blive kompileret.
Eftersom den liste er rimelig stor skal du nok bruge en pager som
f.eks. less eller more til at gå op og ned gennem listen.
Kode oversigt 4.1: Vis hvad 'emerge system' vil gøre |
# emerge --pretend --emptytree system | less
|
Noter at hvis du ikke har rørt ved standard CFLAGS/CXXFLAGS-indstillinger, er brug af
emerge --pretend --newuse system nok: det vil genbygge
programmer, som er berørte af ændringer i USE-flags (i sammenligning med de USE-flag,
som vi brugte, da vi byggede stage2). Hvis du heller ikke rørte
ved USE-flag heller, hvorfor kører du så en stage2-installation?
Valgfrit: Hente kildekoder
Hvis du vil have emerge til at downloade kildekoden, før du
fortsætter (f.eks. fordi du ikke vil have internet-forbindelsen åben,
mens du kompilerer alle pakkerne) så kan du bruge --fetchonly
parametren til emerge, som vil hente alt kildekode for dig.
Kode oversigt 4.2: Hentning af kildekoder |
# emerge --fetchonly --emptytree system
|
Opbygning af systemet
For at starte opbygningsprocessen af system, skal du køre emerge
--emptytree system. Dette trin tager forholdsvis lang tid at færdiggøre så find
på noget andet at lave end at stirre ind i skærmen.
Kode oversigt 4.3: Opbygning af systemet |
# emerge --emptytree system
|
Igen, hvis du ikke har rørt ved standard CFLAGS- og CXXFLAGS-indstillinger, er brug
af --newuse nok.
Du kan nu med sikkerhed ignorere alle advarsler omkring de opdaterede
opsætningsfiler (og køre etc-update). Når dit Gentoo system er
fuldt installeret og genstartet, læs da vores dokumentation omkring opsætning af filbeskyttelse.
Når opbygningen er færdig, skal du forsætte med Opsætning af kernen.
[ << ]
[ < ]
[ Hjem ]
[ > ]
[ >> ]
Indholdet i dette dokument er autoriseret under en Creative Commons -
Attribution / Share Alike licens.
|