Gentoo Linux

Gentoo Linux (uttal: ) är ett operativsystem och en Linuxdistribution som är mest känd för sina konfigurationsmöjligheter, sin prestanda och aktiva community. Gentoo Linux kallas ofta för en metadistribution till följd av flexibiliteten som pakethanteraren Portage erbjuder då den även fungerar på andra distributioner. Portage ger normalt inte användaren tillgång till förkompilerade binärer, utan i stället direkt tillgång till källkod då denna finns att tillgå. Det finns undantag för vissa stora paket som Mozilla Firefox och LibreOffice, som även finns förkompilerade, eftersom kompilering av dessa skulle vara för tids- och lagringsutrymmeskrävande för vissa användare. Installationen för senare versioner går endast att utföra genom kommandotolken eftersom utvecklingen av den grafiska installationen har lagts ner.

Distributionen har fått sitt namn efter det engelska namnet för Åsnepingvin (Gentoo), vilken är den snabbaste pingvinen i vatten. Detta skall reflektera den potentiella prestandavinst som maskinspecifik optimering kan ge i Gentoo Linux.

Historia 
Gentoo skapades från början som Enoch Linux av Daniel Robbins, vars mål var att kunna distribuera källkod istället för färdigkompilerade binärer som ej var anpassade till hårdvaran. På grund av hårdvaruproblem stannade utvecklingen av det som senare skulle bli Gentoo Linux. Under tiden gick Robbins över till FreeBSD för att komma undan problemen. Det tog honom några månader att komma tillbaka till Linux och lite senare återupptogs utvecklingen av Gentoo Linux tillsammans med Achim Gottinger. Med nya erfarenheter från FreeBSD började utvecklingen av Portage, nästa generations pakethanterare baserad på FreeBSD ports.

I mars månad 2002 släpptes den första versionen av Gentoo Linux, nämligen 1.0.

Portabilitet 
Även om Gentoo från början var planerad för x86-arkitekturen, finns den nu porterad till många andra arkitekturer så som x86-64, IA-64, DEC Alpha, HPPA, ARM, MIPS, PowerPC, PowerPC 970 och SPARC. Portabilitet utvecklas även till operativsystem som baseras på BSD genom projektet Gentoo/Alt.

Portage 

Ett av Gentoos viktigaste element är pakethanteringssystemet Portage. För att installera ett program använder man sig av verktyget emerge som är en stor del av Portage. Det använder sig, till skillnad från Make-filer, av ebuilds som beskriver funktioner för att ladda ned källkod, konfigurera, kompilera och installera för att slutföra en installation av ett specifikt paket. Kompileringen av källkoden utförs baserat på de optimeringar man har angett i /etc/portage/make.conf.

Init-system 
Gentoos init-system är en viktig funktion. Den liknar det System V-init-system som de flesta Linuxdistributioner använder, men utnyttjar beroendebaserade skript och namngivna Runlevel istället för numrerade diton. Det inkluderar även ett kommando kallat rc-update, vilket hanterar systemets olika runlevels.

Uppstartsskript i Gentoo använder runscript-tolken, istället för det traditionella skalet.

Ursprungligen var Gentoos rc-system helt skrivet i Bash och utgjorde en del av baselayout-paketet, som innehöll den grundläggande filsystemsstrukturen och nödvändiga filer för systemet. Detta ledde dock till flera tillkortakommanden. Vissa systemanrop var tvungna att vara tillgängliga under boot-sekvensen och krävde att C-baserade anrop lades till. Dessa anrop var statiskt länkade och medförde att rc-systemet svällde med tiden. I och med att Gentoo expanderade till andra plattformar såsom Gentoo/FreeBSD och Gentoo Embedded blev kravet på det relativt tunga Bash-skalet till rc-systemet icke önskvärt och i vissa fall till och med ett omöjligt krav. 

Detta ledde till utvecklingen av baselayout 2, som var skriven i C och endast krävde ett POSIX-kompatibelt skal. Under utvecklingen av detta bestämdes det att det var bättre att baselayout endast bistod med basfiler och filsystemslayouten till Gentoo och att rc-systemet bröts ut till ett fristående projekt, OpenRC.

Installation 
Gentoo kan installeras på flera olika sätt. Det vanligaste är att använda en så kallad Gentoo minimal CD med en stage 3 tarboll. Som med många Linuxdistributioner kan Gentoo installeras från nästan vilken Linuxmiljö som helst, exempelvis från en LiveCD från en annan linuxdistribution. En normal installation kräver Internettillgång, men det finns även möjlighet att installera systemet utan tillgång till Internet.

Tidigare stödde Gentoo installation från stage 1 och stage 2 tarbollar. Detta är inte längre rekommenderat av Gentoo Foundation och är numera endast avsett för Gentoo-utvecklare.

Efter de initiala stegen av installationsprocessen beskriver Gentoo Handbook hur en ny Linuxkärna kompileras. Denna process krävs normalt inte av andra Linuxdistributioner. Även om processen är vitt ansedd att vara en komplicerad uppgift, så finns dokumentation och verktyg såsom Genkernel för att förenkla processen och göra den lättare för nya användare. Dessutom kan användare använda en redan existerande kärna som fungerar med deras system genom att kopiera denna till boot-katalogen och sedan uppdatera dess bootloader. Stöd vid installation kan fås på Gentoo forum och på  IRC.

Catalyst 
Från och med version 2004.0 så finns ett verktyg tillgängligt för Gentoo kallat Catalyst. Detta kan användas för att bygga alla Gentooutgåvor och kan bygga specialanpassade installationsmedia. Sommaren 2008 släppte Gentoos grundare, Daniel Robbins, ett nytt verktyg kallat Metro. Metro kan användas för att bygga utgåvor av Funtoo Linux, en variant av Gentoo Linux som utvecklas och underhålls av Robbins.

Live USB
En Live USB-version av Gentoo Linux kan skapas manuellt eller med verktyget UNetbootin.

Installation med grafiskt gränssnitt 
Att installera Gentoo Linux via ett grafiskt gränssnitt (Gentoo Linux Installer project eller GLI) släpptes med utgåva 2006.0, men projektet fick inte tillräckligt utvecklingsstöd och stöds inte längre (sedan 2008.0).

Referenser

Externa länkar 

Officiell webbplats
Lista över paket till Portage
Gentoo Wiki
Gentoo på Distrowatch.com.

Linuxdistributioner
Programvaror 2002