Gentoo
Från Unix.se, den fria unixresursen.
Gentoo är en distribution som fokuserar på användaranpassning och optimering.
Innehåll |
Filosofi
Gentoo utvecklas av ett antal frivilliga programmerare över Internet. Upphovsrätten till koden innehas av den ideella organisationen Gentoo Foundation. Eftersom Gentoo drivs av en ideell organisation finns inget vinstbehov, och hela utvecklingsprocessen hålls öppen.
Portage
För huvudartikeln se portage
Hjärtat i Gentoo är dess pakethanteringssystem portage. Det har, som namnet antyder, hämtat mycket inspiration från BSD-varianternas ports-system. Portage är en pakethanterare som inte först och främst installerar program från färdiga paket utan snarare automatiskt laddar ner, kompilerar och installerar program. Det gör att man, om man så vill, kan bygga hela sitt system från grunden, med fördelar som total konfigurerbarhet och processoroptimering. Portage hanterar dessutom beroenden automatiskt, vilket innebär att alla icke tillfrädställda beroenden installeras innan ett specifikt program. Portage kan även installera färdigkompilerade paket.
Det s.k. portage-trädet, som är centralt i Gentoo, består av textfiler med den information som behövs för att ladda hem, packa upp, kompilera och installera ett program. Varje sådan textfil kallas för en ebuild.
Viktiga kataloger i Gentoo
- /usr/portage/ - Den lokala kopian av portage-trädet. Alla ändringar här kommer att skrivas över vid nästa synkronisering mot det officiella trädet.
- /var/db/pkg/ - Alla installerade ebuilds samt information om vilka kompileringsinställningar och USE-flaggor som användes vid installationen. Uppbyggd som en delmängd av portage-trädet.
- /etc/init.d/ - Initskript för daemoner och nätverk.
- /etc/conf.d/ - Inställningar för vissa daemoner.
Viktiga filer i Gentoo
- /etc/make.conf - Inställningar för portage (kompileringsinställningar, USE-flaggor, features, etc).
- /etc/rc.conf - Terminalinställningar (språk och typsnitt), förvald editor, val av displaymanager för X och inställningar för systemklockan (UTC eller lokal tid).
- /usr/portage/profiles/use.desc - Lista och beskrivning av alla USE-flaggor.
- /etc/portage/package.unmask - Om en ebuild blivit "maskad" (masked) av utvecklarna kan man inte installera den utan att lägga dess namn i denna fil.
- /etc/conf.d/local.start - Kommandon som ska exekveras vid uppstart, t ex hdparm-kommandon.
- /etc/conf.d/local.stop - Kommandon som ska exekveras vid avstängning.
Viktiga kommandon i Gentoo
Installera en ebuild (och eventuella andra ebuilds som den beror av):
# emerge ebuild
Sök efter ebuilds med ett visst namn:
# emerge -s sökterm
Se vilka beroenden en ebuild har, samt visar vad emerge skulle ha gjort vid # emerge ebuild:
# emerge -p ebuild
En annan variant på att se beroenden är:
# emerge -a ebuild
Se vilka möjliga useflaggor som finns att välja på och visar vad emerge skulle ha gjort:
# emerge -pv ebuild
Använda useflaggor:
# USE="something -another" emerge ebuild
Avinstallera en ebuild:
# emerge unmerge ebuild
Synkronisera det lokala portage-trädet med det officiella:
# emerge sync
Starta, stoppa och starta om en daemon $DAEMON (om den har ett initskript):
# /etc/init.d/$DAEMON start|stop|restart
Uppdatera alla dina paket till senaste versionen:
# emerge -u world
Uppdatera dina konfigurationsfiler (efter en emerge -u world):
# etc-update
Det finns ett par andra praktiska växlar man kan använda (som t.ex. -D i kombination med en emerge -u world), som man hittar i den eminenta manualsidan.
# man emerge
Vid en uppdatering eller vid en vanlig emerge bör man alltid köra # emerge -p ebuild för att kontrollera att man inte installerar något man inte vill. Och kontrollera om några ebuilds är maskerade eller om man behöver några andra växlar.
Automatiskt uppstart av tjänster
Med kommandot rc-update kan är det möjligt att ange vilka tjänster som ska starta då operativsystemet går in i en viss runlevel, t ex boot eller default. Initskriptet för tjänsten måste finnas i katalogen /etc/init.d/. För att t ex låta webbservern Apache (version 2.x) starta automatiskt på runleveln default, körs följande kommando som root:
rc-update add apache2 default
Vad rc-update då egentligen gör är att skapa en symbolisk länk till initskriptet /etc/init.d/apache2 i katalogen /etc/runlevels/default/, där Gentoos bootskript sedan läser av den.
Se även
Externa länkar
- Gentoos hemsida (http://www.gentoo.org)
- PlanetGentoo (http://planet.gentoo.org)
- Allt innehåll i Gentoo portage (http://www.gentoo-portage.com)
- Gentoo Documentation Project (http://www.gentoo.org/proj/en/gdp)
- Gentoos diskussionsforum (http://forums.gentoo.org)
- Bugzilla för Gentoo (http://bugs.gentoo.org)
- Svensk Gentoo-sida (http://www.gentoo.se)
- En wiki som dokumenterar Gentoo (http://www.gentoo-wiki.com)