Portál AbcLinuxu, 26. dubna 2024 01:02

Gentoo: kapesní průvodce instalací

23.2.2012 14:35 | Přečteno: 4001× | Linux | poslední úprava: 23.2.2012 14:33

Už nějaký ten pátek jsem zarytým fanouškem Debianu. Mám ho jako svůj hlavní systém a instaluji ho kudy chodím. Jednou za čas ale trpím nutkáním nainstalovat si k němu (nebo do VirtualBoxu) zase něco nového. Jsem totiž učebnicovým příkladem distribučního turisty. Přesto mě Gentoo dlouho nechávalo chladným. Trávit "větší než nutné" množství času v terminálu mě dvakrát netěší a ani neustálé kompilování není mou představou dokonalosti. Různé odvozeniny mainstreemových distribucí ale začnou jednou nudit. V tu chvíli nastává čas poohlédnout se po něčem "zajímavějším".

Gentoo je (mimo jiné) považováno za jednu z nejlépe zdokumentovaných linuxových distribucí. Proto byly prvním místem, které jsem navštívil, webové stránky Gentoo.org, kde jsem se začal poohlížet po proslulém "Gentoo Handbooku". Trochu mě zarazilo, že mezi jazyky nebyla na výběr čeština, ale není staršího triku, než v URL přepsat "en" na "cs". Česká mutace se přecijen objevila, i když notně zastaralá (téměř 6 let). První stránka obsahuje obecné informace. Tedy o čem příručka je, co je jejím cílem, v jakém je stavu a kde si můžeme stěžovat. K opravdové příručce se dostaneme až v 2. View the Handbook, kde si vybereme verzi odpovídající našim preferencím (vše na jedné stránce, či jedna kapitola na stránku) a také architektuře našeho procesoru.

Příprava disku

Příručka je rozdělena do čtyř tematických oddílů, z nichž každý obsahuje několik kapitol. První kapitola oddílu Installing Gentoo je jen úvodem do instalace, shrnutím co nás čeká a (ne)mine. Druhá kapitola už sice pojednává o instalaci, ale instalaci z CD, což jsem vůbec neměl v plánu. Tím byla totiž instalace z již běžícího Debianu Wheezy, kde stačilo jen přimountovat předem naformátovaný oddíl, na který jsem chtěl Gentoo instalovat. Editovat diskové oddíly můžete pomocí libovolného nástroje pro správu disků. Já použil Gparted.

sudo mkdir /mnt/gentoo
sudo mount /dev/sda5 /mnt/gentoo  //číslo 5 nahraďte číslem vámi použitého oddílu

Kam oddíl přimountujete je také čistě na vás, v příručce je ale použit /mnt/gentoo a jestli nechcete každý příkaz přepisovat, použijte ho také. Zpětně jsem si všiml, že tento způsob přípravy k instalaci popisuje třetí kapitola Příručky pro alternativní instalaci (jen anglicky), která je zmíněna v první kapitole Příručky k instalaci Gentoo.

Základní systém

V této fázi máme disk připraven k instalaci a v Příručce k instalaci Gentoo můžeme přeskočit na kapitolu 5. Installing the Gentoo Installation Files. Tato kapitola nás provádí stažením a rozbalením instalačních souborů Gentoo, stromu Portage (což je adresářová struktura ebuildů, souborů "říkajících" správci softwaru emerge jak stáhnout, rozbalit, zkompilovat a nainstalovat daný program) a nastavením parametrů kompilace.

Na pohled vypadá obsah páté kapitoly strastiplně, ale to jen proto, že se striktně drží příkazové řádky. Pokud instalujeme z běžícího systému, můžeme si ji podstatně zjednodušit. Archiv s předpřipraveným základním systémem (tzv. stage3) si stáhneme ze stránek Gentoo.org pomocí prohlížeče, strom portage stáhneme stejným způsobem ze sekce snapshots. I rozbalovat můžeme z grafického správce souborů, ale na toto už je terminál přecijen o něco rychlejší.

Rozbalení předpřipraveného systému:
sudo tar xvjpf /home/user/Downloads/stage3-arch-release.tar.bz2 -C /mnt/gentoo/
Rozbalení stromu portage:
sudo tar xvjf /home/user/Downloads/portage-release.tar.bz2 -C /mnt/gentoo/usr/

V /mnt/gentoo/etc/make.conf nás čeká nastavení dvou, respektive tří proměnných. Nejdříve je to dvojice proměnných CFLAGS="-O2 -pipe" a CXXFLAGS="${CFLAGS}". Jak vidno, CXXFLAGS se odkazuje na CFLAGS a proto stačí editovat pouze ji. Je zde potřeba přidat parametr "-march=....", jehož hodnota je dána architekturou specifickou pro určitou sadu procesorů. Gentoo-wiki naštěstí disponuje pěkným článek, který se proměnnou CFLAGS zabývá. V jeho spodní části lze nalézt i specifická nastavení pro určité typy procesorů. Můj postup byl následující:

  1. Příkazem "cat /proc/cpuinfo" jsem zjistil číselné označení procesorové rodiny (cpu family) a modelu mého procesoru.
  2. Na Gentoo-wiki jsem vyhledal nastavení pro procesor s totožnými údaji.
  3. Příkazem "ls /mnt/gentoo/usr/bin | grep gcc" jsem zjistil verzi GCC kompilátoru obsaženého ve stage3.
  4. Vybral jsem si vhodný profil nastavení.

Od GCC 4.2 je řešení problému "co za march=" ještě jednodušší. Od této verze umí GCC automaticky rozpoznat optimální nastavení kompilace. Pokud této funkcionality chcete využít, nastavte march na hodnotu native. Dále už jsem se striktně držel doporučení příručky. MAKEOPTS jsem díky procesoru poskytujícímu 4 thready mohl nastavit na "-j5" a CHOST jsem poslušně neměnil.

S kapitolou 6. Installing the Gentoo Base System se v konfiguračním souboru make.conf ještě zdržíme. čeká nás nastavení proměnných SYNC a GENTOO_MIRRORS. Hodnotou proměnné SYNC je URL serveru, ze kterého se bude aktualizovat strom portage, tedy seznam dostupného softwaru. Hodnotou GENTOO_MIRRORS bude server sloužící jako zdroj samotného softwaru. Ve výsledku to může vypadat například takto:

SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
GENTOO_MIRRORS="http://ftp.fi.muni.cz/pub/linux/gentoo/"

Pokud se podíváte do české verze šesté kapitoly zjistíte, že pro SYNC je v České republice doporučována hodnota "rsync://rsync.europe.gentoo.org/gentoo-portage", zatímco u GENTOO_MIRRORS si prostě máme vybrat. Mě osobně se sice příčí stahovat ebuildy z bodu A a podle nich instalovat software z bodu B, nicméně rsync na servery FI MUNI mi prostě nefungoval. Všechny servery s repozitáři té a té distribuce by sice měly být vzájemně synchronizované, ale není to tak dlouho, co mi aptitude update stahující aktualizace z http://debian.ignum.cz/debian/ hlásilo 0 aktualizací, zatímco ten samý příkaz stahující jen o pár sekund později z http://debian.superhosting.cz/debian/ hlásil 18 balíčků k aktualizaci. Zbytek šesté kapitoly "hovoří" poměrně jasně a jestliže jste za přípojný bod zvolili /mnt/gentoo, dá se projít metodou ctrl+c, ctrl+v.

Kompilace jádra

S kapitolou 7. Configuring the Kernel se konečně dostáváme k tomu nejzajímavějšímu. Konfigurace a kompilace linuxového jádra. Na konci této kapitoly dostanete jádro, s nímž váš počítač buď bude nebo nebude fungovat. A pokud nebude, pořád to můžete zkusit znovu. Kapitola sice začíná nastavením časového pásma a instalací zdrojových kódů jádra, ale u toho všeho se dá pokračovat metodou ctrl+c, ctrl+v.

Až samotná konfigurace začne vyžadovat naši pozornost. I když ani to není úplná pravda. Instalační příručka nám jako alternativu k ruční konfiguraci nabízí použití genkernelu, nástroje, který nastaví jádro za nás. Jeho výsledkem bude univerzální jádro podporující téměř všechen hardware. Slovíčko "téměř" je na místě. Lenost je mocná síla a proto jsem zprvu zvolil genkernel. Kompilace trvala něco přes dvacet minut a výsledný kernel mi byl ve výsledku k ničemu. Ani jedna ze síťových karet mého notebooku nefungovala a nebyly pro ně dostupné ani patřičné moduly. Jádro jsem smazal a vrátil se k ruční konfiguraci.

Nutno podotknout, že co se píše v české mutaci sedmé kapitoly je naprostá pravda. Stojí v ní: "Na ruční konfiguraci jádra je často pohlíženo jako na jeden z nejtěžších kroků, které kdy musí uživatel Linuxu provést. Nic není dále od pravdy - až si nakonfigurujete pár vlastních kernelů, ani si nebudete pamatovat, že to bylo obtížné ;-)". Pokud si ke konfiguraci vyberete menuconfig, objeví se před vámi seznam nabídek, v nichž si vybíráte co má a nemá umět vaše jádro. Jestliže se držíte obecných doporučení příručky nebo například blogu Radka Matěje, máte z poloviny vyhráno. S řešením té druhé poloviny může opět pomoci Gentoo-wiki. Dají se zde totiž dohledat popisy zprovoznění Gentoo na různých počítačových sestavách. Pokud už si tedy s konfigurací nevíte rady, vypište si "lspci -v", zamiřte na wiki, vyhledejte si sestavu s tím a tím kusem hardwaru a řiďtě se příslušnou konfigurací. Já si vzal za vzor Acer Aspire 8943G. Ten můj sice pochází z trochu jiné modelové řady, ale použitým hardwarem k sobě mají docela blízko. Nakonec konfiguraci uložte a spusťte kompilaci. Její délka by měla být kratší než u univerzálního genkernelu. U mě se zkrátila zhruba na polovinu.

Systém

V tomto bodě už se určitě těšíte na to, jak si ozkoušíte, jestli vaše čerstvě zkompilované jádro nabootuje. Ale ještě předtím nás čekají nějaká ta nastavení. Kapitoly 8. Configuring your System a 9. Installing Necessary System Tools vás jimi dozajista bez problému provedou. Opět zde lze uplatnit metodu ctrl+c, ctrl+v. Zatímco nástroje deváté kapitoly jsou víceméně doplňkové (ikdyž loger se hodí), kapitolu osmou doporučuji projít celou. Nenastavený fstab nebo chybějící účet roota, to by mohl být problém :). Konfigurací a instalací zavaděče se zabývá až kapitola 10. Configuring the Bootloader, ale čert ji vem. Jsme ve funkčním systému a jeden zavaděč už máme. A protože máme (máme?) distribuci s GRUB2 , stačí spustit "sudo update-grub".

Nyní už konečně můžete restartovat a pokusit se nabootovat vaši první instalaci Gentoo Linuxu. Pokud jste pečlivě četli Gentoo Handbook, určitě budete svědky bootovacího procesu vypisujícího samá zelená potvrzení o úspěšném provedení té a té operace. A pokud se dostanete až k funkční příkazové řádce, což je zde (narozdíl od většiny mainstreemových distribucí) cílem, pak jste byli úspěšní.

       

Hodnocení: 90 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

23.2.2012 16:34 iljap
Rozbalit Rozbalit vše Re: Gentoo: kapesní průvodce instalací
Odpovědět | Sbalit | Link | Blokovat | Admin
Mozes upodatnut tu cesku dokumentaciu :-)
23.2.2012 16:38 iljap
Rozbalit Rozbalit vše Re: Gentoo: kapesní průvodce instalací
Odpovědět | Sbalit | Link | Blokovat | Admin
Este dodam jeden tip ku kompilacii jadra - pri instalacii si z live-instalacneho cd skopirovat subor /proc/config.gz - co je konfig beziaceho kernelu a pri konfiguracii vlastneho vychadzat z neho (uberat ficurie, dokial sa bude dat nabootovat)
the.max avatar 23.2.2012 22:07 the.max | skóre: 46 | blog: Smetiště
Rozbalit Rozbalit vše Re: Gentoo: kapesní průvodce instalací
stejne tak muzes pouzit genkernel a nasledne ubirat...
KERNEL ULTRAS Fan Team || Sabaton - nejlepší učitel dějepisu || Gentoo - dokud nás systemd nerozdělí.
23.2.2012 17:11 #
Rozbalit Rozbalit vše Re: Gentoo: kapesní průvodce instalací
Odpovědět | Sbalit | Link | Blokovat | Admin
To nastaveni generickych rsync servru je zejmena pro lidi, co vidi jako featuru, ze se z ruznych zdroju stahuji ebuildy a z jinych balicky, tudiz je zde mensi sance pri kompromitaci jednoho repozitare nainstalovat neco spatnyho.

Jinak pro cz SYNC="rsync://rsync.cz.gentoo.org/gentoo-portage" obsahuje myslim web4u a upc.
23.2.2012 17:33 pedro
Rozbalit Rozbalit vše Gentoo chytne a nepustí
Odpovědět | Sbalit | Link | Blokovat | Admin
:-)
24.2.2012 15:27 ET
Rozbalit Rozbalit vše Re: Gentoo: kapesní průvodce instalací
Odpovědět | Sbalit | Link | Blokovat | Admin
GENTOO_MIRRORS se da "naklikat" :]
emerge mirrorselect 
mirrorselect -i -o >> /etc/make.conf
24.2.2012 21:35 xHire | skóre: 21 | blog: Linuxovník
Rozbalit Rozbalit vše Re: Gentoo: kapesní průvodce instalací
Odpovědět | Sbalit | Link | Blokovat | Admin
Na -march=native pozor, sám jsem se už o něj jednou nepěkně spálil.
Kryptoměny a bločenka.
David Heidelberg avatar 1.3.2012 21:24 David Heidelberg | skóre: 46 | blog: blog_
Rozbalit Rozbalit vše Re: Gentoo: kapesní průvodce instalací
Odpovědět | Sbalit | Link | Blokovat | Admin
Instaluju Gentoo a vzpomněl jsem si na tvůj návod a zrychluje to mou práci, takže tímto chci poděkovat :)
Mobilní telefony a tablety s GNU/Linuxem v roce 2020. Proč byste se měli zajímat?

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.