Gentoo Linux amd64 Handbook: Instalace Gentoo
Úvod
Vítejte
Ze všeho nejdříve: Vítejte v Gentoo! Vstupujete do světa možností a výkonu. Gentoo, to jsou samé možnosti. Při instalaci Gentoo to vyjde několikrát najevo - uživatelé si mohou zvolit jak moc chtějí sami kompilovat, jak instalovat Gentoo, jaký systémový logger používat atd.
Openness
Gentoo's premier tools are built from simple programming languages. Portage, Gentoo's package maintenance system, is written in Python. Ebuilds, which provide package definitions for Portage are written in bash. Our users are encouraged to review, modify, and enhance the source code for all parts of Gentoo.
By default, packages are only patched when necessary to fix bugs or provide interoperability within Gentoo. They are installed to the system by compiling source code provided by upstream projects into binary format (although support for precompiled binary packages is included too). Configuring Gentoo happens through text files.
For the above reasons and others: openness is built-in as a design principal.
Choice
Gentoo je rychlá moderní meta-distribuce s čistým a flexibilním návrhem. Je postavené na ekosystému svobodného softwaru a neskrývá před svými uživately, co se nachází pod kapotou. Portage, správce balíčků použitý v Gentoo, je napsaný v Pythonu, uživatel tedy může snadno nahlédnout a měnit jeho zdrojový kód. Balíčkovací systém Gentoo používá zdrojové kódy (ačkoli podpory předkompilovaných balíčků je v něm také) a Gentoo se nastavuje skrze běžné textové soubory - jinými slovy: otevřenost sama.
When installing Gentoo, choice is made clear throughout the Handbook. System administrators can choose two fully supported init systems (Gentoo's own OpenRC and Freedesktop.org's systemd), partition structure for storage disk(s), what file systems to use on the disk(s), a target system profile, remove or add features on a global (system-wide) or package specific level via USE flags, bootloader, network management utility, and much, much more.
As a development philosophy, Gentoo's authors try to avoid forcing users onto a specific system profile or desktop environment. If something is offered in the GNU/Linux ecosystem, it's likely available in Gentoo. If not, then we'd love to see it so. For new package requests please file a bug report or create your own ebuild repository.
Power
Being a source-based operating system allows Gentoo to be ported onto new computer instruction set architectures and also allows all installed packages to be tuned. This strength surfaces another Gentoo design principal: power.
A system administrator who has successfully installed and customized Gentoo has compiled a tailored operating system from source code. The entire operating system can be tuned at a binary level via the mechanisms included in Portage's make.conf file. If so desired, adjustments can be made on a per-package basis, or a package group basis. In fact, entire sets of functionality can be added or removed using USE flags.
Je důležité, aby každý chápal, že Gentoo funguje díky možnosti volby. Nesnažíme se nutit uživatele k ničemu, co se jim nelíbí. Jestliže má někdo opačný pocit, nechť nahlásí chybu.
Jak se instalace člení
Na instalaci Gentoo se dá hledět jako na postup složený z 10 kroků, odpovídajících následující sadě kapitol. Každý krok má za výsledek dosažení určitého stavu:
Krok | Výsledek |
---|---|
1 | Uživatel se ocitne ve funkčním prostředí připraveném k instalaci Gentoo. |
2 | Připojení k internetu je připraveno pro instalaci Gentoo. |
3 | Pevné disky jsou inicializovány k umístění instalace Gentoo. |
4 | Instalační prostředí je připraveno a uživatel může změnit kořenový adresář instalace. |
5 | Jsou nainstalovány hlavní balíčky společné pro všechny instalace Gentoo. |
6 | Je nainstalováno jádro Linux. |
7 | Je vytvořena většina konfiguračních souborů. |
8 | Jsou nainstalovány nezbytné systémové nástroje. |
9 | Je nainstalován a nakonfigurován správný zavaděč. |
10 | Čerstvě nainstalované prostředí Gentoo Linux je připraveno na průzkum. |
Kdykoli dojde k představení některé volby, příručka se pokusí vysvětlit jaké jsou její klady a zápory. Ačkoli pak text pokračuje s výchozí volbou (Označenou v nadpise jako "Výchozí:"), ostatní možnosti budou popsány také (označené v nadpise jako "Alternativa:"). Nemějte za to, že výchozí možnost je zároveň tím, co Gentoo doporučuje. Jde o volbu, o níž si Gentoo myslí, že bude jeho uživateli nevyužívanější.
Občas mohou být učiněny volitelné kroky. Ty jsou označeny jako "Volitelné:" a nejsou tudíž k instalaci Gentoo nezbytné. Nicméně některé volitelné kroky závisí na dříve učiněných rozhodnutích. Pokyny čtenáře informují, pokud k tomuto dojde, jak v ve chvíli, kdy je činěno rozhodnutí, tak ihned po té, co je volitelný krok popsán.
Volby instalace Gentoo
Gentoo může být nainstalováno mnoha různými způsoby. Můžete si jej stáhnout a nainstalovat z oficiálního instalačních médií Gentoo, jako jsou naše CD nebo DVD. Instalační média mohou být nahrána na USB disk nebo bootována prostřednictvím počítačové sítě. Alternativně lze Gentoo instalovat i z neoficiálních médií jako je již nainstalovaná distribuce nebo nonGentoo bootovatelné CD (např. Knoppix).
Tento dokument pokrývá instalaci s použitím oficiálního instalačního média a v určitých případech také bootováním ze sítě.
Pokud potřebujete pomoct s ostatními metodami instalace, včetně použití neGentoo CD, přečtěte si prosím Průvodce alternativními způsoby instalace.
Dále poskytujeme dokument Tipy a triky pro instalaci Gentoo který se může hodit.
Potíže
Pokud se objeví při instalaci (nebo v dokumentaci instalace) problém, navštivte prosím systém pro hlášení chyb a zkontrolujte, zda je chyba známá. Pokud není, vytvořte k ní prosím hlášení, abychom se o ni mohli postarat. Nebojte se vývojářů, kteří jsou k chybě přiřazení - (většinou) vás nesežerou.
Ačkoli je tento dokument určený pro určitou architekturu, může obsahovat odkazy i na ostatní architektury, jelikož velká část Příručky Gentoo používá text indentický pro všechny architektury (abychom tím zabránili zbytečné práci). Tyto odkazy jsme se snažili snížit na minimum, abychom předešli zmatkům.
Pokud si nejste jistí, zda máte problém uživatelský (chyba, kterou jste udělali, ačkoli jste si dokumentaci pečlivě přečetli) nebo softwarový (chyba, kterou jsme udělali my, přestože instalace/dokumentace byla pečlivě vyzkoušena), jste vítání v kanále #gentoo (webchat) na irc.freenode.net. Samozřejmě jste vítání i jen tak, jelikož náš chatovací kanál pokrývá široké spektrum záležitostí okolo Gentoo.
Mimochodem, pokud máte nějaké další dotazy ohledně Gentoo, podívejte se na článek Často kladené dotazy. FAQ jsou také na fóru Gentoo.
Požadavky na hardware
Než začneme, uvedeme nejprve seznam hardwarových požadavku jejichž splnění je nezbytné k úspěšnému nainstalování Gentoo na počítač amd64.
Minimalní CD | LiveDVD | |
---|---|---|
CPU | Kterýkoli procesor AMD64 nebo EM64T (Core 2 Duo a Quad procesory jsou EM64T) | |
Paměť | 256 MB | 512 MB |
Prostor na disku | 2.5 GB (nezahrnuje prostor pro swap) | |
Prostor pro swap | Alespoň 256 MB |
Stránka projektu Gentoo AMD64 je místem, kde lze najít více informací o podpoře amd64 v Gentoo.
Instalační média Gentoo Linuxu
It is okay to use other, non-Gentoo installation media, although official media is recommended. Gentoo installation media ensures the necessary tools are included in the live operating system environment. When using non-Gentoo media, skip to Preparing the disks.
Minimální instalační CD
Minimální instalační CD je bootovatelné obraz, který obsahuje soběstačné prostředí Gentoo. Umožňuje uživateli zavést Linux z CD nebo jiného instalačního média. Během zavádějí je detekován hardware a jsou zavedeny příslušné ovladače. Obraz je udržován vývojáři Gentoo a umožňuje komukoli nainstalovat Gentoo v případě, že je k dispozici připojení k internetu.
Minimální instalační CD má název install-amd64-minimal-<release>.iso.
Příležitostné Gentoo LiveDVD
Projekt Gentoo Ten příležitostně vytváří speciální DVD, které může být použit k instalaci Gentoo. Pokyny uvedené níže v této kapitole cílí na minimální instalační CD, tudíž mohou být poněkud rozdílné. Nicméně LiveDVD (i jakékoli jiné bootovatelné Linuxové prostředí) podporuje získání root přístupu zadáním sudo su - nebo sudo -i v terminálu.
Co je to stage?
Stage3 balíček je archiv obsahující minimální prostředí Gentoo určené pro pokračování v instalaci Gentoo za použití pokynů v tomto manuálu. Dříve Příručka Gentoo popisovala instalaci s použitím jednoho ze tří stage balíčků. Ačkoli Gentoo poskytuje stále stage1 a stage2 balíčky, oficiální instalační postup používá balíček stage3. Pokud máte zájem provést instalaci s použitím stage1 nebo stage2 balíčku, přečtěte si prosím Gentoo FAQ ohledně toho Jak nainstalovat Gentoo s použitím Stage1 nebo Stage2 balíčku?
Balíček stage3 je k dispozici ke stažení z releases/amd64/autobuilds/ na některém z oficiálních zrcadel Gentoo. Stage soubory jsou často aktualizovány a nejsou uloženy na instalačních obrazech.
Stažení
=== Získání média
Výchozími instalačními médii používanými Gentoo Linuxem jsou "minimální instalační CD", která obsahují bootovatelné, velmi malé prostředí Gentoo Linuxu. Toto prostředí obsahuje ty správné nástroje k instalaci Gentoo Linuxu. Samotné obrazy CD mohou být staženy ze stránky downloadů (doporučená volba) anebo ručně procházením umístění ISO obrazů na některém z mnoha dostupných zrcadel.
Pokud stahujete ze zrcadla, minimální instalační CD naleznete následujícím způsobem:
- Běžte do adresáře releases/
- Vyberte adresář správné cílové architektury (jako je amd64/).
- Vyberte adresář autobuilds/
- U architektur amd64 a x86 vyberte adresář current-install-amd64-minimal/, respektive current-install-x86-minimal/. U ostatních architektur přejděte do adresáře current-iso/.
Některé architektury jako arm, mips, a s390 nemají minimální CD. Momentálně Gentoo Release Engineering projekt nepodporuje sestavování .iso souborů pro tyto cíle.
Zde je soubor s instalačním médiem s příponou .iso. Podívejte se například na následující výpis:
[DIR] hardened/ 05-Dec-2014 01:42 -
[ ] install-amd64-minimal-20141204.iso 04-Dec-2014 21:04 208M
[ ] install-amd64-minimal-20141204.iso.CONTENTS 04-Dec-2014 21:04 3.0K
[ ] install-amd64-minimal-20141204.iso.DIGESTS 04-Dec-2014 21:04 740
[TXT] install-amd64-minimal-20141204.iso.DIGESTS.asc 05-Dec-2014 01:42 1.6K
[ ] stage3-amd64-20141204.tar.bz2 04-Dec-2014 21:04 198M
[ ] stage3-amd64-20141204.tar.bz2.CONTENTS 04-Dec-2014 21:04 4.6M
[ ] stage3-amd64-20141204.tar.bz2.DIGESTS 04-Dec-2014 21:04 720
[TXT] stage3-amd64-20141204.tar.bz2.DIGESTS.asc 05-Dec-2014 01:42 1.5K
Soubor install-amd64-minimal-20141204.iso v příkladu výše je samotné minimální instalační CD. Jak je vidět, jsou zde i další související soubory:
- Soubor .CONTENTS je textový soubor obsahující seznam všech souborů na instalačním médiu. Tento soubor může být užitečný k ověření toho, zda je určitý firmware nebo ovladač na instalačním médiu přítomen před jeho stažením.
- Soubor .DIGESTS obsahuje hash souboru ISO v různých formátech/algoritmech. Tento soubor může být použit k ověření toho, zda je stažený soubor poškozen nebo ne.
- Soubor .DIGEST.asc obsahuje nejenom hash souboru ISO (jako soubor .DIGESTS), ale též kryptografický podpis tohoto souboru. S jeho použitím můžete ověřit zda je stažený ISO soubor poškozený nebo ne, stejně jako ověřit, že stažený soubor je skutečně poskytnut Gentoo Release Engineering týmem a nebylo s ním manipulováno.
Prozatím ignorujte ostatní dostupné soubory - budeme se jimi opět zabývat jakmile instalace pokročí dále. Stáhněte soubor .ISO a pokud jej chcete ověřit, stáhněte také soubor .DIGEST.asc k souboru .iso. Soubor .CONTENTS nemusíte stahovat, jelikož instalační pokyny se k němu již nebudou vracet a soubor .DIGESTS by měl obsahovat stejné informace jako soubor .DIGESTS.asc vyjma toho, že druhý obsahuje navíc podpis.
Ověření stažených souborů
Tento krok je volitelný a není pro instalaci nezbytný. Nicméně doporučuje se ho provést, jelikož se tím ověří, že soubor není poškozen a byl skutečně poskytnut Gentoo Infrastructure týmem.
- Nejprve se ověří kryptografický podpis, čímž se zjistí, zda instalační soubor pochází od Gentoo Release Engineering týmem
- Pokud kryptografický podpis souhlasí, ověří se kontrolní součet, čímž se zjistí, že stažený soubor není poškozen.
Ověření v Microsoft Windows
K ověření kryptografického podpisu je nejprve třeba použít nástroj jako je například GPG4Win. Po nainstalování je třeba importovat veřejné klíče Gentoo Release Engineering týmu. Seznam klíčů je dostupný ze stránky s podpisy. Jakmile dojde k importu, uživatel může ověřit podpis souboru .DIGESTS.asc.
Ověření v Linuxu
V systému Linux je nejběžnější metodou k ověření kryptografického podpisu použití softwaru app-crypt/gnupg. Po nainstalování tohoto balíčku můžete použít následující příkazy k ověření kryptografického podpisu v souboru .DIGESTS.asc.
Nejprve stáhněte správnou sadu klíčů poskytovaných na stránce podpisů:
user $
gpg --keyserver hkps://hkps.pool.sks-keyservers.net --recv-keys 0xBB572E0E2D182910
gpg: requesting key 0xBB572E0E2D182910 from hkp server pool.sks-keyservers.net gpg: key 0xBB572E0E2D182910: "Gentoo Linux Release Engineering (Automated Weekly Release Key) <releng@gentoo.org>" 1 new signature gpg: 3 marginal(s) needed, 1 complete(s) needed, classic trust model gpg: depth: 0 valid: 3 signed: 20 trust: 0-, 0q, 0n, 0m, 0f, 3u gpg: depth: 1 valid: 20 signed: 12 trust: 9-, 0q, 0n, 9m, 2f, 0u gpg: next trustdb check due at 2018-09-15 gpg: Total number processed: 1 gpg: new signatures: 1
Alternatively you can use instead the WKD to download the key:
user $
gpg --auto-key-locate=clear,nodefault,wkd --locate-key releng@gentoo.org
gpg: key 0x9E6438C817072058: public key "Gentoo Linux Release Engineering (Gentoo Linux Release Signing Key) <releng@gentoo.org>" imported gpg: key 0xBB572E0E2D182910: public key "Gentoo Linux Release Engineering (Automated Weekly Release Key) <releng@gentoo.org>" imported gpg: Total number processed: 2 gpg: imported: 2 gpg: public key of ultimately trusted key 0x58497EE51D5D74A5 not found gpg: public key of ultimately trusted key 0x1F3D03348DB1A3E2 not found gpg: marginals needed: 3 completes needed: 1 trust model: pgp gpg: depth: 0 valid: 2 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 2u pub dsa1024/0x9E6438C817072058 2004-07-20 [SC] [expires: 2024-01-01] D99EAC7379A850BCE47DA5F29E6438C817072058 uid [ unknown] Gentoo Linux Release Engineering (Gentoo Linux Release Signing Key) <releng@gentoo.org> sub elg2048/0x0403710E1415B4ED 2004-07-20 [E] [expires: 2024-01-01]
Or if using official Gentoo release media, import the key from /usr/share/openpgp-keys/gentoo-release.asc (provided by sec-keys/openpgp-keys-gentoo-release):
user $
gpg --import /usr/share/openpgp-keys/gentoo-release.asc
gpg: directory '/home/larry/.gnupg' created gpg: keybox '/home/larry/.gnupg/pubring.kbx' created gpg: key DB6B8C1F96D8BF6D: 2 signatures not checked due to missing keys gpg: /home/larry/.gnupg/trustdb.gpg: trustdb created gpg: key DB6B8C1F96D8BF6D: public key "Gentoo ebuild repository signing key (Automated Signing Key) <infrastructure@gentoo.org>" imported gpg: key 9E6438C817072058: 3 signatures not checked due to missing keys gpg: key 9E6438C817072058: public key "Gentoo Linux Release Engineering (Gentoo Linux Release Signing Key) <releng@gentoo.org>" imported gpg: key BB572E0E2D182910: 1 signature not checked due to a missing key gpg: key BB572E0E2D182910: public key "Gentoo Linux Release Engineering (Automated Weekly Release Key) <releng@gentoo.org>" imported gpg: key A13D0EF1914E7A72: 1 signature not checked due to a missing key gpg: key A13D0EF1914E7A72: public key "Gentoo repository mirrors (automated git signing key) <repomirrorci@gentoo.org>" imported gpg: Total number processed: 4 gpg: imported: 4 gpg: no ultimately trusted keys found
Následně ověřte kryptografický podpis souboru .DIGESTS.asc:
user $
gpg --verify install-amd64-minimal-20141204.iso.DIGESTS.asc
gpg: Signature made Fri 05 Dec 2014 02:42:44 AM CET gpg: using RSA key 0xBB572E0E2D182910 gpg: Good signature from "Gentoo Linux Release Engineering (Automated Weekly Release Key) <releng@gentoo.org>" [unknown] gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: 13EB BDBE DE7A 1277 5DFD B1BA BB57 2E0E 2D18 2910
Abyste měli absolutní jistotu, že je vše správně, ověřte zobrazený otisk s otiskem na stránce podpisů Gentoo.
Vypálení disku
Samozřejmě pouze se staženým souborem ISO nemůže být instalace Gentoo Linuxu zahájena. Soubor ISO musí být vypálen na CD, z něhož bude startováno, takovým způsobem, že na CD bude vypálen jeho obsah, nikoli soubor samotný. Níže jsou popsány nejběžnější metody. Podrobnější pokyny jsou k nalezení na stránce Naše FAQ k vypalování souborů ISO.
Vypalování s Microsoft Windows
Vypálení s Linuxem
V Linuxu může být soubor ISO vypálen na CD s použitím příkazu cdrecord, který je součástí balíčku app-cdr/cdrtools.
Například k vypálení souboru ISO na zařízení /dev/sr0 (toto je první zařízení CD v systému - zaměňte jej za správný soubor zařízení, pokud je to třeba):
user $
cdrecord dev=/dev/sr0 install-amd64-minimal-20141204.iso
Uživatelé, kteří dávají přednost grafického uživatelského prostředí mohou použít K3B, které je součástí balíku kde-apps/k3b. V K3B zvolte Nástroje a použijte Vypálit obraz CD. Po té následujte pokyny poskytnuté K3B.
Bootování
Zavedení instalačního média
Jakmile je instalační médium připraveno, je čas jej zavést. Vložte médium do počítače, restartujte systém a vejděte do uživatelského rozhraní firmwaru základní desky. Obvykle tak učiníte stisknutím klávesy jako je DEL, F1, F10 nebo Esc v průběhu testu po spuštění systému (POST). Spouštěcí klávesa bývá různá v závislosti na použitém systému a základní desce. Pokud není zřejmé, jak postupovat, použijte internetový vyhledávač a vyhledejte postup za použití čísla modelu vaší zákaldní desky jako klíčového slova. Určit správný výsledek by mělo být snadné. Jakmile budete uvnitř menu firmwaru základní desky, změňte pořadí zavádění tak, aby byla externí zaváděcí média (CD/DVD disky nebo USB flashky) načítána před interním úložištěm. Bez této změny bude systém pravěděpodobně zaveden z interního úložiště, aniž by bylo vyzkoušeno externí zaváděcí médium.
Jestliže instalujete Gentoo se záměrem používat rozhraní UEFI namísto BIOS, doporučuje se zavádět přímo pomocí UEFI. Jestliže se tak nestane, bude před dokončením instalace Gentoo Linuxu nejspíše nutné vytvořit bootovatelný UEFI USB flash disk (nebo jiné médium).
Pokud jste tak ještě neučinili, zkontrolujte, zda je instalační médium vloženo do systému a restartujte. Měla by se objevit zaváděcí obrazovka. Stisknutím klávesy Enter nastartujete s výchozími volbami. K nastartování instalačního média s vlastními volbami, specifikujte jádro a navazující zaváděcí volby a stiskněte Enter.
In all likelihood, the default gentoo kernel, as mentioned above, without specifying any of the optional parameters will work just fine. For boot troubleshooting and expert options, continue on with this section. Otherwise, just press Enter and skip ahead to Extra hardware configuration.
Uživatelé mají na zaváděcím řádku možnost nechat si zobrazit dostupná jádra F1 a zaváděcí volby F2. V případě že do 15 sekund není učiněna žádná volba (buď zobrazení informací nebo použití jádra), instalační médium zavede systém z disku. To umožňuje instalacím restartovat a vyzkoušet nainstalované prostředí bez nutnosti vyjmutí CD z mechaniky (což se velmi cení v případě vzdálené instalace).
Zmínili jsme možnost volby jádra. Na minimálním instalačním médiu jsou k dipozici pouze dvě předdefinované možnosti. Výchozí je pojmenována gentoo. Druhá je varianta "-nofb"; ta vypíná podporu framebufferu v jádře.
Následující část poskytuje krátký přehled dostupných jader a jejich popis:
Jádra na výběr
- gentoo
- Výchozí jádro s podporou procesorů K8 (včetně podpory NUMA) a procesorů EM64T.
- gentoo-nofb
- Stejné jako gentoo, ale bez podpory framebufferu
- memtest86
- Kontrola chyb paměti RAM v počítači
Kromě volby jádra můžete pomocí voleb zavádění proces startování dále vyladit.
Hardwarové volby
- acpi=on
- Nahraje podporu ACPI a zároveň necháte CD během zavádění spustit démona acpid. To je potřebné pouze pokud váš systém vyžaduje pro svůj běh ACPI. Není vyžadováno pro podporu HyperThreading.
- acpi=off
- Zcela vypne ACPI. Tato volba je užitečná u starších systémů a je také vyžadována v případě použití APM. Tím bude vypnuta také podpora Hyperthreadingu u vašeho procesoru.
- console=X
- Nastaví přístup přes sériovou konzoli. Prvním parametrem je zařízení, v případě x86 obvykle ttyS0, následované volbami pro připojení, které jsou odděleny čárkou. Výchozí volby jsou 9600,8,n,1.
- dmraid=X
- Umožní předání voleb pro RAID subsystém device-mapperu. Volby by měly být uzavřeny do uvozovek.
- doapm
- Nahraje podporu APM. Vyžaduje volbu
acpi=off
. - dopcmcia
- Zapne podporu pro hardware PCMCIA a Cardbus a zároveň spustí při startu pcmcia cardmgr. Tato volba je vyžadována pouze v případě, že je zaváděno ze zařízení PCMCIA/Cardbus.
- doscsi
- Zapne podporu většiny SCSI řadičů. Tato volba je vyžadována také pro zavedení z většiny zařízení USB, jelikož ta používají SCSI subsystém jádra.
- sda=stroke
- Umožní uživateli rozdělit celý disk i v případě, že BIOS není schopen pracovat s velkými disky. Tato možnost se používá u strojů se starým BIOSem. Zaměňte sda za zařízení, které vyžaduje tuto volbu.
- ide=nodma
- Vynutí vypnutí DMA v jádře, což je vyžadováno některými čipsety IDE a také některými CDROM mechanikami. Pokud má systém potíže se čtením z IDE CDROM, zkuste tuto volbu. Tímto také vypnete spouštění výchozího nastavení hdparm.
- noapic
- Vypne Advanced Programmable Interrupt Controller obsažený na novějších základních deskách. Ví se, že na starším hardwaru působí problémy.
- nodetect
- Vypne autodetekci prováděnou médiem, včetně automatické detekce zařízení a konfiguraci sítě pomocí DHCP. To se hodí pro ladění vadného média nebo ovladače.
- nodhcp
- Vypne DHCP na nalezených síťových kartách. Užitečné pouze u sítí se statickými adresami.
- nodmraid
- Vypne podporu device-mapper RAID běžně používaný v integrovaných IDE/SATA řadičích.
- nofirewire
- Vypne nahrání modulů Firewire. Toto by mělo být nutné pouze v případě, že váš Firewire hardware způsobuje problémy se zaváděním média.
- nogpm
- Vypne podporu gpm - myš v konzoli.
- nohotplug
- Vypne spuštění init skriptů hotplug a coldplug při startu. To se hodí pro ladění vadného média nebo ovladače.
- nokeymap
- Vypne výběr rozložení klávesnice jiného rozložení než je US.
- nolapic
- Vypne místní APIC na Uniprocessor jádrech.
- nosata
- Vypne zavedení modulů Serial ATA. Používá se v případě, že má systéém problém se subsystémem SATA.
- nosmp
- Vypne SMP neboli Symmetric Multiprocessing na jádrech se zapnutým SMP. Používá se pro ladění problémů souvisejících se SMP u některých ovladačů a základních desek.
- nosound
- Vypne podporu zvuku a nastavení hlasitosti. Používá se u systémů, kde může podpora zvuku činit potíže.
- nousb
- Vypne automatické nahrávání modulů USB. Používá se pro ladění problémů s USB.
- slowusb
- Přidá extra pauzy při zavádění kvůli pomalým USB CDROMkám, např. u IBM BladeCenter.
Správa logický disků (LVM)
- dolvm
- Zapne podporu linuxového LVM (Správa logických disků).
Další volby
- debug
- Zapne ladící kód. Může způsobit chaos zobrazením spousty dat na obrazovce.
- docache
- Nahraje veškerý spouštěný obsah CD do RAM, což umožní uživateli odpojit /mnt/cdrom a připojit jiný CDROM. Vyžaduje, aby bylo k dispozici nejméně dvakrát více RAM, než kolik činí velikost CD.
- doload=X
- Způsobí, že počáteční ramdisk nahraje jakýkoli uvedený modul a jeho závislosti. Zaměňte X za jméno modulu. Můžete uvést více modulů oddělených v seznamu čárkou.
- dosshd
- Během zavádění spustí sshd. Používá se při instalacích bez přímé obsluhy.
- passwd=foo
- Cokoli následuje po = nastaví jako root heslo, což je vyžadováno volbou dosshd, jelikož root heslo je ve výchozím stavu zakódováno.
- noload=X
- Tímto se počátečnímu ramdisku zamezí v nahrání určitého modulu, který může způsobovat potíže. Syntaxe je stejná jako u doload.
- nonfs
- Vypne spuštění portmap/nfsmount během zavádění..
- nox
- U LiveCD s podporou X způsobí, že X nebude spuštěno automaticky, ale namísto toho bude ponechán příkazový řádek.
- scandelay
- Způsobí, že do určité části zaváděcího procesu bude vložena prodleva 10 sekund, aby se zařízení, jejichž inicializace je pomalá, mohla připravit k použití.
- scandelay=X
- Umožňuje uživateli specifikovat prodlevu v sekundách přidanou do určitých částí zaváděcího procesu, aby se zařízení, jejichž inicializace je pomalá, mohla připravit k použití. Zaměňte X za počet sekund prodlevy.
Instalační médium zkontroluje použití voleb
no*
před volbami do*
, takže volby mohou být podle tohoto pořadí přepisovány.Nyní zaveďte systém z média, vyberte jádro (pokud vám výchozí jádro gentoo nevyhovuje) a volby zavedení. V příkladu spustíme jádro gentoo s parametrem jádra dopcmcia
:
boot:
gentoo dopcmcia
Následně je uživatel přivítán zaváděcí obrazovkou a ukazatelem průběhu. Pokud je instalace prováděna na systému s jinou než US klávesnicí, určitě se přepněte do ukecaného módu okamžitým zmáčknutím Alt+F1 a řiďte se pokyny. Pokud nebude do 10 sekund učiněna žádná volba, bude použito výchozí rozložení (klávesnice US) a zavádění bude pokračovat. Jakmile je zavádění dokončeno, uživatel je automaticky přihlášen do "živého" prostředí Gentoo Linuxu jako uživatel root, superuživatel. Na zvolené konzoli se zobrazí návěstí roota, na ostatní konzole je možné se přepnout zmáčknutím Alt+F2, Alt+F3 a Alt+F4. Na počáteční se vrátíte stisknutím Alt+F1.
Dodatečná konfigurace hardwaru
Jakmile je instalační médium zavedeno, pokusí se rozpoznat všechny hardwarová zařízení a nahrát odpovídající jaderné moduly na podporu hardwaru. Ve většině případů odvede velmi dobrou práci. Nicméně v některých případech nemusí automaticky nahrát systémem vyžadované jaderné moduly. Pokud autodetekce PCI nezachytí některou ze součástí hardwaru systému, bude nutné nahrát příslušný jaderný modul ručně.
V následujícím příkladu je nahrán modul 8139too (který podporuje určité druhy síťových karet):
root #
modprobe 8139too
Volitelné: Uživatelské přístupy
Pokud potřebují další lidé přístup k instalačnímu prostředí nebo pokud potřebujete spustit příkazy pod jiným uživatelem než je root na instalačním médium (například chat s použitím irssi bez root oprávnění z bezpečnostních důvodů), pak je třeba vytvořit dodatečný uživatelský účet a nastavit silné heslo pro uživatele root.
Ke změně hesla root použijte utilitu passwd:
root #
passwd
New password: (Enter the new password) Re-enter password: (Re-enter the password)
K vytvoření uživatelského účtu nejprve vložte jeho údaje následované heslem. Pro tyto úkony se používají příkazy useradd a passwd.
V následujícím příkladu bude vytvořen uživatel s jménem "john":
root #
useradd -m -G users john
root #
passwd john
New password: (Enter john's password) Re-enter password: (Re-enter john's password)
K přepnutí se z (současného) uživatele "root" na nově vytvořený uživatelský účet, použijte příkaz su:
root #
su - john
Volitelné: Zobrazení dokumentace během instalace
TTY
Pro zobrazení dokumentace nejprve vytvořte uživatelský účet jak je popsáno výše. Po té stiskněte Alt+F2 k přepnutí na nový terminál.
V průběhu instalace může použít příkaz links k prohlížení Příručky Gentoo - samozřejmě pouze od chvíle, kdy zprovozníte připojení k internetu.
user $
links https://wiki.gentoo.org/wiki/Handbook:AMD64/cs
K návratu na původní terminál stiskněte Alt+F1.
When booted to the Gentoo minimal or Gentoo admin environments, seven TTYs will be available. They can be switched by pressing Alt then a function key between F1-F7. It can be useful to switch to a new terminal when waiting for job to complete, to open documentation, etc.
GNU Screen
Utilita GNU Screen je ve výchozím stavu na instalačním médiu nainstalována. Pro nadšence políbené Linuxem může být efektivnější použít screen k zobrazení instalačních pokynů na rozdělené obrazovce než s využitím metody více TTY, jak je zmíněno výše.
Volitelné: Spuštění démona SSH
Abyste umožnili ostatním uživatelům přístup k systému v průběhu instalace (kvůli podpoře během instalace nebo dokonce k jejímu vzdálenému provedení), musí být vytvořen uživatelský účet (jak bylo popsáno dříve) a spuštěn démon SSH.
Službu SSH nahodíte s initem OpenRC spuštěním následujícího příkazu:
root #
rc-service sshd start
Jestliže se uživatel přihlásí k systému, uvidím zprávu o tom, že je třeba ověřit klíč hostitelského systému (skrze to, co se nazývá otiskem). Toto je typické chování a u prvotního připojení k SSH serveru jej lze očekávat. Nicméně později, jakmile bude systém nastaven a někdo se na nově vytvořený systém přihlásí, zobrazí SSH klient varování, že hostitelský klíč byl změněn. To proto, že uživatel se nyní přihlašuje - z pohledu SHH - na jiný server (jmenovitě na nově nainstalovaný Gentoo systém namísto živého prostředí, které používáte k instalaci). Řiďte se pokyny na obrazovce a vyměňte hostitelský klíč na klientském systému.
Abyste mohli použít sshd, síť musí správně fungovat. Pokračujte na kapitolu Konfigurace sítě.
Automatické nalezení sítě
Je možné, že to prostě funguje?
Pokud je systém zapojen do sítě ethernet s DHCP serverem, je velmi pravděpodobné, že síť byla nastavena automaticky. Pokud je tomu tak, pak spousta příkazů pracujících se sítí, které jsou součástí instalačního CD, jako jsou mezi jinými ssh, scp, ping, irssi, wget a links, budou bezprostředně fungovat.
Určete názvy rozhraní
příkaz ifconfig
Pokud byla síť nastavena, pak by měl příkaz ifconfig vypsat jedno nebo více síťových rozhraní (kromě lo). V příkladu níže uvidíme eth0:
root #
ifconfig
eth0 Link encap:Ethernet HWaddr 00:50:BA:8F:61:7A inet addr:192.168.0.2 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::50:ba8f:617a/10 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1498792 errors:0 dropped:0 overruns:0 frame:0 TX packets:1284980 errors:0 dropped:0 overruns:0 carrier:0 collisions:1984 txqueuelen:100 RX bytes:485691215 (463.1 Mb) TX bytes:123951388 (118.2 Mb) Interrupt:11 Base address:0xe800
V důsledku posunu k předvídatelným názvům síťových rozhraní se pojmenování rozhraní mohou od starších konvencí eth0 docela lišit. Nejnovější instalační média mohou u běžných síťových rozhraní zobrazovat jména jako eno0, ens1 nebo enp5s0. Ve výstupu příkazu ifconfig hledejte rozhraní, které má IP adresu odpovídající místní síti.
Pokud standardní příkaz ifcondif nezobrazí žádná rozhraní, zkuste použít stejný příkaz s volbou
-a
. Tato možnost donutí utilitu, aby ukázala všechna síťová rozhraní detekovaná v systému, ať už jsou v zapnutém nebo vypnutím stavu. Pokud je výstup příkazu ifconfig -a bez výsledku, pak to značí selhání hardwaru nebo nebyl do jádra nahrán ovladač rozhraní. Obě situace zasahují mimo záběr této příručky. Pro podporu kontaktuje #gentoo (webchat).Příkaz ip
Jako alternativu k příkazu ifconfig můžete použít k rozlišení názvů rozhraní příkaz ip. Následující příklad ukazuje výstup ip addr (u jiného systému, tudíž zobrazená informace je odlišná od předchozího příkladu):
root #
ip addr
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether e8:40:f2:ac:25:7a brd ff:ff:ff:ff:ff:ff inet 10.0.20.77/22 brd 10.0.23.255 scope global eno1 valid_lft forever preferred_lft forever inet6 fe80::ea40:f2ff:feac:257a/64 scope link valid_lft forever preferred_lft forever
Shora uvedený výstup může být složitější ke čtení než alternativa. Název rozhraní následuje bezprostředně po čísle; je jím eno1.
Ve zbývající části tohoto dokumentu budeme předpokládat, že rozhraní je pojmenováno eth0.
Volitelné: Konfigurace proxy serverů
Pokud k internetu přistupujete přes proxy server, musíte v průběhu instalace nastavit informace o proxy. Nastavení proxy je velmi jednoduché: zkrátka definujte proměnnou, která obsahuje informace o proxy serveru.
Certain text-mode web browsers such as links can also make use of environment variables that define web proxy settings; in particular for the HTTPS access it also will require the https_proxy environment variable to be defined. While Portage will be influenced without passing extra run time parameters during invocation, links will require proxy settings to be set.
Ve většině případů dostačuje, pokud se proměnný definuje za použití hostitelského jména serveru. Na příklad předpokládejme, že proxy má název proxy.gentoo.org s portem 8080.
The
#
symbol in the following commands is a comment. It has een added for clarity only and does not need to be typed when entering the commands.Nastavení HTTP proxy (HTTP a HTTPS provoz):
root #
export http_proxy="http://proxy.gentoo.org:8080"
Pokud proxy vyžaduje uživatelské jméno a heslo, použijte pro proměnnou následující syntaxi:
http://username:password@proxy.gentoo.org:8080
Start links using the following parameters for proxy support:
user $
links -http-proxy ${http_proxy} -https-proxy ${https_proxy}
Nastavení FTP proxy:
root #
export ftp_proxy="ftp://proxy.gentoo.org:8080"
Start links using the following parameter for a FTP proxy:
user $
links -ftp-proxy ${ftp_proxy}
Nastavení RSYNC proxy:
root #
export RSYNC_PROXY="proxy.gentoo.org:8080"
Kontrola sítě
Zkuste pingnout DNS server svého ISP (naleznete jej v /etc/resolv.conf) a webovou stránku podle svého výběru. Tím se ujistíte, že síť funguje správně a síťové pakety odchází do sítě, rozpoznávání jmen skrze DNS řádně funguje, atd.
root #
ping -c 3 www.gentoo.org
Pokud vše funguje, můžete přeskočit zbytek této kapitoly a jít rovnou na další krok instalačních pokynů (Příprava disků).
Automatická konfigurace sítě
Pokud síť ihned nefunguje, některá instalační média umožňují uživateli použít nástroje net-setup (pro běžné a bezdrátové sítě), pppoe-setup (pro uživatele s ADSL) nebo pptp (pro uživatele s pptp).
Pokud instalační médium neobsahuje žádný z těchto nástrojů, pokračujte na Ruční nastavení sítě.
- Uživatelé běžného Ethernetu by měli pokračovat na Výchozí: Použití net-setup
- Uživatelé ADSL by měli pokračovat na Alternativa: Použití PPP
- Uživatelé PPTP by měli pokračovat na Alternativa: Použití PPTP
Výchozí: Použití net-setup
Nejjednodušším způsobem jak nastavit síť, pokud nebyla nastavena automaticky, je spuštění skriptu net-setup:
root #
net-setup eth0
net-setup se vás zeptá na několik otázek o vaší síti. Jakmile bude vše hotové, síťové připojení by mělo fungovat. Vyzkoušejte ho tak, jak je popsáno výše. Pokud je test pozitivní, gratulujeme. Přeskočte zbytek této sekce a pokračujte na Příprava disků.
Pokud síť stále nefunguje, pokračujte na Ruční nastavení sítě.
Alternativa: Použití PPP
Za předpokladu, že je k připojení k internetu potřeba PPPoE, instalační CD (jakákoli verze) vše usnadňuje tím, že obsahuje ppp. Použijte poskytnutý skript pppoe-setup ke konfiguraci připojení. Během nastavování budete dotázáni na zařízení ethernet připojené k vašemu ADSL modemu, uživatelské jméno a heslo, IP adresy DNS serverů a zda požadujete základní firewall nebo ne.
root #
pppoe-setup
root #
pppoe-start
Pokud se něco pokazí, překontrolujte pečlivě zda uživatelské jméno a heslo bylo zadáno správně nahlédnutím do souboru /etc/ppp/pap-secrets nebo /etc/ppp/chap-secrets a ujistěte se, že používáte správné zařízení ethernet. Pokud zařízení ethernet neexistuje, je potřeba nahrát odpovídající síťové moduly. V tom případě pokračujte na Ruční nastavení sítě, která vám vysvětlí, jak nahrát odpovídající síťové moduly.
Pokud vše funguje, pokračujte na Příprava disků.
Alternativa: Použití PPTP
Pokud je vyžadována podpora PPTP, použijte program pptpclient, který je poskytován instalačními CD. Nejprve se však ujistěte o správnosti nastavení. Upravte soubor /etc/ppp/pap-secrets nebo /etc/ppp/chap-secrets, aby obsahoval správnou kombinaci uživatelského jména a hesla:
root #
nano -w /etc/ppp/chap-secrets
Po té upravte /etc/ppp/options.pptp, pokud je to potřeba:
root #
nano -w /etc/ppp/options.pptp
Jakmile je toto všechno hotové, spusťte pptp (společně s volbami, které nelze nastavit options.pptp) k připojení na server:
root #
pptp <ip serveru>
Nyní pokračujte na Přípravu disků.
Ruční nastavení sítě
Nahrání odpovídajících síťových modulů
Jakmile je instalační CD zavedeno, pokusí se detekovat hardwarová zařízení a nahrát odpovídající jaderné moduly (ovladače) k podpoře hardwaru. V naprosté většině případů odvede dobrou práci. Nicméně někdy nemusí potřebné jaderné moduly automaticky nahrát.
Pokud příkazy net-setup nebo pppoe-setup selhaly, je možné, že síťová karta nebyla nalezena. To znamená, že uživatelé budou nejspíš muset nahrát odpovídající jaderné module ručně.
Ke zjištění toho, jaké jaderné moduly síťových zařízení jsou k dispozici, použijte ls:
root #
ls /lib/modules/`uname -r`/kernel/drivers/net
Pokud byl ovladač pro síťové zařízení nalezen, použijte modprobe k zavedení jaderného modulu. Například k nahrání modulu pcnet32:
root #
modprobe pcnet32
Abyste ověřili, zda už je síťová karta detekována, použijte ifconfig. Rozpoznaná sítová karta bude mít za výsledek něco takového (opakujeme, že eth0 je jen příklad):
root #
ifconfig eth0
eth0 Link encap:Ethernet HWaddr FE:FD:00:00:00:00 BROADCAST NOARP MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Pokud je však zobrazena následující chyba, síťová karta nebyla rozpoznána:
root #
ifconfig eth0
eth0: error fetching interface information: Device not found
Dostupná síťová rozhraní mohou být vypsána ze souborového systému /sys:
root #
ls /sys/class/net
dummy0 eth0 lo sit0 tap0 wlan0
V příkladu výše bylo detekováno šest rozhraní. eth0 je nejspíše zařízení ethernet (drátová síť) zatímco wlan0 je bezdrátový adaptér.
Za předpokladu, že síťová karta byla rozeznána, pokuste se znovu spustit net-setup nebo pppoe-setup (které by měly nyní fungovat). Nicméně těm, co jsou zarytými fanoušky vysvětlíme, jak nastavit síť manuálně.
Vyberte si jednu z následujících sekcí podle toho, jaké je vaše síťové nastavení:
- Použití DHCP pro automatické získání IP
- Příprava bezdrátového připojení v případě, že používáte bezdrátovou síť
- Terminologie sítí vysvětluje základy síťování
- Použití ifconfig a route vysvětluje, jak síť ručně nastavit
Použití DHCP
DHCP (Dynamic Host Configuration Protocol) umožňuje automaticky obdržet informace o síti (IP adresu, síťovou masku, broadcast adresu, bránu, jmenné servery, atd.). Funguje pouze v případě, že je v síti DHCP server (nebo pokud poskytovatel připojení poskytuje službu DHCP). Aby vaše síťové rozhraní obdrželo tuto informaci automaticky, použijte dhcpcd:
root #
dhcpcd eth0
Někteří správci sítě vyžadují, aby systém použil název počítače a domény poskytované DHCP serverem. V takovém případě použijte příkaz:
root #
dhcpcd -HD eth0
Pokud to funguje (zkuste poslat ping na některý internetový server, jako je 8.8.8.8 patřící Googlu nebo 1.1.1.1 patřící Cloudflare), pak je vše nastaveno a připraveno. Přeskočte zbytek této části a pokračujte na Přípravu disků
Příprava bezdrátového připojení
Příkaz iw může být podporován pouze na určitých architekturách. Pokud není příkaz k dispozici, jestli je pro vaši současnou architekturu k dispozici balíček net-wireless/iw. Příkaz iw bude nedostupný, dokud nebude balíček net-wireless/iw nainstalován.
Pokud používáte bezdrátovou (802.11) kartu, je nutné nastavit parametry bezdrátového připojení, bez toho se nejde dostat dál. Ke zjištění současného nastavení bezdrátové karty lze použít příkaz iw. Po spuštění iw zobrazí něco podobného tomuto:
root #
iw dev wlp9s0 info
Interface wlp9s0 ifindex 3 wdev 0x1 addr 00:00:00:00:00:00 type managed wiphy 0 channel 11 (2462 MHz), width: 20 MHz (no HT), center1: 2462 MHz txpower 30.00 dBm
Pokud chcete zkontrolovat současné připojení:
root #
iw dev wlp9s0 link
Not connected.
nebo
root #
iw dev wlp9s0 link
Connected to 00:00:00:00:00:00 (on wlp9s0) SSID: GentooNode freq: 2462 RX: 3279 bytes (25 packets) TX: 1049 bytes (7 packets) signal: -23 dBm tx bitrate: 1.0 MBit/s
Název zařízení některých bezdrátových karet může znít wlan0 nebo ra0 namísto wlp9s0. Ke zjištění správného názvu zařízení spusťte ip link.
Pro většinu uživatelů bude potřebné změnit pouze dvě nastavení, aby se mohli připojit, ESSID (tj. název bezdrátové sítě) a, volitelně, WEP klíč.
- Nejprve se ujistěte, že je rozhraní aktivní:
root #
ip link set dev wlp9s0 up
- Pro připojení k otevřené síti s názvem :GentooNode":
root #
iw dev wlp9s0 connect -w GentooNode
- Pro připojení s hexovým WEP klíčem, přidejte před kód
d:
:
root #
iw dev wlp9s0 connect -w GentooNode key 0:d:1234123412341234abcd
- Pro připojení s ASCII WEP klíčem, vložte před klíč
s:
:
root #
iw dev wlp9s0 connect -w GentooNode key 0:some-password
Pokud bezdrátová síť používá WPA nebo WPA2, je nutné použít wpa_supplicant. Pokud chcete načerpat více informací o konfiguraci bezdrátových sítí v Gentoo Linuxu, přečtěte si prosím kapitolu o bezdrátových sítích Příručky Gentoo.
Ověřte si bezdrátové nastavení opět pomocí iw dev wlp9s0 link. Jakmile bezdrát funguje, pokračujte v nastavení IP úrovně sítě, tak jak je to popsáno v následující sekci (Terminologie sítí) nebo použijte nástroj net-setup jak bylo již dříve popsáno.
Porozumnění terminologii sítí
Pokud víte, co je to IP adresa, všesměrová adresa, síťová maska a jmenné servery, přeskočte tento pododdíl a pokračujte na Použití ifcondig a route.
Pokud vše, co je uvedeno výše selže, budete muset síť nastavit ručně. To však není vůbec složité. Nicméně je potřeba mít znalosti základních pojmů z počítačových sítí. Po přečtení tohoto oddílu budou uživatelé vědět co je to brána, k čemu slouží síťová maska, jakým způsobem se určí všesměrová adresa a proč systémy potřebují jmenné servery.
Počítače jsou v sítí identifikovány svojí IP adresou (Internet Protocol address). Tato adresa se zobrazuje jako kombince čtyř čísel v rozpětí od 0 do 255. Tedy alespoň co se týče IPv4 (IP verze 4). Reálně se je adresa IPv4 složená ze 32 bitů (jedničky a nuly). Podívejme se na příklad:
IP adresa (čísla): 192.168.0.2
IP adresa (bity): 11000000 10101000 00000000 00000010
-------- -------- -------- --------
192 168 0 2
Nástupce IPv4, IPv6, používá 128 bitů (jedniček a nul). V tomto oddíle se zabýváme IPv4 adresami.
Každý počítač má jedinečnou IP adresu v okruhu dostupných sítí (tzn., že každý počítač, ke kterému se chceme dostat, musí mít jedinečnou IP adresu). Abychom rozlišili mezi počítači uvnitř a vně naší sítě, je IP adresa rozdělena na dvě části - síťovou a hostitelskou.
Rozdělení popisuje síťová maska, soubor jedniček následovaný souborem nul. Ta část IP adresy, kterou lze přiřadit k jedničkám, je síťová část, druhá část je hostitelská část. Jako obvykle, síťová maska může být zaznamenána jako IP adresa.
IP adresa: 192 168 0 2
11000000 10101000 00000000 00000010
Síťová maska: 11111111 11111111 11111111 00000000
255 255 255 0
+--------------------------+--------+
síť hostitel
Jinými slovy, 192.168.0.14 je součástí stejné sítě, ale 192.168.1.2 už ne.
Všesměrová adresa je IP adresa se stejnou síťovou částí, jako síť a pouze s jedničkami v hostitelské části. Každý hostitel na síti neslouchá této adrese. Jejím účelem je doslova vysílání paketů všemi směry.
IP adresa: 192 168 0 2
11000000 10101000 00000000 00000010
Všesměrová adresa: 11000000 10101000 00000000 11111111
192 168 0 255
+--------------------------+--------+
síť hostitel
Abyste mohli surfovat na internetu, každý počítač v sítí musí vědět, který hostitel poskytuje internetové připojení. Tento hostitel se nazývá bránou. Vzhledem k tomu, že se jedná o obyčejného hostitele, má také IP adresu (například 192.168.0.1).
Dříve jsme uvedli, že každý hostitel má svoji vlastní IP adresu. Abychom se mohli k hostiteli dostat i podle jeho jména (namísto IP adresy) potřebujeme službu, která přeloží jméno (například dev.gentoo.org) na IP adresu (například 64.5.62.82). Této službě se říká "služba jmen". Abyste mohli začít službu využívat, musíte definovat příslušné jmenné servery v /etc/resolv.conf.
V něklterých případech brána slouží zároveň jako jmenný server. V opačném případě musí být jmenné servery poskytované ISP do souboru vloženy.
Abychom mohli pokračovat shrnujeme, že jsou potřeba následující údaje:
Prvek sítě | Příklad |
---|---|
IP adresa systému | 192.168.0.2 |
Síťová maska | 255.255.255.0 |
Všesměrová adresa | 192.168.0.255 |
Brána | 192.168.0.1 |
Jmenné servery | 195.130.130.5, 195.130.130.133 |
Použití ifconfig a route
Nastavení sítě sestává z těchto tří kroků.
- Přiřaďte IP addresu použitím příkazu ifconfig
- Nastavte směrování k bráně použitím příkazu route
- Dokončete umístěním IP adres jmenných serverů do /etc/resolv.conf
K přiřazení IP adresy potřebujeme IP adresu, všesměrovou adresu a síťovou masku. Po té spusťe následující příkaz, přičemž nahraďte ${IP_ADDR} správnou IP adresu, ${BROADCAST} správnou všesměrovou adresou a ${NETMASK} správnou síťovou maskou:
root #
ifconfig eth0 ${IP_ADDR} broadcast ${BROADCAST} netmask ${NETMASK} up
Pomocí route nastavte směrování. Nahraďte ${GATEWAY} IP adresou brány:
root #
route add default gw ${GATEWAY}
Nyní otevřte soubor /etc/resolv.conf:
root #
nano -w /etc/resolv.conf
Vyplňte jmenný(é) server(y) podle následujícího vzoru. Ujistěte se, že ${NAMESERVER1} a ${NAMESERVER2} nahradíte odpovídajícími adresami jmenných serverů.
/etc/resolv.conf
Výchozí vzor pro /etc/resolv.confnameserver ${NAMESERVER1}
nameserver ${NAMESERVER2}
A je to. Nyní vyzkoušejte zda síť funguje pingováním internetového serveru (například 8.8.8.8 patřícího Googlu nebo 1.1.1.1 patřícího Cloudflare). Pokud ano, gratulujeme. Pokračujte na Přípravu pevných disků.
Úvod k blokovým zařízením
Bloková zařízení
Pojďme se podrobně podívat na problematiku Gentoo Linuxu a Linuxu obecně ohledně disků, včetně blokových zařízení, diskových oddílů a systémů souborů. Jakmile si ukážeme všechny souvislosti, můžeme vytvořit oddíly disku a souborové systémy k nainstalování Gentoo Linuxu.
Pro začátek se podívejme na bloková zařízení. SCSI a Serial ATA disky jsou oboje označovány jako zařízení /dev/sda, /dev/sdb, /dev/sdc atd. Na novějších strojích s PCI Express NVMe pevnými disky jsou to zařízení /dev/nvme0n1, /dev/nvme0n2 atd.
Následující tabulka pomůže čtenářům určit, kde hledat v systému vyjmenovaná bloková zařízení:
Typ zařízení | Výchozí soubor zařízení | Poznámky a postřehy autorů |
---|---|---|
NVM Express (NVMe) | /dev/nvme0n1 | Nejnovější technologie v oblasti solid state, disky NVMe jsou připojené ke sběrnice PCI Express a mají nejvyšší přenosovou rychlost v blokových transkacích. Podpora zařízení NVMe se dá najít v systémech od roku 2014 a dál. |
SATA, SAS, SCSI nebo USB flash | /dev/sda | Nalézá se v hardwaru zhruba od roku 2007 až do současnosti, tato zařízení jsou v Linuxu zřejmě nejpoužívanější. Tato zařízení se připojují prostřednictvím sběrnic SATA, SCSI nebo USB jako bloová úložiště. |
MMC, eMMC a SD | /dev/mmcblk0 | Zařízení embedded MMC, SD karty a další typy paměťových karet jsou použitelné jako úložiště dat. Nicméně mnoho systémů nemusí umožňovat nastartování pomocí těchto zařízení. Doporučuje se nepoužívat tato zařízení pro aktivní instalace Linuxu; spíše zvažte jejich použití pro přenos souborů, pro tento účel byla navržena. Alternativně je lze využít pro krátkodobé zálohy. |
IDE/PATA | /dev/hda | Starší ovladače Linuxového jádra IDE/Parallel ATA hardwaru zorbazovaly zařízení rotačních blokových zařízení připojených ke sběrnici IDE v tomto místě. Všeobecně lze říct, že tato zařízení jsou vyřazována z osobních počítačů od roku 2003, kdy se průmysl uchýlil ke standardu SATA. Většina systémů s jedním IDE řadičem může podporovat až čtyři zařízení (hda-hdd). Alternativní pojmenování pro tato starší rozhraní zahrnují Extended IDE (EIDE) a Ultra ATA (UATA). |
Shora uvedená bloková zařízení představují abstraktní rozhraní disků. Uživatelské programy využívají tato bloková zařízení k interakci s diskem bez toho, aby se musely starat o to, zda jde o disky IDE, SCSI nebo nějaké jiné. Program může přistupovat k úložnému prostoru na disku jako k hromadě souvislých, náhodně přístupných 4096bytových (4K) bloků.
Tabulky oddílů
Ačkoli je teoreticky možné použít surový, nerozdělený disk k umístění Linuxového systému (např. při tvorbě btrfs RAID), téměř nikdy se tak v praxi neděje. Namísto toho se disky rozdělují na menší, lépe spravovatelná bloková zařízení. V případě systémů amd64 se jim říká oddíly. V současnosti se používají dvě standardní technologie pro dělení oddílů: MBR a GPT.
GPT
"GTP (GUID Partition Table)" používá 64bitové identifikátory oddílů. Místo, kde se ukládají informace o oddílech, je také o mnoho větší, než 512 bytů u MBR, což znamená, že zde není prakticky žádné omezení počtu oddílů u GPT disků. Velikost oddílů je pak vázána mnohem vyšším limitem (téměř 8 ZiB - ano, zettabytů).
Pokud je systémovým softwarovým rozhraním mezi operačním systémem a firmwarem UEFI (namísto BIOSu), GPT je téměř nezbytné, jinak se objeví problémy kompatibility s MBR.
GPT také využívá výhod kontrolních součtů a redundance. Obsahuje CRC32 kontrolní součty k odhalování chyb v hlavičce a tabulce oddílů a na konci disku má zálohu GPT. Tato záložní tabulka může být využita k opravě poškozeného primárního GPT poblíž začátku disku.
There are a few caveats regarding GPT:
- Using GPT on a BIOS-based computer works, but then one cannot dual-boot with a Microsoft Windows operating system. The reason is that Microsoft Windows will boot in UEFI mode if it detects a GPT partition label.
- Some buggy (old) motherboard firmware configured to boot in BIOS/CSM/legacy mode might also have problems with booting from GPT labeled disks.
MBR
"MBR (Master Boot Record") používá 32bitové identifikátory startovního sektoru a délky oddílů a podporuje tři typy oddílů: primární, rozšířený a logický. Informace o primárního oddílech jsou uloženy v master boot record samotném - velmi malé (obvykle 512 bytů) oblasti na začátku disku. V důsledku tohoto malého prostoru jsou podporovány pouze čtyři primární oddíly (například /dev/sda1 až /dev/sda4).
Pro podporu více oddílů je nutné označit jeden z primárních oddílů jak rozšířený oddíl. Tento oddíl pak může obsahovat logické oddíly (oddíly v oddílech).
Ačkoli je většina výrobců základních desek dosud podporuje, tabulky oddílů jsou považovány za zastaralé. Pokud nepoužíváte hardware s původem před rokem 2010, je lepší rozdělit disk pomocí GUID Partition Table. Čtenáři, kteří jsou nuceni použít MBR, by měli vzít v potaz následující informace:
- Většina základních desek z obodobí po 2010 považuje MBR za zastaralý (podporvaný, ale ne ideální) mód zavádění.
- Kvůli použití 32bitových identifikátorů nelze tabulky oddílů master boot record použít pro disky s velikostí větší než 2 TiB.
- Pokud není použit rozšířený oddíl, MBR podporuje pouze 4 diskové oddíly.
- MBR neposkytuje žádnou zálohu, pokud tedy aplikace nebo uživatel přepíše MBR, veškeré informace o oddílech se ztratí.
Autoři příručky doporučují použití GTP pro všechny instalace Gentoo, kde je to možné.
Pokročilá úložiště
Instalační CD amd64 poskytuje podporu Správce logických oddílů (LVM). LVM zvyšuje flexibilitu při nastavování rozdělení disku. Níže uvedené instalační instrukce se budou soustředit na "běžné" oddíly, nicméně je dobré vědět, že LVM je podporováno, pokud se toužíte vydat touto cestou. Přečtěte si článek o LVM ohledně detailů. Nováčci dejte si pozor: ačkoli je LVM plně podporováno, je mimo záběr tohoto průvodce.
Výchozí schéma oddílů
Throughout the remainder of the handbook, we will discuss and explain two cases:
- GUID Partition Table (GPT) and UEFI boot.
- MBR Partition Table and MBR DOS/legacy BIOS boot.
While it is possible to mix and match boot types with certain motherboard firmware, mixing goes beyond the intention of the handbook. As previously stated, it is strongly recommended for installations on modern hardware to use GPT and UEFI boot.
Po celý zbytek této příručky bude využíváno následující schéma oddílů jako jednoduchý příklad rozdělení:
The first row of the following table contains exclusive information for either a GPT disk label or a MBR DOS/legacy BIOS disk label. When in doubt, proceed with GPT, since amd64 machines manufactured after the year 2010 generally support UEFI firmware and GPT boot sector.
Oddíl | Systém souborů | Velikost | Popis |
---|---|---|---|
/dev/sda1 | (zavaděč) | 2M | bootovací oddíl BIOsu |
/dev/sda1 | ext2 (nebo fat32, pokud používáte UEFI) | 128M | Zaváděcí oddíl/Systémový oddíl EFI |
/dev/sda3 | (swap) | 512M nebo více | swap oddíl |
/dev/sda4 | ext4 | Zbytek disku | kořenový oddíl |
Pokud je to dostatečné a čtenář se vydá cestou GPT, může okamžitě přejít na Výchozí: Použití parted k rozdělení disku. Ti, kteří se stále zajímají o MBR (hej - stává se to!) a používají výchozí rozdělení, mohou přeskočit na Alternativa: Použití fdisku k rozdělení disku.
fdisk a parted jsou obě utility k rozdělení disku. fdisk je dobře známá, stabilní, doporučená k rozdělení podle MBR, zatímco parted byla jedna z prvních utilit pro správu oddílů podporujících GTP oddíly. Ti, kterým se líbí rozhraní programu fdisk mohou použít gdisk (GPT disk) jako alternativu k parted.
Před uvedením instrukcí k tvorbě se první části budou věnovat detailnějšímu popisu toho, jak mohou být oddíly tvořeny a zmíní nejčastější problémy.
Návrh rozdělení oddílů
Kolik oddílů a jak velkých?
Návrh rozdělení diskových oddílů je značně závislý na požadavcích na systém. V případě velkého množství uživatelů je radno mít adresář /home/ na samostatném oddílu, což zvýší bezpečnost a usnadní zálohování a další údržbu. Pokud je Gentoo instalováno jako e-mailový server, pak by měl být adresář /var na samostatném oddíle, jelikož e-maily jsou uloženy uvnitř adresáře /var/. Správná volba systému souborů pak může maximalizovat výkon. Herní servery budou mít samostatný oddíl /opt/, jelikož většina herního software se instaluje tam. Důvod je stejný jako u adresáře /home/: bezpečnost a zálohy.
Ve většině případů by měly být na Gentoo /usr a /var co velikosti relativně rozsáhlé. /usr obsahuje většinu aplikací v systému a zdrojové kódy jádra Linux v adresáři /usr/src. Ve výchozím stavu se v adresáři /var nachází repozitář ebuildů (umístěný v /var/db/repos/gentoo), který v závislosti na souborovém systému obvykle zabírá okolo 650 MB protoru na disku. Tento odhad nezahrnuje adresáře /var/cache/distfiles a /var/cache/binpkgs, které se budou postupně zaplňovat zdrojovými kódy a (volitelně) binárními balíčky, tak jak budou postupně přidávány do systému.
Volba počtu oddílů a jejich velikosti závisí nejvíce na úvaze o výhodách a nevýhodách daného řešení a výběru nejlepší varianty podle okolností. Oddělené oddíly nebo svazky mají následující výhody:
- Vyberete nejlepší systém souborů pro každý oddíl nebo svazek
- Systému nemůže dojít volné místo na disku, pokud bude jediný nefunkční nástroj neustále zapisovat soubory na oddíl nebo svazek
- Kontrola systému souborů je v případě potřeby časově zkrácena, jelikož kontroly lze činit paralelně (ačkoli tato výhoda se týká spíše více disků než více oddílů).
- Bezpečnost může být zvýšena připojením některých oddílů v režimu pouze pro čtení, s volbou
nosuid
(setuid bity jsou ignorovány),noexec
(spouštěcí bity jsou ignorovány) atd.
Nicméně velké množství oddílů má také své nevýhody:
- Při špatné konfiguraci může mít systém mnoho volného místo na jednom oddíle a málo volného místa na jiném.
- Další nepříjemností je, že je oddělené oddíly - zvláště důležité přípojné body jako /usr/ a /var/ - často vyžadují aby správce při spuštění používal initramfs k připojení oddílů, než se spustí ostatní startovací skripty. Nemusí tomu tak však být vždy, tudíž se výsledky mohou lišit.
- Dále existuje u SATA a SCSI limit 15 oddílů, pokud disk nepoužívá GPT popisovače.
Installations that intend to use systemd as the service and init system must have the /usr directory available at boot, either as part of the root filesystem or mounted via an initramfs.
A co swap?
Neexistuje perfektní hodnota pro swap oddíl. Účelem swapu je poskytnout úložiště na disku v případě, že interní paměť jádra je pod tlakem. Swap umožňuje jádru přesunout stránky paměti, které nejspíše nebudou v krátkém časovém okamžiku potřebné na disk (swap nebo page-out) a paměť tak uvolnit. Samozřejmě pokud je tato paměť opět potřeba, je nutné tyto stránky opět vložit zpět do paměti (page-in), což zabere nějaký čas (jelikož disky jsou oproti vnitřní paměti pomalé).
Pokud systém nebude spouštět aplikace náročné na paměť nebo pokud má k dispozici hodně paměti, pak pravděpodobně nepotřebuje mnoho prostoru pro swap. Swap je však také používán pro uložení veškeré paměti v případě uspání. Pokud systém bude potřebovat uspávat, pak bude potřeba většího prostoru pro swap, obvykle nejméně v množství paměti instalované v systému.
Použití UEFI
Pokud instalujete Gentoo na systém, který používá k bootování operačního systému UEFI (namísto BIOSu), je důležité vytvořit systémový oddíl EFI (ESP). Níže uvedené instrukce pro parted obsahují vodítka nezbytná ke zdárnému provedení této operace.
ESP dále musí být variantou oddílu FAT (někdy zobrazovaného na Linuxových systémech jako vfat). Oficiální specifikace UEFI zmiňuje že firmware rozpozná systém souborů FAT12, 16 nebo 32, nicméně FAT32 je u ESP doporučený. Pokračujte naformátováním ESP na FAT32:
root #
mkfs.vfat -F 32 /dev/sda1
Pokud pro oddíl boot nepoužijete variantu FAT, pak nelze garantovat že firmware UEFI vašeho sytému bude schopen najít zavaděč (nebo jádro Linux) a nejspíše nebude schopný spustit systém!
Co je to bootovací oddíl BIOSu?
Bootvací oddíl BIOSu je velmi malý (1 až 2 MB) oddíl, do něhož mohou zavaděče jako GRUB2 umístit dodatečná data, která se nevejdou do přiděleného úložiště (několik stovek bytů v případě MBR) a která nemohou být umístěna jinam.
Alternativa: Použití fdisku k rozdělení disku
Následující části vysvětlují jak vytvořit příkladmé rozdělení disku pomocí příkazu fdisk. Příkladmé rozdělení oddílů bylo zmíněno dříve:
Rozložení oddílů si změňte podle osobních preferencí.
Oddíl | Popis |
---|---|
/dev/sda1 | zaváděcí oddíl BIOSu |
/dev/sda1 | zaváděcí oddíl |
/dev/sda3 | oddíl swap |
/dev/sda4 | kořenový oddíl |
Prohlížení současného rozdělení oddílů
fdisk je populární a silný nástroj k rozdělení disku na oddíly. Spusťte jej nad diskem (v našem případě použijeme /dev/sda):
root #
fdisk /dev/sda
Použijte p k zobrazení aktuální konfigurace rozdělení disku:
Command (m for help):
p
Disk /dev/sda: 240 heads, 63 sectors, 2184 cylinders Units = cylinders of 15120 * 512 bytes Device Boot Start End Blocks Id System /dev/sda1 * 1 14 105808+ 83 Linux /dev/sda2 15 49 264600 82 Linux swap /dev/sda3 50 70 158760 83 Linux /dev/sda4 71 2184 15981840 5 Extended /dev/sda5 71 209 1050808+ 83 Linux /dev/sda6 210 348 1050808+ 83 Linux /dev/sda7 349 626 2101648+ 83 Linux /dev/sda8 627 904 2101648+ 83 Linux /dev/sda9 905 2184 9676768+ 83 Linux
Device Start End Sectors Size Type /dev/sda1 2048 2099199 2097152 1G EFI System /dev/sda2 2099200 10487807 8388608 4G Linux swap /dev/sda3 10487808 60549119 50061311 23.9G Linux filesystem
}}Tento konkrétní disk byl nastaven tak, aby obsahoval sedm linuxových souborů systémů (každý z odpovídajícím oddílem označeným jako "Linux") a oddíl swap (označený jako "Linux swap").
Odstranění všech oddílů s fdiskem
Type g to create a new GPT disklabel on the disk; this will remove all existing partitions.
Command (m for help):
g
Created a new GPT disklabel (GUID: 87EA4497-2722-DF43-A954-368E46AE5C5F).
Nejprve odstraníme všechny oddíly z disku. Pro vymazání oddílu stiskněte d. Vymazání existujícího oddílu /dev/sda1:
Command (m for help):
d
Partition number (1-4): 1
Oddíl byl nyní připraven k vymazání. Nadále se nebude zobrazovat ve výpisu oddílů (p), ale nebude odstraněn do doby, než budou změny uloženy. To umožňuje uživatelům ukončit operaci, pokud udělali chybu - v takovém případě stiskněte ihned Enter a enter a oddíl nebude vymazán.
Opakovaně stiskněte p pro zobrazení výpisu oddílů a stiskněte d a číslo oddílu k vymazání. Nakonec bude tabulka oddílů prázdná:
Command (m for help):
p
Disk /dev/sda: 30.0 GB, 30005821440 bytes 240 heads, 63 sectors/track, 3876 cylinders Units = cylinders of 15120 * 512 = 7741440 bytes Device Boot Start End Blocks Id System
Nyní, když je tabulka oddílů v paměti prázdná, můžeme vytvářet oddíly.
Tvorba bootovacího oddílu BIOSu
A smaller ESP is possible but not recommended, especially given it may be shared with other OSes.
Nejprve vytvořte malý bootovací oddíl BIOSu. Pro vytvoření nového oddílu stiskněte n, potom p pro vytvoření primárního oddílu, následně 1 ke zvolení prvního primárního oddílu. Na dotaz ohledně prvního sektoru se ujistěte, že bude začínat na 2048 (což je třeba pro zavaděč) a stiskněte Enter. Na dotaz ohledně posledního sektoru napište +2M k vytvoření oddílu velkého 2 MB.
Command (m for help):
n
Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First sector (64-10486533532, default 64): 2048 Last sector, +sectors +size{M,K,G} (4096-10486533532, default 10486533532): +2M
Označte oddíl pro účely UEFI:
Command (m for help):
t
Selected partition 1 Hex code (type L to list codes): 4 Changed system type of partition 1 to 4 (BIOS boot)
Vytvoření swap oddílu
Pro vytvoření swap oddílu stiskněte n pro vytvoření nového oddílu, poté p pro vytvoření primárního oddílu. Po té stiskněte 3 pro vytvoření třetího primárního oddílu, /dev/sda3. Na dotaz ohledně prvního sektoru stiskněte Enter. Na dotaz ohledně posledního sektoru napište +512M (nebo jinou hodnotu dle potřebného prostoru pro swap) k vytvoření oddílu velkého 512 MB.
Tvorba bootovacího oddílu
Po tomto všem stiskněte t k nastavení typu oddílu, stisknutím 3 vyberete právě vytvořený oddíl a po té vepiště "82" pro nastavení typu na "Linux Swap".
Command (m for help):
t
Partition number (1,2, default 2): 2 Partition type (type L to list all types): 19 Changed type of partition 'Linux filesystem' to 'Linux swap'.
Vytvoření kořenového oddílu
Nakonec vytvoříme kořenový oddíl, k vytvoření nového oddílu stiskněte n, po té p pro vytvoření primárního oddílu. Po té stiskněte 4 k vytvoření čtvrtého primárního oddílu /dev/sda4. Na dotaz ohledně prvního sektoru stiskněte Enter. Na dotaze ohledně posledního sektoru, stiskněte Enter, čímž vytvoříte zaplníte zbývající prostor na disku. Po dokončení těchto kroků by mělo stisknutí p zobrazit tabulku oddílu, která bude vypadat podobně jako takto:
Command (m for help):
p
Disk /dev/sda: 30.0 GB, 30005821440 bytes 240 heads, 63 sectors/track, 3876 cylinders Units = cylinders of 15120 * 512 = 7741440 bytes Device Boot Start End Blocks Id System /dev/sda1 1 3 5198+ ef EFI (FAT-12/16/32) /dev/sda2 * 3 14 105808+ 83 Linux /dev/sda3 15 81 506520 82 Linux swap /dev/sda4 82 3876 28690200 83 Linux
Uložení rozložení oddílů
K uložení rozdělení oddílů disků a ukončení programu fdisk stiskněte w.
Command (m for help):
w
Po té, co jsme vytvořili oddíly, je čas umístit na ně systém souborů.
Partitioning the disk with MBR for BIOS / legacy boot
The following table provides a recommended partition layout for a trivial MBR DOS / legacy BIOS boot installation. Additional partitions can be added according to personal preference or system design goals.
Device path (sysfs) | Mount point | File system | DPS UUID (PARTUUID) | Description |
---|---|---|---|---|
/dev/sda1 | /boot | xfs | N/A | MBR DOS / legacy BIOS boot partition details. |
/dev/sda2 | N/A. Swap is not mounted to the filesystem like a device file. | swap | 0657fd6d-a4ab-43c4-84e5-0933c84b4f4f | Swap partition details. |
/dev/sda3 | / | xfs | 4f68bce3-e8cd-4db1-96e7-fbcaf984b709 | Root partition details. |
Change the partition layout according to personal preference.
Viewing the current partition layout
Fire up fdisk against the disk (in our example, we use /dev/sda):
root #
fdisk /dev/sda
Use the p key to display the disk's current partition configuration:
Command (m for help):
p
Disk /dev/sda: 28.89 GiB, 31001149440 bytes, 60549120 sectors Disk model: DataTraveler 2.0 Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: gpt Disk identifier: 21AAD8CF-DB67-0F43-9374-416C7A4E31EA Device Start End Sectors Size Type /dev/sda1 2048 526335 524288 1G EFI System /dev/sda2 526336 2623487 2097152 1G Linux swap /dev/sda3 2623488 19400703 16777216 8G Linux filesystem /dev/sda4 19400704 60549086 41148383 19.6G Linux filesystem
This particular disk was until now configured to house two Linux filesystems (each with a corresponding partition listed as "Linux") as well as a swap partition (listed as "Linux swap"), using a GPT table.
Creating a new disklabel / removing all partitions
Type o to create a new MBR disklabel (here also named DOS disklabel) on the disk; this will remove all existing partitions.
Command (m for help):
o
Created a new DOS disklabel with disk identifier 0xe04e67c4. The device contains 'gpt' signature and it will be removed by a write command. See fdisk(8) man page and --wipe option for more details.
For an existing DOS disklabel (see the output of p above), alternatively consider removing the existing partitions one by one from the disk. Type d to delete a partition. For instance, to delete an existing /dev/sda1:
Command (m for help):
d
Partition number (1-4): 1
The partition has now been scheduled for deletion. It will no longer show up when printing the list of partitions (p, but it will not be erased until the changes have been saved. This allows users to abort the operation if a mistake was made - in that case, type q immediately and hit Enter and the partition will not be deleted.
Repeatedly type p to print out a partition listing and then type d and the number of the partition to delete it. Eventually, the partition table will be empty:
Command (m for help):
p
Disk /dev/sda: 28.89 GiB, 31001149440 bytes, 60549120 sectors Disk model: DataTraveler 2.0 Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0xe04e67c4
Now we're ready to create the partitions.
Creating the boot partition
First, create a small partition which will be mounted as /boot. Type n to create a new partition, followed by p for a primary partition and 1 to select the first primary partition. When prompted for the first sector, make sure it starts from 2048 (which may be needed for the boot loader) and hit Enter. When prompted for the last sector, type +1G to create a partition 1 GB in size:
Command (m for help):
n
Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): p Partition number (1-4, default 1): 1 First sector (2048-60549119, default 2048): Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-60549119, default 60549119): +1G Created a new partition 1 of type 'Linux' and of size 1 GiB.
Creating the swap partition
Next, to create the swap partition, type n to create a new partition, then p, then type 2 to create the second primary partition, /dev/sda2. When prompted for the first sector, hit Enter. When prompted for the last sector, type +4G (or any other size needed for the swap space) to create a partition 4GB in size.
Command (m for help):
n
Partition type p primary (1 primary, 0 extended, 3 free) e extended (container for logical partitions) Select (default p): p Partition number (2-4, default 2): 2 First sector (526336-60549119, default 526336): Last sector, +/-sectors or +/-size{K,M,G,T,P} (526336-60549119, default 60549119): +4G Created a new partition 2 of type 'Linux' and of size 4 GiB.
After all this is done, type t to set the partition type, 2 to select the partition just created and then type in 82 to set the partition type to "Linux Swap".
Command (m for help):
t
Partition number (1,2, default 2): 2 Hex code (type L to list all codes): 82 </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Changed type of partition 'Linux' to 'Linux swap / Solaris'.
Creating the root partition
Finally, to create the root partition, type n to create a new partition. Then type p and 3 to create the third primary partition, /dev/sda3. When prompted for the first sector, hit Enter. When prompted for the last sector, hit Enter to create a partition that takes up the rest of the remaining space on the disk. After completing these steps, typing p should display a partition table that looks similar to this:
Command (m for help):
p
Disk /dev/sda: 28.89 GiB, 31001149440 bytes, 60549120 sectors Disk model: DataTraveler 2.0 Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0xe04e67c4 Device Boot Start End Sectors Size Id Type /dev/sda1 2048 526335 524288 1G 83 Linux /dev/sda2 526336 8914943 8388608 4G 82 Linux swap / Solaris /dev/sda3 8914944 60549119 51634176 24.6G 83 Linux
Saving the partition layout
To save the partition layout and exit fdisk, type w.
Command (m for help):
w
Now it is time to put filesystems on the partitions.
Vytvoření systému souborů
If using an SSD or NVMe drive, please check if it needs a firmware upgrade. Some Intel SSDs in particular (600p and 6000p) require a firmware upgrade for critical bug fixes avoid data corruption induced by XFS I/O usage patterns (though not through any fault of the filesystem). smartctl can help check the model and firmware version.
Úvod
Po vytvoření oddílů na disku je načase vytvořit na nich systém souborů. V následující sekci si popíšeme různé systémy souborů, které Linux podporuje. Čtenáři, kteří už vědí, jaký systém souborů použít, mohou pokračovat na aplikaci systému souborů na diskový oddíl. Ostatní by si měli přečíst, jaké systémy souborů jsou pro ně k dispozici.
Systémy souborů
Linux podporuje tucty souborových systémů, ačkoli většinu z nich je radno používat pro specifické účely. Pouze některé souborové systémy mohou být považovány na amd64 architečktuře za stabilní. Radíme proto přečist si informace o systémech souborů a stavu jejich podpory před tím, než zvolíte některý experimentálnější z nich pro důležitý diskový oddíl.
- btrfs
- Systém souborů příští generace, který poskytuje mnoho pokročilých funkcí jako je tvorba snapshotů, samooprava prostřednictvím kontrolních součtů, transparentní komprese, pododdíly a integrovaný RAID. U verzí jádra nižších než je 5.4.y nelze garantovat bezpečné používání btrf v produkčních systémech, protože opravy závažných chyb jsou přítomné v novějších vydáních větví jádra LTS. Chyby systému souborů jsou na starších větvích jáder časté, přičemž jakákoli verze starší než je 4.4.y je obvzláště nebezpečná a náchylná k chybám. Pravěpodobnost chyb je vyšší na starších jádrech (než 5.4.y), když je zapnutá komprese. RAID 5/6 a skupiny kvót nejsou bezpečné v žádné verzi btrfs. Dále je třeba uvést, že btrfs může nečekaně selhávat při operacích souborového systému s chybou ENOSPC, ačkoli df hlásí volný prostor, v důsledku vnitřní fragmentace (volné místo rezervované pro DATA + SYSTEM kusy, ale potřebné pro METADATA kusy). Navíc, jediný 4K odkaz na 128M extent uvnitř btrfs může znamenat, že je tu volné místo, které však není k dispozici pro alokaci. To může také způsobit, že btrfs vrátí chybu ENOSPC, ačkoli df oznamuje volné místo. Instalace balíčku sys-fs/btrfsmaintenance a nastavení opakoveného spouštění skriptů může napomoci snížit výskyt problémů s ENOSPC rebalancováním btrfs, ale zcela to riziku výskytu ENOSPC nezabrání, i když je na disku volné místo. Některé činnosti nevyvolají ENOSPC nikdy, zatímco jiné ano. Pokud je riziko chyby ENOSPC v produkci neakceptovatelné, měli byste použít něco jiného. Pokud použijte btrfs, určitě se vyhněte konfiguracím, o nichž je známo, že působí problémy. S výjimkou ENOSPC jsou informace o těchto problémech btrfs v posledních nejnovějších k dispozi na wiki stránce statusu btrfs.
- ext2
- Toto je vyzkoušený a opravdový linuxový systém souborů, který ovšem nemá žurnál metadat, což znamená, že běžná kontrola systému souborů během startu může být značně časově náročná. V současnosti je na výběr celá řada systémů souborů nové generace, jejichž konzistence může být zkontrolována rychle a proto jsou obecně upřednostňovány oproti svým bezžurnálovým protějšků. Žurnálovací systémy souborů předchází dlouhým prodlevám při bootování systému, když je systém souborů v nekonzistentním stavu.
- ext3
- Žurnálem vybavená verze systému souborů ext2, která poskytuje žurnálování metadat pro rychlou obnovu s přídavkem dalších vylepšených módů žurnálu jako je full data nebo ordered data žurnálování. Používá HTree index, který umožňuje vysoký výkon téměř ve všech situacích. ve zlratce je ext3 velmi dobrý a spolehlivý systém souborů.
- ext4
- Ext4 byl od počátku oddělen z ext3 a přináší nové funkce, vylepšení výkonu a odstraňuje velikostní limity s menšími změna ve formátu dat na disku. Může pokrýt svazky až do velikosti 1 EB s maximální velikostí jednoho souboru 16TB. Na rozdíl od klasické alokace bloků pomocí bitmap z ext2/3, ext4 používá extenty, což vylepšuje výkon při práci s velkými soubory a snižuje fragmentaci. Ext4 přináší také sofistikovanější algoritmy pro alokaci bloků (zpožděná alokace a vícebloková alokace) poskytující ovladači systému souborů více cest k optimalizaci uložení dat na disku. Ext4 je doporučeným všestranným systémem souborů na všech platformách.
- f2fs
- Flash-Friendly File System byl původně vytořen společností Samsung k použití v pamětech NAND flash. Ke 2. čtvrtletí roku 2016 je stále považován za nezralý, ale jedná se o dobrou volbu při instalaci Gentoo na microSD karty, USB disky a další úložná zařízení založená na technologii flash.
- JFS
- Vysoce výkonný žurnálovací systém souborů společnosti IBM. JFS je lehký, rychlý a spolehlivý systém souborů založený na B+tree, s dobrým výkonem v různých podmínkách.
- ReiserFS
- B+tree žurnálovací systém souborů, který má dobrý celkový výkon, zejména při práci s mnoha malými soubory, za cenu více spotřebovaných cyklů CPU. ReiserFS verze 3 je součástí hlavní větve Linuxového jádra, ale jeho použití pči instalaci Gentoo se nedporučuje. Existují také novější verze souborového systému ReiserFS, ale ty vyžadují využití patchů hlavní větve jádra.
- XFS
- Systém souborů s žurnálováním metadat, který robustní sadou vlastností a je optimalizován ke škálování. XFS je náchylnější k různým problémům s hardwarem, ale je postupně doplňován o novější funkce.
- VFAT
- Systém souborů známý také jako FAT32 je Linuxem podporován, avšak neobsahuje podporu pro standardní UNIXové nastavení práv. Nejvíce je používán z důvodů interoperability s ostatními operečními systémy (především Microsoft Windows nebo Apple OSX), ale je nepostradatelný také pro firmware systémového zavaděče (jako je UEFI).
- NTFS
- Systém souborů "New Technology" je hlavním systémem souborů Microsoft Windows od Windows NT 3.1. Podobně jako výše uvedený vfat neukládá nastavení UNIXových práv nebo rozšířené atributy nezbytné pro řádné fungování BSD nebo Linuxu, protože by neměl být používán jako kořenový systém souborů. Měl by být použit pouze pro interoperabilitu se systémy Microsoft Windows (povšimněte si zvýraznění slova pouze).
More extensive information on filesystems can be found in the community maintained Filesystem article.
Aplikace systému souborů na diskový oddíl
Please make sure to emerge the relevant package for the chosen filesystem later on in the handbook, before rebooting at the end of the install process.
Systém souborů vytvoříme pomocí uživatelských utilit, které jsou k dispozici pro každý z možných systémů souborů. Klikněte na název systému souborů v níže uvedené tabulce pro doplňující informace o každém z nich.
Systém souborů | Příkaz k vytvoření | Na minimálním CD? | Balíček |
---|---|---|---|
btrfs | mkfs.btrfs | Ano | sys-fs/btrfs-progs |
ext2 | mkfs.ext2 | Ano | sys-fs/e2fsprogs |
ext3 | mkfs.ext3 | Ano | sys-fs/e2fsprogs |
ext4 | mkfs.ext4 | Ano | sys-fs/e2fsprogs |
f2fs | mkfs.f2fs | Ano | sys-fs/f2fs-tools |
jfs | mkfs.jfs | Ano | sys-fs/jfsutils |
reiserfs | mkfs.reiserfs | Ano | sys-fs/reiserfsprogs |
xfs | mkfs.xfs | Ano | sys-fs/xfsprogs |
vfat | mkfs.vfat | Ano | sys-fs/dosfstools |
NTFS | mkfs.ntfs | Ano | sys-fs/ntfs3g |
Máme-li například zaváděcí oddíl (/dev/sda1) s ext2 a kořenový oddíl (/dev/sda3) s ext4 jak je uvedeno v příkladu strukutury oddílů, použijeme následující příkazy:
root #
mkfs.ext2 /dev/sda1
root #
mkfs.ext4 /dev/sda3
Pokud používáte ext2, ext3 nebo ext4 na malých oddílech (méně než 8 GiB), pak jej musíte vytvořit s pomocí správných voleb, aby byl rezervován dostatek uzlů. Aplikace mke2fs (mkfs.ext2) používá nastavení "bytes-per-inode" k výpočtu množství uzlů souborového systému. U menších oddílů je radno toto číslo zvýšit.
root #
mkfs.ext2 -T small /dev/<device>
root #
mkfs.ext3 -T small /dev/<device>
root #
mkfs.ext4 -T small /dev/<device>
To obvykle zečtyřnásobí množství uzlů daného systému souborů, jelikož hodnota "bytes-per-inode" se zmenší z každých 16kB na každé 4kB. Dále lze tuto hodnotu nastavovat poskytnutím poměru:
Nyní vytvořte systém souborů na nově vytvořených oddílech (nebo logických svazcích).
Aktivace swap oddílu
mkswap je příkaz použitý k inicializaci swap oddílů:
root #
mkswap /dev/sda2
K aktivaci oddílu swap použijte příkaz swapon:
root #
swapon /dev/sda2
Vytvořte a aktivujte swap s příkazy uvedenými shora.
Připojení kořenového oddílu
Users of non-Gentoo installation media will need to create the mount point by running:
root #
mkdir --parents /mnt/gentoo
Teď, když jsou oddíly inicializovány a obsahují systém souborů je načase je připojit. Použijte příkaz mount, ale nezapomeňte vytvořit potřebné adresáře pro každý vytvořený oddíl. Jako příklad připojíme oddíl root:
root #
mount /dev/sda3 /mnt/gentoo
Pokud je nutné, aby adresář /tmp/ byl na vlastním oddíle, ujistěte se, že oprávnění budou po připojení změněna:
root #
chmod 1777 /mnt/gentoo/tmp
Později dojde k připojení systému souborů proc (virtuální rozhraní jádra) stejně jako dalších pseudo systémů souborů. Nejprve však nainstalujeme instalační soubory Gentoo.
Instalace stage balíku
Nastavení data a času
Před nainstalováním Gentoo je dobré zabezpečit správné nastavení datumu a času. Špatně nastavené hodiny mohou vést ke zvláštním výsledkům: základní soubory systému by měly být rozbaleny se správnými časovými značkami. Dokonce je možné, že v důsledku použití šifrované komunikace (SSL/TLS) u mnoha webových stránek a služeb, nemusí jít vůbec stáhnout instalační soubory, pokud budou hodiny příliš posunuté!
Ověřte aktuální datum a čas spuštěním příkazu date:
root #
date
Po Říj 3 13:16:22 PDT 2016
Pokud je zobrazené datum/čas chybné, aktualizujte ho jedním z následujících způsobů.
Automaticky
Most readers will desire to have their system update the time automatically using a time server.
Máte-li základní desku bez hodin reálného času (RTC), měly byste nastavit automatickou synchronizaci systémového času s časovým serverem. To se týká i systémů, které mají RTC, ale nefunguje jim baterie.
Oficiální instalační média Gentoo obsahují příkaz ntpd (dostupný v balíčku net-misc/ntp). Oficiální média obsahují konfigurační soubor směřující na časové servery ntp.org. Ty mohou být použity k automatické synchronizaci systémových hodin k času UTC prostřednictvím časového serveru. Použití této metody vyžaduje funkční připojení k síti a nemusí být k dispozici na všech architekturách.
Automatická synchronizace času má svoji cenu. Odhalí časovému serveru (v příkladu níže ntp.org) IP adresu systému a související síťové informace. Uživatelé dbající o své soukromí by si toho měli být vědomi před tím, než se se pustí do nastavení času tímto způsobem.
root #
ntpd -q -g
Ručně
Příkaz date může být použit také k ručnímu nastavení času systémových hodin. Použijte syntaxi MMDDhhmmYYYY
(měsíc, den, hodina, minuta a rok).
Na všech Linuxových systémech se doporučuje používat čas UTC. Později během instalace určíme časovou zónu. Tím změníme zobrazení hodin na místní čas.
Příklad nastavení datumu na 3. října, 13.16 v roce 2016:
root #
date 100313162016
Výběr balíku stage
Not every architecture has a multilib option. Many only run with native code. Multilib is most commonly applied to amd64.
Multilib (32 and 64bitový)
Výběr základního stage balíku může později ušetřit spoustu čas během procesu instalace, zvláště ve chvíli, kdy budete vybírat profil systému. Vyběr stage balíku má přímý dopad na budoucí konfiguraci systému a může vám později ušetřit muka. Balík multilib obsahuje, je-li to možné, 64bitové knihovny a jako zálohu volí 32bitové verze pouze tehdy, je-li to potřeba z pohledu kompatibility. Jde o vynikající volbu pro většinu instalací, jelikož poskytuje vysokou míru flexibility a přizpůsobení v budoucnosti. Ti, kteří touží po tom, aby byl jejich systém schopen snadno měnit profily, by měli stáhnout balík multilib pro svoji procesorovou architekturu.
Většina uživatelů nemusí používat nabízené "pokročilé" balíky; jsou určeny pro specifické konfigurace softwaru a hardwaru.
Ne-multilib (čistě 64bitový)
Vyberete-li non-multilib balík jako základ pro systém poskytne výhradně 64bitové prostředí operačního systému. Tím se stává možnost přejít na multilib profil nepravděpodobné, i když stále možné. Ti, kteří s Gentoo teprve začínají by neměli volit non-multilib balík pokud to není absolutně nezbytné.
Vemte na vědomí, že přechod z ne-multilib na multilib systém vyžaduje extrémní znalosti fungování Gentoo a nízkoúrovňových nástrojů (dokonce i našim vyvojářům základních nástrojů by proběhl mráz po zádech). Není to nic pro slabé povahy a jedná se o záležitost, která je mimo záběr tohoto průvodce.
OpenRC
OpenRC is a dependency-based init system (responsible for starting up system services once the kernel has booted) that maintains compatibility with the system provided init program, normally located in /sbin/init. It is Gentoo's native and original init system, but is also deployed by a few other Linux distributions and BSD systems.
OpenRC does not function as a replacement for the /sbin/init file by default and is 100% compatible with Gentoo init scripts. This means a solution can be found to run the dozens of daemons in the Gentoo ebuild repository.
systemd
systemd is a modern SysV-style init and rc replacement for Linux systems. It is used as the primary init system by a majority of Linux distributions. systemd is fully supported in Gentoo and works for its intended purpose. If something seems lacking in the Handbook for a systemd install path, review the systemd article before asking for support.
It is technically possible to switch a running Gentoo installation from OpenRC to systemd and back. However, switching requires some effort and is outside the scope of this installation manual. Before downloading a stage tarball, decide whether OpenRC or systemd will be used as the target init system and download the relevant stage tarball.
Stažení archivu stage
Přejděte do přípojného bodu, kam jste připojili kořenový systém souborů (nejspíše /mnt/gentoo):
root #
cd /mnt/gentoo
Grafické prohlížeče
Ti, kteří používají prostředí s plně grafickými prohlížeči nebudou mít problém zkopírovat URL ze sekce download hlavní webové stránky. Jednoduše zvolte odpovídající tab, klikněte pravým tlačítkem na odkaz stage souboru, potom na Zkopírovat adresu odkazu (Firefox) nebo Zkopírovat umístění odkazu (Chromium), abyste zkopírovali odkaz do schránky, následně předejte odkaz nástroji wget na příkazovém řádku, abyste archiv stáhli:
root #
wget <VLOŽENÁ_URL_STAGE>
Prohlížeče příkazového řádku
Tradicionalisté nebo "staří" uživatelé Gentoo pracující výhradně v příkazovém řádku mohou upřednostňovat použití programu links, negrafického prohlížeče ovládaného pomocí menu. Ke stažení stage surfujte na seznam zrcadel Gentoo tímto způsobem:
root #
links https://www.gentoo.org/downloads/mirrors/
HTTP proxy s prohlížečem links použijete tak, že mu předáte volbu -http-proxy
:
root #
links -http-proxy proxy.server.com:8080 https://www.gentoo.org/downloads/mirrors/
Vedle links můžete použít také prohlížeč lynx. Stejně jako links se jedná o negrafický prohlížeč, který však nemá menu.
root #
lynx https://www.gentoo.org/downloads/mirrors/
Pokud potřebujete definovat proxy, exportujte proměnné http_proxy a/nebo ftp_proxy.
root #
export http_proxy="http://proxy.server.com:port"
root #
export ftp_proxy="http://proxy.server.com:port"
V seznamu zvolte zrcadlo umístěné někde oblíž. Obvykle postačí HTTP zrcadla, ale ostatní protokoly jsou v nabídce také. Přesuňte se do adresáře releases/amd64/autobuilds/. Zobrazí se vám veškeré nabízené soubory stage (mohou být uloženy v podadresářích pojmenovaných podle jednotlivých subarchitekturách). Jeden z nich vyberte a stiskněte d, čímž dojde ke stažení.
Jakmile je soubor stage stažen, je možné ověřit integritu a potvrdit obsah stage archivu. Ti, které to zajímá, nechť přejdou do další sekce.
Ti, kteří nemají zájem ověřovat a potvrzovat soubor stage mohou zavřít prohlížeč v příkazovém řádku stisknutím q a přesunout se přímo do sekce rozbalení stage archivu.
Ověření a potvrzení
Most stages are now explicitly suffixed with the init system type (openrc or systemd), although some architectures may still be missing these for now.
Stejně jako u minimálních instalačních CD jsou k dispozici i doplňkové soubory k ověření a kontrole souboru stage. I když mohou být tyto kroky přeskořeny, jsou tyto soubory poskytovány uživatelům, kteří dbají na legitimitu souboru(ů), které stáhli.
root #
wget https://distfiles.gentoo.org/releases/
- Soubor .CONTENTS obsahuje seznam všech souborů v balíku.
- Soubor .DIGESTS obsahuje kontrolní součty souboru stage dle různých algoritmů.
- Soubor .DIGESTS.asc obsahuje stejně jako soubor .DIGESTS kontrolní součty souboru stage dle různých algoritmů a navíc je zároveň kryptograficky podepsán pro ověření toho, že pochází z projektu Gentoo.
Použijte příkaz openssl a porovnejte výstup s kontrolními součty obsaženými v souborech .DIGESTS nebo .DIGESTS.asc.
Například ověření kontrolního součtu SHA512 provedete takto:
root #
openssl dgst -r -sha512 stage3-amd64-<release>.tar.?(bz2|xz)
dgst
instructs the openssl command to use the Message Digest sub-command, -r
prints the digest output in coreutils format, and -sha512
selects the SHA512 digest.
Ověření kontrolního součtu Whirpool:
root #
openssl dgst -r -whirlpool stage3-amd64-<release>.tar.?(bz2|xz)
Porovnejte výstupy těchto příkazů s hodnotami zapsanými v souborech .DIGESTS(.asc). Hodnoty se musí shodovat, v opačném případě mohlo dojít k porušení staženého souboru (nebo souboru se součty).
Jiným cestou je použití příkazu sha512sum:
root #
sha512sum stage3-amd64-<release>.tar.?(bz2|xz)
The --check
option instructs sha256sum to read a list of expected files and associated hashes, and then print an associated "OK" for each file that calculates correctly or a "FAILED" for files that do not.
Stejně jako u souboru ISO je možné ověřit kryptografický podpis souboru .DIGESTS.asc pomocí příkazu gpg a ověřit tak, že kontrolní součty nebyly měněny:
For official Gentoo live images, the sec-keys/openpgp-keys-gentoo-release package provides PGP signing keys for automated releases. The keys must first be imported into the user's session in order to be used for verification:
root #
gpg --import /usr/share/openpgp-keys/gentoo-release.asc
For all non-official live images which offer gpg and wget in the live environment, a bundle containing Gentoo keys can be fetched and imported:
root #
wget -O - https://qa-reports.gentoo.org/output/service-keys.gpg | gpg --import
Verify the signature of the tarball and, optionally, associated checksum files:
root #
gpg --verify stage3-amd64-<release>.tar.?(bz2|xz){.DIGESTS.asc,}
If verification succeeds, "Good signature from" will be in the output of the previous command(s).
The fingerprints of the OpenPGP keys used for signing release media can be found on the release media signatures page.
Rozbalení souboru stage
Nyní stažený stage soubor rozbalte do systému. K tomu použijeme příkaz tar:
root #
tar xpvf stage3-*.tar.bz2 --xattrs-include='*.*' --numeric-owner
Přesvědčte se, že jste použili stejné volby (xpf
a --xattrs-include='*.*'
). Volba x
znamená extrahovat, p
zachovat (angl. preserve) oprávnění a f
značí, že chceme rozbalit soubor (ang. file), nikoli standardní vstup. Volba --xattrs-include='*.*'
zajistí zahrnutí rozšířených atributů, které jsou v archivu také uloženy. Konečně volba --numeric-owner
se použije k zajištění, že uživatelská a skupinová ID souborů rozbalených z archivu zůstanou stejná, dle záměrů týmu Gentoo spravujícího vydání distribuce (i když dobrodružní uživatelé nepoužijí oficiální instalační média Gentoo).
The options starting with the double dash (--
) do not have a short parameters. --xattrs-include='*.*'
is to include preservation of the the extended attributes in all namespaces stored in the archive. Finally, --numeric-owner
is used to ensure that the user and group IDs of the files being extracted from the tarball will remain the same as Gentoo's release engineering team intended (even if adventurous users are not using official Gentoo live environments for the installation process).
Nyní, když je stage soubor rozbalený, pokračujte ke konfiguraci kompilačních voleb.
Konfigurace kompilačních voleb
Úvod
Gentoo je možné vyladit nastavením několika proměnných, které mají dopad na chování Portage, oficiálního správce balíčků Gentoo. Všechny proměnné mohou být nastaveny jako proměnné prostředí (pomocí příkazu export), nicméně to není trvalé řešení. Nastavení se uchovává v konfiguračním souboru /etc/portage/make.conf, odkud je Portage načítá.
Technically variables can be exported via the shell's profile or rc files, however that is not best practice for basic system administration.
Portage reads in the make.conf file when it runs, which will change runtime behavior depending on the values saved in the file. make.conf can be considered the primary configuration file for Portage, so treat its content carefully.
Komentovaný výpis všech možných proměnných lze najít v souboru /mnt/gentoo/usr/share/portage/make.conf.example. K úspěšnému nainstalování Gentoo je třeba nastavit pouze proměnné uvedené níže.
For a successful Gentoo installation only the variables that are mentioned below need to be set.}}
Spusťte editor (v tomto průvodci používáme nano) a upravte optimalizační proměnné, které nyní probereme.
root #
nano -w /mnt/gentoo/etc/portage/make.conf
Ze souboru make.conf.example je zjevné, jak má být uspořádán: komentované řádky začínají "#", ostatní řádky definují proměnné prostřednictvím syntaxe PROMENNA="obsah". Nyní se podíváme na několik z těchto proměnných.
CFLAGS a CXXFLAGS
Proměnné CFLAGS a CXXFLAGS definují optimalizační parametry C potažmo C++ kompilátorů GCC. Na tomto místě se definují všeobecně, pro dosažení maximálního výkonu by musely být nastaveny pro každý program zvlášť. Důvodem je, že každý program je různý. Nicméně to není únosné, proto se tyto volby nastavují v souboru make.conf.
V souboru make.conf by měly být obecně nastaveny takové optimalizační přepínače, jejichž použití povede k co nejlepší odezvě systému. Do této proměnné neumisťujte experimentální nastavení; příliš mnoho optimalizací může způsobit špatné chování programů (pády nebo hůře, závadné chování).
Nebudeme zde popisovat všechny možnosti vyladění. Nastudovat si je můžete v GNU online manuálu nebo info stránce gcc (info gcc - lze spustit jen ve fungujícím systému Linux). Také samotný soubor make.conf.example obsahuje mnoho příkladů a informací, nezapomeňte si jej také přečíst.
Prvním nastavením je hodnota parametru -march=
nebo -mtune=
, který stanoví jméno cílové architektury. Možné volby jsou popsány v souborumake.conf.example (jako komentáře). Běžně používanou hodnotou je "native", která kompiléru říká, aby používal cílovou architekturu daného systému (toho, na nějž uživatel instaluje Gentoo).
Druhým je parametr -O
(jedná se o velké O, nikoli o nulu), který určuje třídu optimalizací gcc. Možné třídy jsou s (pro optimalizaci velikosti), 0 (nula - žádné optimalizace), 1, 2 nebo dokonce 3 pro více urychlujících optimalizací (každá třída obsahuje stejné parametry, jako ta přechozí a k tomu nějaké další). -O2
je doporučenou výchozí hodnotou. O -O3
je známo, že při plošném použití v celém systému způsobuje problémy, tudíž doporučujeme držet se -O2
.
Dalším oblíbeným optimalizačním parametrem je -pipe
(použije roury namísto dočasných souborů ke komunikaci mezi různými fázemi kompilace). Ten nemá dopad na generovaný kód, ale používá více paměti. V systémech s nízkým množstvím paměti může kvůli tomu dojít k zabití gcc. V takovém případě tento parametr nepoužívejte.
Použití -fomit-frame-pointer
(který nezachová frame pointer v registru pro funkce, které jej nepotřebují) může mít závažné dopady na debugging aplikací.
Jakmile jsou proměnné CFLAGS a CXXFLAGS definovány, složte optimalizační přepínače do jednoho řetězce. Výchozí hodnoty obsažené ve stage3 archivu by měly být dostatečné. Následující zápis je pouze příkladem:
# Přepínače kompilátoru používané pro všechny jazyky
COMMON_FLAGS="-march=native -O2 -pipe"
# Použij stejnou hodnotu pro obě proměnné
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"
Ačkoli článek o optimalizaci GCC obsahuje více informací o tom, jak mohou různé volby kompilace ovlivnit systém, může být pro začátečníka praktičtější začít s optimalizací systému článkem o bezpečném nastavení CFLAG.
MAKEOPTS
Proměnná MAKEOPTS určuje, kolik paralelních kompilací může být prováděno při instalaci balíku. Dobrou volbou je počet CPU (nebo jader CPU) v systému plus jedna, ale toto vodítko není vždy dokonalé.
A good choice is the smaller of: the number of threads the CPU has, or the total amount of system RAM divided by 2 GiB.
Using a large number of jobs can significantly impact memory consumption. A good recommendation is to have at least 2 GiB of RAM for every job specified (so, e.g.
-j6
requires at least 12 GiB). To avoid running out of memory, lower the number of jobs to fit the available memory.When using parallel emerges (
--jobs
), the effective number of jobs run can grow exponentially (up to make jobs multiplied by emerge jobs). This can be worked around by running a localhost-only distcc configuration that will limit the number of compiler instances per host.MAKEOPTS="-j2"
Search for MAKEOPTS in man 5 make.conf for more details.
Připravit, pozor, teď!
Upravte soubor /mnt/gentoo/etc/portage/make.conf tak, aby odpovídal vašim osobním preferencím a uložte jej (uživatelé nano stisknou Ctrl+X).
Pak pokračujte na Instalace základu systému Gentoo.
References
Chrooting
Volitelné: volba zrcadel
Distribuční soubory
It is safe to skip this step when using non-Gentoo installation media. The app-portage/mirrorselect package can be emerged later within the stage3 (after Entering the new environment) and the actions defined in this section can be performed at that point.
Pro rychlejší stahování zdrojových kódů se doporučuje zvolit rychlé zrcadlo. Portage hledá v souboru make.conf proměnnou GENTOO_MIRRORS a používá zrcadla v ní obsažená. Můžete si projít seznam zrcadel Gentoo a vyhledat zcradlo (nebo zrcadla), která jsou blízko vašeho fyzického umístění (jelikož ta jsou nejčastěji nejrychlejší). Nicméně poskytujeme šikovný nástroj zvaný mirrorselect, který poskytuje uživatelům hezké rozhraní pro výběr potřebných zrcadel. Jednoduše se přesuňte na zrcadla dle své volby a vyberte jedno nebo více zrcadel stisknutím Spacebar.
root #
mirrorselect -i -o >> /mnt/gentoo/etc/portage/make.conf
Repozitář ebuildů Gentoo
Dalším důležitým krokem je nastavení repozitáře ebuildů Gentoo v souboru /etc/portage/repos.conf/gentoo.conf. Tento soubor obsahuje synchronizační informace pro aktualizaci repozitáře balíčků (sbírky ebuildů a souvisejících souborů obsahujících všechny informace, které Portage potřebuje ke stažení a instalaci softwarových balíčků).
Nastavení repozitáře lze provést v několika jednoduchých krocích. Pokud neexistuje, tak nejprve vytvořte adresář repos.conf:
root #
mkdir --parents /mnt/gentoo/etc/portage/repos.conf
Potom zkopírujte nastavení repozitáře, které poskytuje Portage (nově vytvořeného) adresáře repos.conf:
root #
cp /mnt/gentoo/usr/share/portage/config/repos.conf /mnt/gentoo/etc/portage/repos.conf/gentoo.conf
Nahlédněte do něj pomocí textového editoru nebo za použití příkazu cat. Uvnitř by měl mít soubor formát .ini a vypadat takto:
/mnt/gentoo/etc/portage/repos.conf/gentoo.conf
[DEFAULT]
main-repo = gentoo
[gentoo]
location = /var/db/repos/gentoo
sync-type = rsync
sync-uri = rsync://rsync.gentoo.org/gentoo-portage
auto-sync = yes
sync-rsync-verify-jobs = 1
sync-rsync-verify-metamanifest = yes
sync-rsync-verify-max-age = 24
sync-openpgp-key-path = /usr/share/openpgp-keys/gentoo-release.asc
sync-openpgp-key-refresh-retry-count = 40
sync-openpgp-key-refresh-retry-overall-timeout = 1200
sync-openpgp-key-refresh-retry-delay-exp-base = 2
sync-openpgp-key-refresh-retry-delay-max = 60
sync-openpgp-key-refresh-retry-delay-mult = 4
Výchozí hodnota proměnné sync-uri</sync> určuje umístění zrcadla podle rotace. To ulehčuje tlak na přenosovou kapacitu infrastruktury Gentoo a poskytuje zálohu pro případ, že je některé ze zrcadel offline. Doporučuje se ponechat URI, pokud nebudete používat lokální soukromé zrcadlo Portage.
Ti, které to zajímá, najdou oficiální specifikaci Portage plug-in sync API v článku Synchronizace.
Zkopírujte info o DNS
Před tím, než vstoupíme do nového prostředí, nám zbývá udělat ještě jedna věc, a tou je zkopírování DNS informace v /etc/resolv.conf. To musíme udělat pro to, abychom měli jistotu, že síť bude po vstupu do nového prostředí fungovat. Soubor /etc/resolv.conf obsahuje jmenné servery sítě.
Při kopírování se doporučuje předat příkazu cp volbu --dereference
. Tím zajistíme, že v případě, že je /etc/resolv.conf symbolickým odkazem, dojde ke zkopírování odkazovaného souboru namísto odkazu samotného. V opačném případě by v novém prostředí odkaz ukazoval na neexistující soubor (jelikož cíl odkazu bude pravděpodobně z nového prostředí nedostupný).
root #
cp --dereference /etc/resolv.conf /mnt/gentoo/etc/
Připojení nezbytných souborových systémů
Za několik okamžiků dojde ke změně kořene na nové umístění. K zajištění toho, aby nové prostředí fungovalo jak má, je nutné zpřístupnit v něm rovněž některé systémy souborů.
Systému souborů, které je nutné mít k dispozici, jsou:
- /proc/ je pseudo systém souborů (vypadá jako běžné soubory, ale ve skutečnosti je generován za běhu) prostřednictvím nějž jádro Linuxu vystavuje informace navenek
- /sys/ je pseudo systém souborů, podobně jako /proc/, který měl původně nahradit a je lépe uspořádaný než /proc/
- /dev/ je normální systém souborů částečně spravovaný Linuxovým správcem zařízení (obvykle udev), který obsahuje všechny soubory zařízení
/proc bude připojen na /mnt/gentoo/proc, zatímco zbývající dvě umístění budou navázána. To znamená, že například /mnt/gentoo/sys bude ve skutečnosti /sys (jedná se pouze o druhé připojení stejného souborového systému) zatímco /mnt/gentoo/proc/ je novým připojením (dalo by se říci instancí) souborového systému.
If using Gentoo's install media, this step can be replaced with simply: arch-chroot /mnt/gentoo.
root #
mount --types proc proc /mnt/gentoo/proc
root #
mount --rbind /sys /mnt/gentoo/sys
root #
mount --make-rslave /mnt/gentoo/sys
root #
mount --rbind /dev /mnt/gentoo/dev
root #
mount --make-rslave /mnt/gentoo/dev
Operace
--make-rslave
jsou potřeba kvůli podpoře systemd v pozdějším průběhu instalace.Při použití instalačních médií nepocházejících od Gentoo uvedené nemusí postačovat. U některých distribucí je /dev/shm symbolickým odkazem na adresář /run/shm, který se stane po chrootu nedostupným. Vše můžete napravit předem vytvořením řádného přípojného bodu za použití tmpfs:
root #
test -L /dev/shm && rm /dev/shm && mkdir /dev/shm
root #
mount --types tmpfs --options nosuid,nodev,noexec shm /dev/shm
A ujistěte se, že je nastaven mód 1777
root #
chmod 1777 /dev/shm
Vstup do nového prostředí
Nyní, když jsou všechny oddíly připojeny a inicializovány a základní prostřední bylo nainstalováno, je čas přejít do nového instalačního prostředí chrootováním. To znamená, že sezení změní (change) svůj kořenový adresář (root, tj. umístění nejvyšší úrovně, k němuž lze přistoupit) z instalačního prostřední (instalačního CD nebo jiného instalačního média) na instalovaný systém (jmenovitě incializované diskové oddíly). Proto pojmenování "change root" nebo "chroot".
Změna kořenového adresáře se děje ve třech krocích:
- Umístění kořenového adresáře se změní z / (instalační médium) na /mnt/gentoo (diskové oddíly) s použitím chroot
- Některá nastavení (ta v /etc/prodile) jsou znovu načtena do paměti s použitím příkazu source
- Hlavní ukazatel je změněn, což nám pomůže zapamatovat si, že sezení je uvnitř prostředí se změněným kořenovým adresářem.
root #
chroot /mnt/gentoo /bin/bash
root #
source /etc/profile
root #
export PS1="(chroot) ${PS1}"
Od tohoto bodu jsou všechny akce prováděny přímo v novém prostředí Gentoo Linuxu. Samozřejmě vše je daleko od dokončení, proto má instalace ještě pár zbývajících sekcí!
Pokud dojde po tomto bodě po přerušení instalace Gentoo, mělo by jít obnovit instalaci od tohoto kroku. Nění třeba znovu rozdělovat disky! Jednoduše připojte kořenový oddíl a proveďte kroky výše od Zkopírujte info o DNS, abyste znovu vstoupili do pracovního prostředí. Tento postup lze použít i pro opravení chyb zavaděče. Více informací lze najít v článku chroot.
Připojení zaváděcího oddílu
Nyní, když jsme vstoupili do nového prostředí, je nezbytné připojit zaváděcí oddíl. To bude důležité až budeme sestavovat jádro a instalovat zavaděč:
root #
mount /dev/sda1 /boot
Konfigurace Portage
Instalace snapshotu repozitáře ebuildů Gentoo z webu
Dalším krokem je instalace snapshotu repozitáře ebuildů Gentoo. Tento snapshot obsahuje sbírku souborů, které informují Portage o tom, jaký software je k dispozici (k instalaci), které profily může administrátor vybírat, zprávy a prvky specifické pro jednotlivé profily apod.
Doporučuje se použí emerge-webrsync pro ty, kteří jsou za restriktivními firewally (používá protokoly HTTP/FTP pro stažení snapshotu) a potřebují nezatěžovat internetovou linku. Uživatelé, kteří nemají žádná omezení sítě nebo rychlosti připojení mohou spokojeně přejít k další sekci níže.
Tímto získáte nejnovější snapshot (který je vydáván denně) z jednoho ze zrcadel Gentoo a nainstaluje ho do systému:
root #
emerge-webrsync
Během této operace si může emerge-webrsync stěžovat na to, že chybí umístění /var/db/repos/gentoo/. jde o předpokládaný problém a nic čeho byste se měli obávat - nástroj umístění vytvoří.
Od tohoto bodu může Portage zmínit doporučení k provedení určitých aktualizací. Důvodem je to, že systémové balíčky instalované skrze stage3 soubor mohou mít k dispozici novější verze; Portage o nich teď ví, protože byl nainstalován nový snapshot repozitáře. Prozatím můžete aktualizace softwaru ignorovat; Aktualizace lze vynechat do dokončení instalace.
Volitelné: Aktualizace repozitáře ebuildů Gentoo
Je také možné aktualizovat repozitář ebuildů Gentoo na nejnovější verzi. Dřívější příkaz emerge-webrsync nainstaloval relativně nedávný snapshot (ne starší než 24 h), tudíž je tento krok opravdu volitelný.
Předpokládejme, že je tu potřeba nainstalovat poslední aktualizaci balíčku (až do 1 h), potom použijte příkaz emerge --sync. Tento příkaz použije k aktualizaci repozitáře ebuildů Gentoo (který byl dříve stažen pomocí emerge-webrsync) na nejnovější stav protokol rsync.
root #
emerge --sync
V případě pomalého terminálu, jako jsou některé framebuffery nebo sériové konzole, se doporučuje použít volbu --quiet
k urychlení procesu:
root #
emerge --sync --quiet
Přečtení novinek
Jakmile je repozitář ebuildů Gentoo synchronizován, může Portage vypsat informativní zprávy podobné těmto:
* IMPORTANT: 2 news items need reading for repository 'gentoo'.
* Use eselect news to read news items.
Novinky byly vytvořeny, aby poskytovaly komunikační médium k šíření zpráv uživatelům prostřednictvím repozitáře ebuildů Gentoo. K jejich správě použijte příkaz eselect news. Aplikace eselect je specifický utilita Gentoo, která poskytuje společné rozhraní pro administraci systému. V tomto případě eselect využívá svůj modul news
.
V modulu news
se nejčastěji používají tři operace:
- S pomocí
list
zobrazíte přehled dostupných novinek - S pomocí
read
si novinky přečtete - S pomocí
purge
můžete novinky po přečtení odstranit a už je znovu nečíst
root #
eselect news list
root #
eselect news read
Více informací o čtečce novinek lze získat v její manuálové stránce:
root #
man news.eselect
Výběr správného profilu
Desktop profiles are not exclusively for desktop environments. They are still suitable for minimal window managers like i3 or sway.
"Profile" je stavební kámen každého systému Gentoo. Nejenže určuje výchozí hodnoty USE, CFLAGS a dalších důležitých proměnných, ale omezuje v systému také rozsah určitých verzí balíčků. Tato nastavení jsou udržována vývojáři Gentoo Portage.
Na to jaký profil právě váš systém používá se můžete podívat pomocí eselect za použití modulu profile
:
root #
eselect profile list
Available profile symlink targets: [1] default/linux/amd64/17.1 * [2] default/linux/amd64/17.1/desktop [3] default/linux/amd64/17.1/desktop/gnome [4] default/linux/amd64/17.1/desktop/kde
Výstup příkazu je pouze příkladný a v průběhu času se mění.
Jak lze vidět, pro některé architektury jsou k dispozici také podprofily desktop.
Aktualizace profilů by neměly být brány na lehkou váhu. Při výběru prvního profilu si ověřte, že vybíráte profil odpovídající stejné verzi jako je ta použitá ve stage (např. 17.1). Nové verze profilů jsou oznamovány prostřednictvím novinek obsahujících instrukce k migraci. Přečtěte si je a postupujte podle nich než přepnete na nový profil.
Po prohlédnutí dostupných profilů architektury amd64 mohou uživatelé vybrat jiný profil pro svůj systém:
root #
eselect profile set 2
Ne-multilib
Pro čistě 64bitového prostřední bez 32bitových aplikací či knihoven, použijte ne-multilib profil:
root #
eselect profile list
Available profile symlink targets: [1] default/linux/amd64/13.0 * [2] default/linux/amd64/13.0/desktop [3] default/linux/amd64/13.0/desktop/gnome [4] default/linux/amd64/13.0/desktop/kde [5] default/linux/amd64/13.0/no-multilib
Nyní zvolte "no-multilib" profil:
root #
eselect profile set 5
root #
eselect profile list
Available profile symlink targets: [1] default/linux/amd64/13.0 [2] default/linux/amd64/13.0/desktop [3] default/linux/amd64/13.0/desktop/gnome [4] default/linux/amd64/13.0/desktop/kde [5] default/linux/amd64/13.0/no-multilib *
Podprofil
developer
je zvláště určený pro vývoj Gentoo Linuxu a není míněn pro použití ze strany běžných uživatelů.Aktualizace setu @world
V této chvíli je na místě aktualizovat systémový set @world, čímž vzniknou základy budoucího systému.
Následující krok je "nezbytný" aby mohl systém aplikovat jakékoli aktualizace a změny přepínačů USE, které se objevily po té, co byla sestavena stage3, nebo po změně profilu:
root #
emerge --ask --verbose --update --deep --newuse @world
Pokud jste zvolili profil desktop v celé jeho šíři, může dojít k velkému prodloužení času potřebnému k provedení instalačního procesu. Pokud jste po časovým tlakem, můžete se řídit následujícím "jednoduchým pravidlem": čím kratší je název profilu, tím méně specifický je set @world; čím méně specifičtější je set @world, tím méně balíčků systém vyžaduje. Jinými slovy:
- Výběr
default/linux/amd64/17.1
vyžaduje aktualizaci velmi malého množství balíčků, zatímco - Výběr
default/linux/amd64/17.1/desktop/gnome/systemd
vyžaduje instalaci mnoha balíčků, jelikož init systém se mění z OpenRC na systemd a budou instalovány frameworky desktopu GNOME.
Konfigurace proměnné USE
USE je jednou z nejmocnějších proměnných poskytovanou uživatelům. Mnoho programů může být kompilováno s anebo bez volitelné podpory pro určité části. Například některé programy mohou být kompilovány s podporou GTK+ nebo s podporou Qt. Jiné mohou být sestaveny s nebo bez podpory SSL. Některé programy mohou být sestaveny s podporou framebufferu (svgalib) namísto podpory X11 (X serveru).
Většina distribucí kompiluje své balíčky s co nejširší možnou podporou, což zvyšuje velikost programů a čas jejich spuštění, nemluvě o ohromném množství závislostí. S Gentoo může uživatel určit možnosti toho, jak má být program sestaven. Zde přichází do hry proměnná USE.
V proměnné USE uživatel definuje zkratky, které jsou mapovány na volby kompilace. Například ssl
sestaví podporu SSL v programech, které ji podporují. -X
odstraní podporu X serveru (všimněte si znaku minus na začátku). gnome gtk -kde -qt4 -qt5
sestaví programy s podporou GNOME (a GTK+) a nikoli s podporou KDE (a Qt), čímž bude systém plně přizpůsoben prostředí GNOME (pokud jej architektura podporuje).
Výchozí nastavení USE je umístěno v souborech make.defaults profilu Gentoo použitého v systému. Gentoo používá (složitý ) systém dědění ve svých profilech, do kterého se v této části nebudeme pouštět. Nejjednodušším způsobem jak zjistit aktivní nastavení proměnné USE je spuštění příkazu emerge --info a výběr řádku, který má na začátku USE:
root #
emerge --info | grep ^USE
USE="X acl alsa amd64 berkdb bindist bzip2 cli cracklib crypt cxx dri ..."
Výše uvedený příklad je zkrácený, ve skutečnosti je seznam hodnot USE o mnoho, mnoho rozsáhlejší.
Úplný popis dostupných USE přepínačů lze najít v systému v souboru /var/db/repos/gentoo/profiles/use.desc.
root #
less /var/db/repos/gentoo/profiles/use.desc
Uvnitř příkazu less jde listovat pomocí kláves ↑ a ↓, ukončit jej lze stisknutím q.
Jako příklad uvádíme nastavení USE pro systém s KDE s podporou DVD, ALSA a vypalování CD:
root #
nano -w /etc/portage/make.conf
/etc/portage/make.conf
Zapnutí USE v systému s KDE/Plasma a s podporou DVD, ALSA a vypalování CDUSE="-gtk -gnome qt4 qt kde dvd alsa cdr"
Jamile je USE definována v /etc/portage/make.conf je "přidán" (nebo "odebrán" pokud přepínač začíná znaménkem -) na výchozí seznam. Uživatelé, kteří chtějí potlačit všechna výchozí nastavení USE a spravovat je zcela samo, nechť vloží na začátek definice USE v make.conf -*
:
/etc/portage/make.conf
Potlačení výchozí přepínačů USEUSE="-* X acl alsa"
Ačkoli je to možné, nastavení
-*
(jak je uvedeno v příkladu shora) se nedoporučuje, protože výchozí nastavení byla pečlivě volena s ohledem na některé balíčky, aby byly vyloučeny konflikty a jiné chyby.CPU_FLAGS_*
Some architectures (including AMD64/X86, ARM, PPC) have a USE_EXPAND variable called CPU_FLAGS_<ARCH>, where <ARCH> is replaced with the relevant system architecture name.
Do not be confused! AMD64 and X86 systems share some common architecture, so the proper variable name for AMD64 systems is CPU_FLAGS_X86.
This is used to configure the build to compile in specific assembly code or other intrinsics, usually hand-written or otherwise extra,
and is not the same as asking the compiler to output optimized code for a certain CPU feature (e.g. -march=
).
Users should set this variable in addition to configuring their COMMON_FLAGS as desired.
A few steps are needed to set this up:
root #
emerge --ask app-portage/cpuid2cpuflags
Inspect the output manually if curious:
root #
cpuid2cpuflags
Then copy the output into package.use:
root #
echo "*/* $(cpuid2cpuflags)" > /etc/portage/package.use/00cpu-flags
VIDEO_CARDS
The VIDEO_CARDS USE_EXPAND variable should be configured appropriately depending on the available GPU(s). The Xorg guide covers how to do this. Setting VIDEO_CARDS is not required for a console only install.
Volitelné: Nastavení proměnné ACCEPT_LICENSE
Všechny balíčky Gentoo jsou označeny licencí, pod kterou balíček spadá. To umožňuje uživatelům vybírat software podle zvolených licencí nebo skupin licencí před nainstalováním.
- System wide in the selected profile.
- System wide in the /etc/portage/make.conf file.
- Per-package in a /etc/portage/package.license file.
- Per-package in a /etc/portage/package.license/ directory of files.
Gentoo přichází s přednastavenými hodnotami v profilech, například:
user $
portageq envvar ACCEPT_LICENSE
@FREE
Můžete si je přizpůsobit na úrovni systému změnou /etc/portage/make.conf. Výchozí hodnota povoluje pouze licence výslovně schválené Free Sowtware Foundantion, Open Source Intiative nebo které splňují definici svobodného software:
/etc/portage/make.conf
Přizpůsobení ACCEPT_LICENSEACCEPT_LICENSE="-* @FREE"
Změna na úrovni balíčků pak může být provedena, pokud jde nezbytná a žádaná, například:
/etc/portage/package.license/kernel
Příklad souhlasu s licencíapp-arch/unrar unRAR
sys-kernel/linux-firmware @BINARY-REDISTRIBUTABLE
sys-firmware/intel-microcode intel-ucode
root #
mkdir /etc/portage/package.license
/etc/portage/package.license/kernel
Example how to accept licenses per-packageapp-arch/unrar unRAR
sys-kernel/linux-firmware @BINARY-REDISTRIBUTABLE
sys-firmware/intel-microcode intel-ucode
Proměnná LICENCE v ebuildu je jen pomůckou pro vývojáře a uživatele Gentoo. Nejedná se o právní stanovisko a není žádná garance, že odpovídá skutečnému stavu. Nespoléhejte tedy na ni a zkontrolujte balíček pořádně sami, včetně všech souborů, které používáte.
Skupiny licencí definované v repozitáři Gentoo, spravované Projektem licencí Gentoo, jsou:
Název skupiny | Popis |
---|---|
@GPL-COMPATIBLE | Licence kompatibilní s GPL schválené Free Software Foundation [a_license 1] |
@FSF-APPROVED | Licence svobodného softwaru schválené FSF (includes @GPL-COMPATIBLE) |
@OSI-APPROVED | Licence schválené Open Source Initiative [a_license 2] |
@MISC-FREE | Různé licence, které jsou pravděpodobně svobodné, tzn. splňující definici svobodného software [a_license 3] ale nejsou schválené FSF nebo OSI. |
@FREE-SOFTWARE | Combines @FSF-APPROVED, @OSI-APPROVED and @MISC-FREE |
@FSF-APPROVED-OTHER | Licence schválené FSF pro "svobodnou dokumentaci" a "díla k určená k použití společně se softwarem a dokumentací" (včetně fontů) |
@MISC-FREE-DOCS | Různé licence pro svobodné dokumenty a další díla (včetně fontů), které splňují definici svobody [a_license 4] ale NEJSOU v seznamu @FSF-APPROVED-OTHER |
@FREE-DOCUMENTS | Kombinuje @FSF-APPROVED-OTHER a @MISC-FREE-DOCS |
@FREE | Metasada všech licencí obsahujících svobodu užívat, sdílet, měnit a sdílet změny. Kombinuje @FREE-SOFTWARE a @FREE-DOCUMENTS |
@BINARY-REDISTRIBUTABLE | Licence, které dovolují alespoň volné šíření software v binární podobě. Zahrnuje @FREE |
@EULA | Licenční ujednání, která se snaží omezit vaše práva. Jsou restriktivnější než "všechna-práva-vyhrazena" nebo vyžadují výslovný souhlas. |
Časová zóna
This step does not apply to users of the musl libc. Users who do not know what that means should perform this step.
Vyberte časovou zónu systému. Podívejte se na nabídku časových zón v /usr/share/zoneinfo/ a pak jednu z nich zapište do souboru /etc/timezone.
root #
ls /usr/share/zoneinfo
Suppose the timezone of choice is Europe/Brussels.
OpenRC
We write the timezone name into the /etc/timezone file.
root #
echo "Europe/Brussels" > /etc/timezone
Vyhýbejte se časovým zónám v /usr/share/zoneinfo/Etc/GMT*, jelikož jejich názvy neodpovídají předpokládaným zónám. Například GMT-8 je ve skutečnosti GMT+8.
Následně přenastavte balíček sys-libs/timezone-data, čímž aktualizujete soubor /etc/localtime v závislosti na záznamu v /etc/timezone. Soubor /etc/localtime je používán systémovou knihovnou C k rozeznání toho, v jaké časové zóně se systém nachází.
root #
emerge --config sys-libs/timezone-data
systemd
A slightly different approach is employed when using systemd. A symbolic link is generated:
root #
ln -sf ../usr/share/zoneinfo/Europe/Brussels /etc/localtime
Later, when systemd is running, the timezone and related settings can be configured with the timedatectl command.
Místní nastavení
This step does not apply to users of the musl libc. Users who do not know what that means should perform this step.
Generování locales
Většina uživatelů bude chtít používat ve svém systému pouze jedno nebo dvoje místní nastavení (locales).
Locales specifikují nejen jazyk, který uživatel používá k interakci se systémem, ale také pravidla pro řazení řetězců, zobrazení datumů, času apod. Locales jsou citlivá na velikost písmen a musí být zapsána přesně tak, jak jsou popsána. Úplný seznam dostupných locales lze najít v souboru /usr/share/i18n/SUPPORTED.
Locales, která má systém podporovat musí být uvedena v souboru /etc/locale.gen.
root #
nano -w /etc/locale.gen
Následující místní nastavení jsou příkladem, jak získat angličtinu (Spojené státy) a němčinu (Německo) s náležitým formátem znaků (třeba UTF-8).
/etc/locale.gen
Zapnutí místního nastavení US a DE s vhodnými formáty znakůen_US ISO-8859-1
en_US.UTF-8 UTF-8
de_DE ISO-8859-1
de_DE.UTF-8 UTF-8
Silně doporučujeme doplnit alespoň jedno UTF-8 locale, jelikož mnoho aplikací jej může vyžadovat, aby mohly být řádně sestaveny.
Dalším krokem je spuštění příkazu locale-gen. Tento příkaz vygeneruje všechna locales specifikovaná v souboru /etc/locale.gen.
root #
locale-gen
K ověření toho, že všechna zvolená místní nastavení jsou k dispozici spusťte locale -a.
On systemd installs, localectl can be used, e.g. localectl set-locale ... or localectl list-locales.
Výběr locale
Jakmile je vše hotovo, je čas zvolit systémové místní nastavení. Opět k tomu použijeme eselect, nyní s modulem locale
.
Pomocí eselect locale list, zobrazíme dostupné volby:
root #
eselect locale list
Dostupné volby proměnné LANG: [1] C [2] POSIX [3] en_US [4] en_US.iso88591 [5] en_US.utf8 [6] de_DE [7] de_DE.iso88591 [8] de_DE.iso885915 [9] de_DE.utf8 [ ] (free form)
Pomocí eselect locale set <číslo> lze nastavit správné locale:
root #
eselect locale set 9
Ručně lze téhož dosáhnout prostřednictvím souboru /etc/env.d/02locale:
/etc/env.d/02locale
Manually Ruční nastavení systémové definice místního nastaveníLANG="de_DE.UTF-8"
LC_COLLATE="C"
Nastavení locale předejde zobrazování varování a chyb v průběhu sestavování jádra a kompilace softwaru v pozdějších fázích instalace.
Nyní znovu načtěte prostředí:
root #
env-update && source /etc/profile && export PS1="(chroot) ${PS1}"
Kompletní průvodce místním nastavením, poskytuje další rady ohledně procesu výběru locale. Dalším článkem hodným pozornosti je průvodce UTF-8 obsahující specifické informace ohledně zapnutí podpory UTF-8 v systému.
Volitelné: Instalace firmwaru
Firmware
Některé ovladače vyžadují pro svoje fungování instalaci doplňkového firmwaru. Často se jedná o síťová rozhraní, zvláště u bezdrátových síťových karet. Také moderní grafické čipy od výrobců jako je AMD, NVidia a Intel vyžadují často externí soubory s firmwarem jsou-li použity open source ovladače. Většina firmwaru je součástí sys-kernel/linux-firmware:
It is recommended to have the sys-kernel/linux-firmware package installed before the initial system reboot in order to have the firmware available in the event that it is necessary:
root #
emerge --ask sys-kernel/linux-firmware
Installing certain firmware packages often requires accepting the associated firmware licenses. If necessary, visit the license handling section of the Handbook for help on accepting licenses.
It is important to note that kernel symbols that are built as modules (M) will load their associated firmware files from the filesystem when they are loaded by the kernel. It is not necessary to include the device's firmware files into the kernel's binary image for symbols loaded as modules.
Microcode
In addition to discrete graphics hardware and network interfaces, CPUs also can require firmware updates. Typically this kind of firmware is referred to as microcode. Newer revisions of microcode are sometimes necessary to patch instability, security concerns, or other miscellaneous bugs in CPU hardware.
Microcode updates for AMD CPUs are distributed within the aforementioned sys-kernel/linux-firmware package. Microcode for Intel CPUs can be found within the sys-firmware/intel-microcode package, which will need to be installed separately. See the Microcode article for more information on how to apply microcode updates.
Kernel configuration and compilation
Nyní je čas nakonfigurovat a sestavit jádro. K tomu lze přistoupit dvěma způsoby:
Ranked from least involved to most involved:
- Jádro se konfiguruje a sestaví ručně.
- K automatickému sestavení a instalaci jádra Linux se použije nástroj zvaný genkernel.
Základ, kolem něhož jsou vybudovány všechny distribuce, je jádro Linux. Je to vrstva mezi uživatelskými programy a systémovým hardwarem. Gentoo nabízí svým uživatelům několik možný zdrojů jádra. Celý seznam s popisem je dostupný na stránce Přehled jader.
Distribution kernels
Distribution Kernels are ebuilds that cover the complete process of unpacking, configuring, compiling, and installing the kernel. The primary advantage of this method is that the kernels are updated to new versions by the package manager as part of @world upgrade. This requires no more involvement than running an emerge command. Distribution kernels default to a configuration supporting the majority of hardware, however two mechanisms are offered for customization: savedconfig and config snippets. See the project page for more details on configuration.
Installing the correct installkernel package
Before using the distribution kernels, please verify that the correct installkernel package for the system has been installed. When using systemd-boot (formerly gummiboot) as the bootloader, install:
root #
emerge --ask sys-kernel/installkernel-systemd-boot
When using a traditional a /boot layout (e.g. GRUB, LILO, etc.), the gentoo variant should be installed by default. If in doubt:
root #
emerge --ask sys-kernel/installkernel-gentoo
If using GRUB with installkernel-gentoo, users may want to enable USE=grub for it to automatically run grub-mkconfig for new kernels with dist kernels.
Installing a distribution kernel
To build a kernel with Gentoo patches from source, type:
root #
emerge --ask sys-kernel/gentoo-kernel
System administrators who want to avoid compiling the kernel sources locally can instead use precompiled kernel images:
root #
emerge --ask sys-kernel/gentoo-kernel-bin
Upgrading and cleaning up
Once the kernel is installed, the package manager will automatically update it to newer versions. The previous versions will be kept until the package manager is requested to clean up stale packages. To reclaim disk space, stale packages can be trimmed by periodically running emerge with the --depclean
option:
root #
emerge --depclean
Alternatively, to specifically clean up old kernel versions:
root #
emerge --prune sys-kernel/gentoo-kernel sys-kernel/gentoo-kernel-bin
Post-install/upgrade tasks
Distribution kernels are capable of rebuilding kernel modules installed by other packages. linux-mod.eclass provides the dist-kernel
USE flag which controls a subslot dependency on virtual/dist-kernel.
Enabling this USE flag on packages like sys-fs/zfs and sys-fs/zfs-kmod allows them to automatically be rebuilt against a newly updated kernel and, if applicable, will re-generate the initramfs accordingly.
Manually rebuilding the initramfs
If required, manually trigger such rebuilds by, after a kernel upgrade, executing:
root #
emerge --ask @module-rebuild
If any kernel modules (e.g. ZFS) are needed at early boot, rebuild the initramfs afterward via:
root #
emerge --config sys-kernel/gentoo-kernel
root #
emerge --config sys-kernel/gentoo-kernel-bin
Instalace zdrojových kódů
This section is only relevant when using the following genkernel (hybrid) or manual kernel management approach.
When installing and compiling the kernel for amd64-based systems, Gentoo recommends the sys-kernel/gentoo-sources package.
Choose an appropriate kernel source and install it using emerge:
root #
emerge --ask sys-kernel/gentoo-sources
Tím nainstalujete zdrojové kódy jádra do /usr/src, v němž bude symbolický odkaz linux ukazovat na nainstalované zdrojové kódy jádra:
It is conventional for a /usr/src/linux symlink to be maintained, such that it refers to whichever sources correspond with the currently running kernel. However, this symbolic link will not be created by default. An easy way to create the symbolic link is to utilize eselect's kernel module.
For further information regarding the purpose of the symlink, and how to manage it, please refer to Kernel/Upgrade.
First, list all installed kernels:
root #
eselect kernel list
Available kernel symlink targets: [1] linux-6.1.38-gentoo
In order to create a symbolic link called linux, use:
root #
eselect kernel set 1
root #
ls -l /usr/src/linux
lrwxrwxrwx 1 root root 12 Oct 13 11:04 /usr/src/linux -> linux-6.1.38-gentoo
Alternativa: Použití genkernelu
Pokud ve vás ruční konfigurace vzbuzuje obavy, pak doporučujeme použití genkernel. Nakonfiguruje a sestaví jádro automaticky.
Genkernel provides a generic kernel configuration file and will compile the kernel and initramfs, then install the resulting binaries to the appropriate locations. This results in minimal and generic hardware support for the system's first boot, and allows for additional update control and customization of the kernel's configuration in the future.
Be informed: while using genkernel to maintain the kernel provides system administrators with more update control over the system's kernel, initramfs, and other options, it will require a time and effort commitment to perform future kernel updates as new sources are released. Those looking for a hands-off approach to kernel maintenance should use a distribution kernel.
For additional clarity, it is a misconception to believe genkernel automatically generates a custom kernel configuration for the hardware on which it is run; it uses a predetermined kernel configuration that supports most generic hardware and automatically handles the make commands necessary to assemble and install the kernel, the associate modules, and the initramfs file.
Binary redistributable software license group
If the linux-firmware package has been previously installed, then skip onward to the to the installation section.
As a prerequisite, due to the firwmare
USE flag being enabled by default for the sys-kernel/genkernel package, the package manager will also attempt to pull in the sys-kernel/linux-firmware package. The binary redistributable software licenses are required to be accepted before the linux-firmware will install.
This license group can be accepted system-wide for any package by adding the @BINARY-REDISTRIBUTABLE
as an ACCEPT_LICENSE value in the /etc/portage/make.conf file. It can be exclusively accepted for the linux-firmware package by adding a specific inclusion via a /etc/portage/package.license/linux-firmware file.
If necessary, review the methods of accepting software licenses available in the Installing the base system chapter of the handbook, then make some changes for acceptable software licenses.
If in analysis paralysis, the following will do the trick:
root #
mkdir /etc/portage/package.license
/etc/portage/package.license/linux-firmware
Accept binary redistributable licenses for the linux-firmware packagesys-kernel/linux-firmware @BINARY-REDISTRIBUTABLE
Installation
Nyní se podívejme na to, jak genkernel použít. Nejprve nainstalujeme ebuild sys-kernel/genkernel.
root #
emerge --ask sys-kernel/genkernel
Generation
Nyní sestavte zdrojové kódy jádra spuštěním příkazu genkernel all. Vemte na vědomí, že genkernel sestaví jádro s podporou téměř veškerého hardwaru, tudíž sestavování může trvat docela dlouho!
Pokud oddíl boot neobsahuje systém souborů ext2 nebo ext3, bude nejspíše třeba ručně nakonfigurovat jádro pomocí příkazu genkernel --menuconfig all a přidat podporu pro odpovídající systém souborů přímo do jádra (tedy nikoli jako modul). Uživatelé LVM2 budou pravděpodobně chtít také přidat přepínač
--lvm
.Users of LVM2 should add
--lvm
as an argument to the genkernel command below.root #
genkernel all
Na konci genkernel vytvoří jádro a kompletní sada modulů a počáteční ram disk (initramfs). Jádro a initrd použijeme později v tomto dokumentu při konfiguraci zavaděče.
root #
ls /boot/kernel* /boot/initramfs*
Výchozí: Ruční konfigurace
Úvod
Ruční konfigurace jádra je často vnímána na jako ta vůbec nejsložitější procedura, kterou musí uživatel Linuxu provádět. Nic není dál od pravdy - po konfiguraci několika jader si málokdo vzpomene, že to kdy bylo složité ;)
Nicméně jedno je pravdou: při manuální konfiguraci je nutné znát systém. Většinu informací získáte nainstalováním balíčku sys-apps/pciutils, který obsahuje příkaz lspci:
root #
emerge --ask sys-apps/pciutils
Uvnitř chrootu můžete bezpečně ignorovat varování pcilib (jako je "pcilib cannot open /sys/bus/pci/devices"), které může lspci vypisovat.
Dalším zdrojem informací o systému je spuštění lsmod, po němž uvidíte jaké moduly jádra používá instalační CD, čímž můžete získat indicii o tom, co povolit.
Nyní přejděte do adresáře se zdrojovým kódem jádra a spusťte příkaz make menuconfig. Po něm na vás vyskočí obrazovka s konfiguračním menu.
root #
cd /usr/src/linux
root #
make menuconfig
Konfigurace jádra Linux má mnoho a mnoho sekcí. Nejprve si vypišme ty volby, které musejí být aktivovány (jinak by Gentoo nefungovalo nebo nefungovalo správně bez dodatečného poladění). Na Gentoo wiki máme k dispozici také Průvodce Gentoo nastavením jádra, který vám může poskytnout další pomoc.
Aktivace vyžadovaných voleb
When using sys-kernel/gentoo-sources, it is strongly recommend the Gentoo-specific configuration options be enabled. These ensure that a minimum of kernel features required for proper functioning is available:
Gentoo Linux --->
Generic Driver Options --->
[*] Gentoo Linux support
[*] Linux dynamic and persistent device naming (userspace devfs) support
[*] Select options required by Portage features
Support for init systems, system and service managers --->
[*] OpenRC, runit and other script based systems and managers
[*] systemd
Naturally the choice in the last two lines depends on the selected init system (OpenRC vs. systemd). It does not hurt to have support for both init systems enabled.
When using sys-kernel/vanilla-sources, the additional selections for init systems will be unavailable. Enabling support is possible, but goes beyond the scope of the handbook.
Enabling support for typical system components
Zajistěte, že všechny ovladače nezbytné pro zavedení systému (jako je řadič SCSI atd.) jsou sestaveny jako součást jádra a ne jako modul, jinak systém nebude schopen plně najet.
Potom zvolte přesný model procesoru. Doporučuje se zapnout prvky MCE (pokud jsou v nabídce), tak aby byl uživatel upozorněn na chyby hardwaru. Na některých architekturách (jako je x86_64) tyto chyby nejsou zapisovány do dmesg ale /dev/mcelog. To vyžaduje balíček app-admin/mcelog.
Zvolte také "Maintain a devtmpfs file system to mount at /dev", aby byly kritické soubory zařízení dostupné už zkraje procesu zavádění (CONFIG_DEVTMPFS a CONFIG_DEVTMPFS_MOUNT):
Device Drivers --->
Generic Driver Options --->
[*] Maintain a devtmpfs filesystem to mount at /dev
[ ] Automount devtmpfs at /dev, after the kernel mounted the rootfs
Ověřte, že byla aktivována podpora pro SCSI diky (CONFIG_BLK_DEV_SD):
Device Drivers --->
SCSI device support --->
<*> SCSI disk support
Device Drivers --->
<*> Serial ATA and Parallel ATA drivers (libata) --->
[*] ATA ACPI Support
[*] SATA Port Multiplier support
<*> AHCI SATA support (ahci)
[*] ATA BMDMA support
[*] ATA SFF support (for legacy IDE and PATA)
<*> Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support (ata_piix)
Verify basic NVMe support has been enabled:
Device Drivers --->
<*> NVM Express block device
Device Drivers --->
NVME Support --->
<*> NVM Express block device
It does not hurt to enable the following additional NVMe support:
[*] NVMe multipath support
[*] NVMe hardware monitoring
<M> NVM Express over Fabrics FC host driver
<M> NVM Express over Fabrics TCP host driver
<M> NVMe Target support
[*] NVMe Target Passthrough support
<M> NVMe loopback device support
<M> NVMe over Fabrics FC target driver
< > NVMe over Fabrics FC Transport Loopback Test driver (NEW)
<M> NVMe over Fabrics TCP target support
Nyní přejděte na Souborové systémy (File Systems) a vyberte podporu pro soubory systémy, které používáte. Nesestavte souborový systém použitý pro kořen (root) jako modul, jinak Gentoo nebude moci připojit tento diskový oddíl. Vyberte také Virtual memory a /proc file system. Vyberte jednu nebo více z násedujících možností dle potřeb systému (CONFIG_EXT2_FS, CONFIG_EXT3_FS, CONFIG_EXT4_FS, CONFIG_MSDOS_FS, CONFIG_VFAT_FS, CONFIG_PROC_FS, and CONFIG_TMPFS):
File systems --->
<*> Second extended fs support
<*> The Extended 3 (ext3) filesystem
<*> The Extended 4 (ext4) filesystem
<*> Reiserfs support
<*> JFS filesystem support
<*> XFS filesystem support
<*> Btrfs filesystem support
DOS/FAT/NT Filesystems --->
<*> MSDOS fs support
<*> VFAT (Windows-95) fs support
Pseudo Filesystems --->
[*] /proc file system support
[*] Tmpfs virtual memory file system support (former shm fs)
Pokud používáte pro připojení k internetu PPPoE nebo modem, aktivujte následující volby (CONFIG_PPP, CONFIG_PPP_ASYNC, and CONFIG_PPP_SYNC_TTY):
Device Drivers --->
Network device support --->
<*> PPP (point-to-point protocol) support
<*> PPP support for async serial ports
<*> PPP support for sync tty ports
Zvolení dvou možností komprese nijak neublíží, ale ani není nezbytně nutné, stejně jako volba "PPP over Ethernet", kterou ppp použije pouze v případě, že bude nastaveno pro použití PPPoE v módu jádra.
Nezapomeňte do jádra zahrnout podporu síťových (ethernetových nebo bezdrátových) karet.
Většina systémů má k dispozici více jader, proto je důležité aktivovat Symmetric multi-processing support (CONFIG_SMP):
Processor type and features --->
[*] Symmetric multi-processing support
U vícejaderných systémů se každé jádro počítá jako jeden procesor.
Pokud používáte vstupní zařízení USB (jako je klávesnice nebo myš) nebo jiná USB zařízení, nezapomeňte je také povolit (CONFIG_HID_GENERIC and CONFIG_USB_HID, CONFIG_USB_SUPPORT, CONFIG_USB_XHCI_HCD, CONFIG_USB_EHCI_HCD, CONFIG_USB_OHCI_HCD):
Device Drivers --->
HID support --->
-*- HID bus support
<*> Generic HID driver
[*] Battery level reporting for HID devices
USB HID support --->
<*> USB HID transport layer
[*] USB support --->
<*> xHCI HCD (USB 3.0) support
<*> EHCI HCD (USB 2.0) support
<*> OHCI HCD (USB 1.1) support
Konfigurace jádra specifická pro architekturu
Pokud mají být podporovány 32bitové programy (multilib), ujistěte se, že jste zapnuli volbu "IA32 Emulation". Gentoo instaluje ve výchozím stavu systém s podporou multilib (mix 32bitového a 64bitového prostředí), tudíž pokud nepoužíváte profil no-multilib, je tato volba vyžadována.
'"`UNIQ--pre-00000078-QINU`"'
Zapněte podporu pro popisky oddílů GPT, pokud jste je v předchozí části použili při rozdělování disku:
'"`UNIQ--pre-0000007B-QINU`"'
Zapněte podporu "EFI stub" a "EFI variables" v jádře Linux, pokud je pro spuštění systému používáno UEFI:
'"`UNIQ--pre-0000007E-QINU`"'
Sestavení a instalace
Po té, co je konfigurace dokončena, je čas sestavit a nainstalovat jádro. Opusťte konfiguraci a zahajte proces kompilace:
root #
make && make modules_install
Můžete zapnout paralelní sestavování pomocí make -jX s tím, že
X
je přirozené číslo značící počet paralalelních úloh, které dovolíte sestavovacímu procesu spustit. Je to podobné jako dřívější instrukce k proměnné MAKEOPTS v souboru /etc/portage/make.conf.Jakmile je sestavování jádra hotové, zkopírujte obraz jádra do adresáře /boot. Učiní tak příkaz make install:
root #
make install
Tím bude obraz jádra zkopírován do /boot/ společně se souborem Systém.map a konfiguračním souborem jádra.
Volitelné: Sestavení initramfs
V některých případech je nutné sestavit initramfs - počáteční souborový systém v RAM. Nejběžnějším důvodem je, pokud se důležité souborové systémy (jako je /usr nebo /var) nacházejí na samostatném diskovém oddíle. S pomocí initramfs mohou být tyto oddíly připojeny za použití nástrojů v něm obsažených.
Bez initramfs je velké riziko toho, že systém správně nenajede protože nástroje, které jsou odpovědné za připojení těchto souborových systémů, potřebují informace, které jsou na nich uložené. Initramfs vloží tyto nezbytné soubory do archivu, který se použije bezprostředně po zavedení jádra, ale předtím než bude kontrola předána nástroji init. Skripty v initramfs potom zajistí správné připojení diskových oddílů před tím, než bude systém pokračovat ve spouštění.
If using genkernel, it should be used for both building the kernel and the initramfs. When using genkernel only for generating an initramfs, it is crucial to pass
--kernel-config=/path/to/kernel.config
to genkernel or the generated initramfs may not work with a manually built kernel. Note that manually built kernels go beyond the scope of support for the handbook. See the kernel configuration article for more information.K instalaci initramfs nejprve nainstalujte sys-kernel/genkernel a pak jej nechte generovat initramfs:
root #
emerge --ask sys-kernel/genkernel
root #
genkernel --install initramfs
Initramfs bude uložen v boot. Výsledný soubor může být najít jednoduše vypsáním souborů začínajících na "initramfs":
root #
ls /boot/initramfs*
Nyní pokračujte na Moduly jádra.
Moduly jádra
Konfigurace modulů
Volitelně lze moduly hardwaru vypsat ručně. Obyčejně udev většinou nahraje všechny moduly detekovaného připojeného hardwaru. Nicméně ničemu neublíží, pokud jsou automaticky detekované moduly zapsány na seznam. Občas nějaký exotický hardware potřebuje pomoc při nahrávání svých ovladačů.
VLožte moduly, které je třeba načíst automaticky, do souborů /etc/modules-load.d/*.conf, vždy jeden modul na řádek. Je-li potřeba je možné dodatečné volby modulů nastavit v souborech /etc/modprobe.d/*.conf.
Všechny dostupné moduly lze zobrazit spuštěním příkazu find. Nezapomeňte nahradit "<verze jádra>" verzí právě sestaveného jádra.
root #
find /lib/modules/<kernel version>/ -type f -iname '*.o' -or -iname '*.ko' | less
Force loading particular kernel modules
Například pro automatické načtení modulu 3c59x.ko (což je ovladač síťové karty zn. 3Com), upravte soubor /etc/modules-load.d/network.conf a vložte do něj název modulu. Jméno souboru nemá pro načítač význam.
root #
mkdir -p /etc/modules-load.d
root #
nano -w /etc/modules-load.d/network.conf
Note that the module's .ko file suffix is insignificant to the loading mechanism and left out of the configuration file:
/etc/modules-load.d/network.conf
Vynucení načtení modulu 3c59x3c59x
V instalaci pokračujte Konfigurací systému.
Informace o systému souborů
O fstab
Všechny diskové oddíly používané systémem musí být v Linuxu uvedeny v souboru /etc/fstab. Tento soubor obsahuje přípojné body těchto oddílů (kde lze vidět strukturu souborového systému), způsob jak mají být připojeny a s jakými volbami (zda mají být připojeny automaticky či nikoli, zda mohou být připojeny uživateli, atd.).
Vytvoření souboru fstab
Soubor /etc/fstab používá syntaxi podobnou tabulce. Každý řádek obsahuje šest polí oddělených prázdným prostorem (mezerou, tabulátorem nebo jejich kombinací). Každé pole má svůj vlastní význam:
- První pole zobrazuje blokové speciální zařízení nebo vzdálený síťový souborový systém, který má být připojen. K dispozici je několik identifikátorů uzlů zařízení blokových speciálních zařízení, včetně cesty k souboru zařízení, popisky souborového systému, UUID a popisku oddílu s UUID.
- Druhé pole označuje přípojný bod, kam má být diskový oddíl připojen.
- Třetí pole zobrazuje systém souborů oddílu.
- Čtvrté pole zobrazuje volby používané programem mount chce-li oddíl připojit. Každý souborový systém má vlastní volby připojení. Uživatelům se doporučuje přečíst si manuálovou stránku man mount pro kompletní přehled. Více voleb připojení se odděluje čárkami.
- Páte pole používá utilita dump k určení toho, zda je potřeba oddíl zálohovat. Hodnota může být obvykle ponechána na 0 (nula).
- Šesté pole používá nástroj fsck k určení toho, v jakém pořadí budou souborové systémy kontrolovány, nebyl-li počítač řádně vypnut. Kořenový souborový systém by měl mít hodnotu nastavenu na 1, zbytek na 2 (nebo 0, pokud není třeba souborový systém kontrolovat).
Výchozí soubor /etc/fstab, který Gentoo poskytuje není použitelný, jedná se spíše o vzor.
root #
nano -w /etc/fstab
Ve zbytku tohoto textu používáme jako diskové oddíly základní soubory blokových zařízení /dev/sd*.
Popisky souborových systémů a UUID
MBR (BIOS) a GPT obojí podporují "popisky souborového systému" a "UUID souborového systému". Tyto atributy mohou být definovány v /etc/fstab jako alternativy k použití s příkazem mount při pokusu o nalezení a připojení blokového zařízení. Popisky souborového systému a UUID se rozlišují předponou LABEL a UUID a lze je zobrazit s pomocí příkazu blkid:
root #
blkid
Pokud je souborový systém na oddíle vymazán, pak dojde i ke změně nebo vymazání popisku souborového systému a UUID.
S ohledem na unikátnost se čtenářům, kteří používají tabulku oddílu MBR, doporučuje používat UUID namísto popisků k označení připojitelných svazků v /etc/fstab.
UUIDs of the filesystem on a LVM volume and its LVM snapshots are identical, therefore using UUIDs to mount LVM volumes should be avoided.
Popisky oddílů a UUID
Uživatelé, kteří šli cestou GPT, mají k dispozici několik robustnějších metod, jak označit diskové oddíly v /etc/fstab. Popisky oddílů a UUID oddílů lze použít na zařízeních zformátovaných pomocí GPT jako jedinečné identifikátory oddílů blokových zařízení, bez ohledu na to, jaký souborový systém byl pro daný oddíl vybrán. Popisky oddílů a UUID jsou označeny přízvisky PARTLABEL a PARTUUID a mohou být snadno zobrazeny v terminálu spuštěním příkazu blkid:
root #
blkid
Ačkoli to neplatí vždy pro popisky oddílů, použití UUID k identifikaci oddílu v /etc/fstab poskytuje garanci, že zavaděč nebude zmaten při hledání určitého svazku i v případě, že se v budoucnu změní souborový systém. Použití starších výchozích souborů zařízení /dev/sd*N k definování oddílů v fstab je v systémech, které jsou často restartovány nebo jsou do nich pravidelně přidávána nebo z nich odstraňována SATA zařízení.
Pojmenování blokových zařízení je závislé na několika faktorech, včetně toho jakým způsobem a v jakém pořadí jsou disky zapojeny do systému. Mohou se také objevit v jiném pořadí v závislosti na tom, která zařízení jádro detekeuje jako první brzy po startu. Vycházeje z tohoto tvrzení, pokud nehodláte neustále přehazovat uspořádání disků, použití výchozích souborů blokových zařízení je jednoduchým a přímočarým přístupem.
Pojďme se podívat na to, jakým způsobem zapsat volby pro oddíl /boot. Toto je pouze příklad a měl by být změněn podle rozhodnutí ohledně dělení, které jste učinili v předchozí části instalace. V našem příkladu dělení oddílů pro architekturu amd64, bývá /boot/ obvykle oddílem /dev/sda1 se souborovým systémem ext2. V průběhu zavádění systému musí být zkontrolován, takže bychom měli zapsat:
/etc/fstab
Příklad řádku /boot do souboru /etc/fstab/dev/sda1 /boot ext2 defaults 0 2
Někteří uživatelé nechtějí, aby byl oddíl /boot/ automaticky připojován při startu, z důvodu zvýšení bezpečnosti. Takoví by měli nahradit volbu "defaults" za "noauto". To znamená, že tito uživatelé budou muset manuálně připojit tento oddíl kdykoli jej budou chtít použít.
Přidejte pravidla týkající dříve rozhodnutého schématu rozdělení oddílů a přidejte pravidla pro zařízení jako jsou CD-ROM mechaniky a samozřejmě také ostatní pro oddíly nebo zařízení, jsou-li použity.
Níže je poněkud širší příklad souboru /etc/fstab:
/etc/fstab
Plný příklad /etc/fstab/dev/sda1 /boot ext2 defaults,noatime 0 2
/dev/sda2 none swap sw 0 0
/dev/sda3 / ext4 noatime 0 1
/dev/cdrom /mnt/cdrom auto noauto,user 0 0
Použitím hodnoty auto
ve třetím poli, příkaz mount donutíme hádat použitý souborový systém. To se doporučuje pro výměnná média, která mohou být vytvořena s jedním z několika souborových systémů. Volba user
ve čtvrtém poli umožňuje připojení CD běžným uživatelům.
To improve performance, most users would want to add the noatime
mount option, which results in a faster system since access times are not registered (those are not needed generally anyway). This is also recommended for systems with solid state drives (SSDs). Users may wish to consider lazytime
instead.
Due to degradation in performance, defining the
discard
mount option in /etc/fstab is not recommended. It is generally better to schedule block discards on a periodic basis using a job scheduler such as cron or a timer (systemd). See Periodic fstrim jobs for more information.Soubor /etc/fstab pečlivě zkontrolujte, uložte, ukončete editor a pokračujte.
Informace o síti
It is important to note the following sections are provided to help the reader quickly setup their system to partake in a local area network.
For systems running OpenRC, a more detailed reference for network setup is available in the advanced network configuration section, which is covered near the end of the handbook. Systems with more specific network needs may need to skip ahead, then return here to continue with the rest of the installation.
For more specific systemd network setup, please review see the networking portion of the systemd article.
Informace o hostiteli a doméně
Jedním z rozhodnutí, které musí uživatel učinit je pojmenování svého počítače. To vypadá jednoduše, ale spousta uživatelů má problémy najít odpovídající jméno svého počítače. Abychom vše urychlili, vezměte na vědomí, že toto rozhodnutí není konečné - může být později změněno. V níže uvedených příkladech je jako jméno hostitele použito "tux" v doméně "homenetwork".
Set the hostname (OpenRC or systemd)
root #
echo tux > /etc/hostname
systemd
To set the system hostname for a system currently running systemd, the hostnamectl utility may be used. During the installation process however, systemd-firstboot command must be used instead (see later on in handbook).
For setting the hostname to "tux", one would run:
root #
hostnamectl hostname tux
View help by running hostnamectl --help or man 1 hostnamectl.
Network
There are many options available for configuring network interfaces. This section covers a only a few methods. Choose the one which seems best suited to the setup needed.
DHCP via dhcpcd (any init system)
Most LAN networks operate a DHCP server. If this is the case, then using the dhcpcd program to obtain an IP address is recommended.
To install:
root #
emerge --ask net-misc/dhcpcd
To enable and then start the service on OpenRC systems:
root #
rc-update add dhcpcd default
root #
rc-service dhcpcd start
To enable and start the service on systemd systems:
root #
systemctl enable --now dhcpcd
With these steps completed, next time the system boots, dhcpcd should obtain an IP address from the DHCP server. See the Dhcpcd article for more details.
netifrc (OpenRC)
Nastavení sítě
Během instalace Gentoo Linuxu byla síť již nastavena. Nicméně pouze pro instalační CD samotné, ne pro nainstalované prostředí. Nyní dojde ke konfigiraci pro nainstalovaný Gentoo Linux.
Podorobnější informace o síťování, včetně pokročilých témat jako jsou bonding, bridging, 802.1Q VLAN nebo bezdrátové sítě je součástí oddílu Konfigurace sítě v Gentoo.
Veškeré informace o síti se zachycují do souboru /etc/conf.d/net. Použítá jasnou, i když možná neintuitivní syntaxi. Ale nebojte, vše je níže vysvětleno. Plně komentovaný příklad, který pokrývá mnoho rozličných konfigurací je k dispozici v souboru /usr/share/doc/netifrc-*/net.example.bz2.
Nejprve nainstalujte net-misc/netifrc:
root #
emerge --ask --noreplace net-misc/netifrc
Ve výchozím stavu se používá DHCP. Aby fungovalo, je třeba instalovat DHCP klienta. To je popsáno v Instalaci nezbytných systémových nástrojů.
Pokud potřebujete nastavit síťové připojení z důvodu zvláštních voleb DHCP nebo proto, že DHCP není vůbec použito, otevřete soubor /etc/conf.d/net:
root #
nano -w /etc/conf.d/net
Nastavte jak config_eth0, tak i routes_eth0, aby obsahovaly IP adresu a informace o směrování:
To předpokládá, že se síťové rozhraní je označeno eth0. To je však závislé na systému. Doporučuje se předpokládat, že zařízení má stejné pojmenování jako při zavedení instalačního CD, pokud je instalační CD dostatečně nové. Více informací najdete v části Názvy síťových rozhraní.
/etc/conf.d/net
Definice statické IPconfig_eth0="192.168.0.2 netmask 255.255.255.0 brd 192.168.0.255"
routes_eth0="default via 192.168.0.1"
Pro použití DHCP, definujte config_eth0:
/etc/conf.d/net
Definice DHCPconfig_eth0="dhcp"
Laskavě si přečtěte /usr/share/doc/netifrc-*/net.example.bz2, kde jsou vypsány všechny dostupné volby. Stejně tak si určitě přečtěte man stránku DHCP klienta, pokud je nutné nastavit určité volby DHCP.
Pokud má systém několik síťových rozhraní, může shora uvedené kroky opakovat pro config_eth1, config_eth2 atd.
Nyní konfiguraci uložte, opusťte editor a pokračujte.
Automatický start sítě při náběhu
Aby byla síťová rozhraní při náběhu systému aktivována, je potřeba je přidat do výchozí úrovně běhu.
root #
cd /etc/init.d
root #
ln -s net.lo net.eth0
root #
rc-update add net.eth0 default
Pokud má systém více síťových rozhraní, pak musí být vytvořeny odpovídající soubory net.*, stejně jako jsme to provedli s net.eth0.
Pokud po naběhnutí systému zjistíme, že předpoklad o názvu síťového rozhraní (nyní používáme eth0
) byl špatný, proveďte následující kroky k nápravě:
- Aktualizujte v souboru /etc/conf.d/net správné názvy rozhraní (jako je
enp3s0
namístoeth0
). - Vytvořte nový symbolický odkaz (jako je /etc/init.d/net.enp3s0).
- Odstraňte starý symbolický odkaz (rm /etc/init.d/net.eth0).
- Přidejte nový do výchozí úrovně běhu.
- Odstraňte předchozí použitím rc-update del net.eth0 default.
Soubor hosts
Dále dejte počítači informaci o síťovém prostředí. Ty se vkládají do /etc/hosts a pomáhají přeložit názvy hostitelů na IP adresy, které nejsou přeloženy jmenným serverem.
root #
nano -w /etc/hosts
/etc/hosts
Vyplnění informací o síti# Tímto se definuje používaný systém a musí to být nastaveno
127.0.0.1 tux.homenetwork tux localhost
# Volitelné definice dalších systémů v síti
192.168.0.5 jenny.homenetwork jenny
192.168.0.6 benny.homenetwork benny
Uložte, opusťte editor a pokračujte.
Systémové informace
Heslo root
Pomocí příkazu passwd nastavte root heslo.
root #
passwd
Účet root je v Linuxu všemocný, tudíž si vyberte silné heslo. Později vytvoříme další účty běžných uživatelů pro každodenní používání.
Konfigurace init a bootování
OpenRC
Gentoo (alespoň pokud používáme OpenRC) používá /etc/rc.conf k nastavení služeb, spuštění a vypnutí systému. Otevřete /etc/rc.conf a užijte si čtení komentářů v tomto souboru. Projděte si nastavení a proveďte změny, kde je to potřeba.
root #
nano -w /etc/rc.conf
Dále otevřete soubor /etc/conf.d/keymaps ke změně nastavení klávesnice. Upravte jej k nastavení správné klávesnice.
root #
nano -w /etc/conf.d/keymaps
Zvláštní pozornost věnujte proměnné keymap. Pokud vyberete špatné rozložení, budou výsledkem psaní na klávesnici různé podivnosti.
pro nastavení hodin nakonec upravte soubor /etc/conf.d/hwclock. Změňte jej dle vašich preferencí.
root #
nano -w /etc/conf.d/hwclock
Pokud hardwarové hodiny nepoužívají UTC, je nezbytné v souboru nastavit clock="local"
. V opačném případě může systém vykazovat posouvání hodin.
systemd
First, it is recommended to run systemd-firstboot which will prepare various components of the system are set correctly for the first boot into the new systemd environment. The passing the following options will include a prompt for the user to set a locale, timezone, hostname, root password, and root shell values. It will also assign a random machine ID to the installation:
root #
systemd-firstboot --prompt --setup-machine-id
Next users should run systemctl to reset all installed unit files to the preset policy values:
root #
systemctl preset-all --preset-mode=enable-only
It's possible to run the full preset changes but this may reset any services which were already configured during the process:
root #
systemctl preset-all
These two steps will help ensure a smooth transition from the live environment to the installation's first boot.
Systémový záznamník
OpenRC
Některé nástroje v archivu stage3 chybí, protože několik balíčků poskytuje tu samou funkcionalitu. Je na uživateli, aby vybral, který z nich nainstaluje.
První rozhodnutí se týká nástroje, který poskytuje záznamové funkce. Unix a Linux se vyznačuje v oblasti záznamů skvělými možnostmi - je-li to třeba, pak vše, co se v systémů děje, lze zapsat do logu. To se děje prostřednictvím systémového záznamníku.
Gentoo poskytuje několik utilit systémových záznamníků. Ty zahrnují:
- app-admin/sysklogd - Poskytuje tradiční sadu démonů systémových záznamů. Výchozí konfigurace záznamů funguje přímo po nainstalování, což z něj dělá dobrou volbu pro začátečníky.
- app-admin/syslog-ng - Pokročilý systémový záznamník. Cokoli jiného, než záznam do jednoho velkého souboru, vyžaduje dodatečnou konfiguraci. Pokročilejší uživatelé mohou využít tuto aplikaci kvůli potenciálu; Vemte na vědomí, že dodatečná konfigurace je pro jakýkoli druh chytrého záznamenávání nezbytná.
- app-admin/metalog - Systémový záznamník s širokými možnostmi nastavení.
Další programy jsou v nabídce Portage také - množství dostupných balíčků se denně navyšuje.
Pokud použijete sysklogd nebo syslog-ng, doporučuje se po nich nainstalovat a nakonfigurovat balíček logrotate, jelikož tyto systémové záznamníky neposkytují mechanismus pro rotaci systémových souborů.
Zvolený systémový záznamník nainstalujte pomocí emerge a přidejte jej do výchozí úrovně běhu s pomocí rc-update. Následující příklad nainstaluje app-admin/sysklogd:
root #
emerge --ask app-admin/sysklogd
root #
rc-update add sysklogd default
systemd
While a selection of logging mechanisms are presented for OpenRC-based systems, systemd includes a built-in logger called the systemd-journald service. The systemd-journald service is capable of handling most of the logging functionality outlined in the previous system logger section. That is to say, the majority of installations that will run systemd as the system and service manager can safely skip adding a additional syslog utilities.
See man journalctl for more details on using journalctl to query and review the systems logs.
For a number of reasons, such as the case of forwarding logs to a central host, it may be important to include redundant system logging mechanisms on a systemd-based system. This is a irregular occurrence for the handbook's typical audience and considered an advanced use case. It is therefore not covered by the handbook.
Volitelné: Démon cron
OpenRC
Další na řadě je démon cron.
Démon cron spouští naplánované příkazy. To se hodí, pokud je potřeba spouštět některý příkaz v pravidelných insternvalech (například denně, týdně nebo měsíčně).
All cron daemons support high levels of granularity for scheduled tasks, and generally include the ability to send an email or other form of notification if a scheduled task does not complete as expected.
Gentoo poskytuje několik možných démonů cronu, včetně sys-proces/bcron, sys-proces/dcron, sys-process/fcron a sys-process/cronie. Nainstalování jednoho z nich je podobné, jako v případě systémového záznamníku. Následující příklad používá sys-process/cronie:
- sys-process/cronie - cronie is based on the original cron and has security and configuration enhancements like the ability to use PAM and SELinux.
- sys-process/dcron - This lightweight cron daemon aims to be simple and secure, with just enough features to stay useful.
- sys-process/fcron - A command scheduler with extended capabilities over cron and anacron.
- sys-process/bcron - A younger cron system designed with secure operations in mind. To do this, the system is divided into several separate programs, each responsible for a separate task, with strictly controlled communications between parts.
cronie
The following example uses sys-process/cronie:
root #
emerge --ask sys-process/cronie
root #
rc-update add cronie default
root #
rc-update add cronie default
Alternative: dcron
root #
emerge --ask sys-process/dcron
Pokud je použit dcron nebo fcron, je třeba spustit dodatečný inicializační příkaz:
root #
crontab /etc/crontab
Alternative: fcron
root #
emerge --ask sys-process/fcron
If fcron is the selected scheduled task handler, an additional emerge step is required:
root #
emerge --config sys-process/fcron
Alternative: bcron
bcron is a younger cron agent with built-in privilege separation.
root #
emerge --ask sys-process/bcron
systemd
Similar to system logging, systemd-based systems include support for scheduled tasks out-of-the-box in the form of timers. systemd timers can run at a system-level or a user-level and include the same functionality that a traditional cron daemon would provide. Unless redundant capabilities are necessary, installing an additional task scheduler such as a cron daemon is generally unnecessary and can be safely skipped.
Volitelné: Indexování souborů
Za účelem indexace souborového systému a tím rychlejší schopnosti vyhledávání, nainstalujte sys-apps/mlocate.
root #
emerge --ask sys-apps/mlocate
Volitelné: Vzdálený přístup
opensshd's default configuration does not allow root to login as a remote user. Please create a non-root user and configure it appropriately to allow access post-installation if required, or adjust /etc/ssh/sshd_config to allow root.
Abyste byli schopní přistupovat k systému po instalaci vzdáleným způsobem, přidejte do výchozí úrovně běhu init skript sshd:
OpenRC
root #
rc-update add sshd default
Pokud je potřeba přístup přes sériovou konzoli (což je možné v případě vzdálených serverů), odkomentujte sekci sériové konzole v souboru /etc/inittab:
Uncomment the serial console section in /etc/inittab:
root #
nano -w /etc/inittab
# SERIAL CONSOLES s0:12345:respawn:/sbin/agetty 9600 ttyS0 vt100 s1:12345:respawn:/sbin/agetty 9600 ttyS1 vt100
systemd
To enable the SSH server, run:
root #
systemctl enable sshd
To enable serial console support, run:
root #
systemctl enable getty@tty1.service
Optional: Shell completion
Bash
Bash is the default shell for Gentoo systems, and therefore installing completion extensions can aid in efficiency and convenience to managing the system. The app-shells/bash-completion package will install completions available for Gentoo specific commands, as well as many other common commands and utilities:
root #
emerge --ask app-shells/bash-completion
Post installation, bash completion for specific commands can managed through eselect. See the Shell completion integrations section of the bash article for more details.
Time synchronization
It is important to use some method of synchronizing the system clock. This is usually done via the NTP protocol and software. Other implementations using the NTP protocol exist, like Chrony.
To set up Chrony, for example:
root #
emerge --ask net-misc/chrony
OpenRC
On OpenRC, run:
root #
rc-update add chronyd default
systemd
On systemd, run:
root #
systemctl enable chronyd.service
Alternatively, systemd users may wish to use the simpler systemd-timesyncd SNTP client which is installed by default.
root #
systemctl enable systemd-timesyncd.service
Nástroje souborového systému
V závislosti na použitých souborových systémech, je nezbytné nainstalovat utility souborových systémů (pro kontrolu integrity souborového systému, vytváření dalších souborových systémů atd.). Vezměte na vědomí, nástroje pro správu souborových systémů ext2, ext3 nebo ext4 (sys-fs/e2fsprogs) jsou již nainstalovány jakou součást setu @system.
Následující tabulka obsahuje nástroje, které nainstalujte v případě, že je použit určitý souborový systém:
Souborový systém | Balíček |
---|---|
Ext2, 3 a 4 | sys-fs/e2fsprogs |
XFS | sys-fs/xfsprogs |
ReiserFS | sys-fs/reiserfsprogs |
JFS | sys-fs/jfsutils |
VFAT (FAT32, ...) | sys-fs/dosfstools |
Btrfs | sys-fs/btrfs-progs |
It's recommended that sys-block/io-scheduler-udev-rules is installed for the correct scheduler behavior with e.g. nvme devices:
root #
emerge --ask sys-block/io-scheduler-udev-rules
Více informací o souborových systémech v Gentoo najdete v článku o souborových systémech.
Nástroje sítě
Pokud nepotřebujete žádné další nástroje sítě, pokračujte přímo na sekci Nastavení zavaděče.
Instalace DHCP klienta
Ačkoli jde o nepovinnou součást, většina uživatelů zjistí, že DHCP klienta potřebují, aby se připojili na DHCP server v jejich síti. Využijte této příležitosti k instalaci DHCP klienta. Pokud na tento krok zapomenete, pak se váš systém nebude moci připojit do sítě a stažení DHCP klienta pro něj bude kvůli tomu nemožné.
Aby systém automaticky získal IP adresu pro jedno nebo více síťových rozhraní s použitím skriptů netifrc, je nezbytné nainstalovat DHCP klienta. Doporučujeme použít balíček net-misc/dhcpcd, ačkoli jsou v repozitáři Gentoo k dispozici i další klienti DHCP:
root #
emerge --ask net-misc/dhcpcd
Volitelné: Instalace klienta PPPoE
Pokud používáte k připojení na internet PPP, nainstalujte balíček net-dialup/ppp:
root #
emerge --ask net-dialup/ppp
Volitelné: Instalace nástrojů pro bezdrátové sítě
Pokud bude systém připojen k bezdrátové sítě, nainstalujte balíček net-wireless/iw pro otevřené a WEP sítě a/nebo balíček net-wireless/wpa_supplicant pro sítě s WPA a WPA2. iw je také užitečný disgnostický nástroj ke skenování bezdrátových sítí.
root #
emerge --ask net-wireless/iw net-wireless/wpa_supplicant
Nyní pokračujte na Nastavení zavaděče.
Výběr zavaděče
Po nakonfigurování jádra Linux, nainstalování systémových nástrojů a dokončenou úpravou konfiguračních souborů je čas k nainstalování poslední důležité součásti linuxové instalace: zavaděče systému.
Zavaděč je odpovědný za spuštění jádra Linux během nabíhání - bez něj by systém nevěděl, jak pokračovat dál po té, co počítač stiskem tlačítka spustíte.
Pro architekturu amd64 uvádíme jak nastavit buď GRUB2 nebo LILO pro systémy založené na BIOSu a #Výchozí: Použití GRUB2 nebo efibootmgr pro systémy s UEFI.
V této sekci příručky rozlišujeme mezi nahrátím (emerging) zavaděče a jeho instalací (installing) na systémový disk. Termín instalace bude použit pro použití Portage k tomu, aby byl balíček zpřístupněn v systému. Pojem "nahrátí" pak bude označovat, že zavaděč kopíruje soubory a fyzicky mění odpovídající sekce na systémovém disku za účelem aktivace a přípravy zavaděče na jeho fungování v dalším spouštěcím cyklu.
Výchozí: GRUB2
Většina systémů Gentoo se spoléhá na GRUB2 (k nalezení v balíčku sys-boot/grub), který je přímým nástupcem "GRUB Legacy". Bez jakékoli další konfigurace GRUB2 podporuje starší systémy ("pc") s BIOSem. S malou dávkou konfigurace nezbytné před sestavením, podporuje GURB2 půltucet dalších platforem. Pro více informací konzultujte Oddíl o prerekvizitách v článku GRUB2.
Nahrátí (emerge)
Při použití staršího BIOSu, který podporuje pouze tabulky oddílů MBR není před instalací třeba žádné dodatečné konfigurace:
root #
emerge --ask --verbose sys-boot/grub:2
Poznámka pro uživatele UEFI: po spuštění shora uvedeného příkazu se zobrazí povolené hodnoty v GRUB_PLATFORMS před instalací. V případě že použití sytému s UEFI by se uživatelé měli ujistit, že je nastavena proměnná GRUB_PLATFORMS="efi-64"
(což je výchozí stav). Pokud tomu tak v daném případě není, je třeba doplnit GRUB_PLATFORMS="efi-64"
do souboru /etc/portage/make.conf před instalací GRUB2, tak aby byl balíček sestaven s podporou funkcí EFI.
root #
echo 'GRUB_PLATFORMS="efi-64"' >> /etc/portage/make.conf
root #
emerge --ask sys-boot/grub:2
- Pokud došlo k instalaci GRUB2 bez toho, aby byla napřed nastavena proměnná
GRUB_PLATFORMS="efi-64"
, může to být doplněno do make.conf později a závislosti v setu balíčků world mohou být znovu sestaveny za pomocí parametrů--update --newuse
příkazu emerge:
root #
emerge --ask --update --newuse --verbose sys-boot/grub:2
Software GRUB2 byl nyní nahrán do systému, ale ještě ne nainstalován.
Instalace
Dále nainstalujte potřebné soubory GRUB2 do adresáře /boot/grub pomocí příkazu grub-install. Předpokládejme, že první disk (ten, ze kterého systém nabíhá) je /dev/sda, jeden z následujících souborů tak udělá co chceme:
- Při použití BIOS:
root #
grub-install /dev/sda
- Při použití UEFI:
- Důležité
Ujistěte se, že systémový oddíl EFI byl připojen před spuštěním grub-install. grub-install může nainstalovat soubor GRUB EFI (grubx64.efi) do špatného adresáře bez toho, aby jakkoli upozornil na to, že byl použit špatný adresář.
root #
grub-install --target=x86_64-efi --efi-directory=/boot
- Poznámka
Změňte nastavení volby--efi-directory
na kořen Systémového oddílu EFI s vfat. Je to nezbytné, pokud nebyl oddíl /boot naformátován některou z variant FAT.
- Důležité
Pokud grub-install vrátí chybu podobnou této:Could not prepare Boot variable: Read-only file system
, bude potřeba k úspěšnému pokračování znovu připojit speciální přípojný bod efivars k zápisu:root #
mount -o remount,rw /sys/firmware/efi/efivars
Někteří výrobci základních desek zřejmě podporují pouze adresář /efi/boot k umístění souboru .EFI na systémovém oddílu EFI (ESP). Instalátor GRUB může tuto operaci provést automaticky při použití volby --removable
. Ověřte si, že je ESP připojeno před tím, že než spustíte následující příkazy. Za předpokladu, že je ESP připojena do /boot (jak bylo uvedeno výše), spusťte:
root #
grub-install --target=x86_64-efi --efi-directory=/boot --removable
Tím vytvoříte výchozí adresář definovaný specifikací UEFI a následně zkopírujte soubor grubx64.efi do 'výchozího' umístění souborů EFI definované touto specifikací.
Nastavení
Dále vygenerujte konfiguraci GRUB2 na základě nastavení specifikovaného v souboru /etc/default/grub a skriptech v /etc/grub.d. Ve většině případů není třeba žádných zásahů ze strany uživatele, jelikož GRUB2 automaticky zjistí, jaké jádro má zavést (to nejvyšší, jaké je k dispozici v /boot/ a který souborový systém je kořenový (root)). Je rovněž možné přidávat parametry jádra pomocí proměnné GRUB_CMDLINE_LINUX v souboru /etc/default/grub.
K vygenerování konečné konfigurace GRUB2 spusťte příkaz grub-mkconfig:
root #
grub-mkconfig -o /boot/grub/grub.cfg
Generating grub.cfg ... Found linux image: /boot/vmlinuz-6.1.38-gentoo Found initrd image: /boot/initramfs-genkernel-amd64-6.1.38-gentoo done
Výstup příkazu by měl obsahovat, že byl nalezen alespoň jeden obraz jádra, jelikož ten je potřeba k naběhnutí systému. Pokud je použit initramfs nebo byl k sestavení jádra použit genkernel, měl by být nalezen také správný obraz initrd. Pokud se tak nestalo, podívejte se na obsah adresáře /boot příkazem ls. Pokud tyto soubory opravdu chybí, vraťte se zpět k instrukcím pro nastavení a instalaci jádra.
Utilitu os-prober můžete použít ve spojení s GRUB2 k nalezení dalších operačních systémů na připojených discích. Detekovatelné jsou Windows 7, 8.1, 10 a ostatní distribuce Linuxu. Ti, kteří požadují, aby jejich systém podporoval dual-boot by měli nainstalovat (emerge) sys-boot a po té znovu spustit příkaz grub-mkconfig (jak je uvedeno výše). Pokud narazíte na problémy s detekcí, určitě si přečtěte celý článek o GRUB2 před tím, než požádáte komunitu Gentoo o podporu.
Alternativa 1: LILO
Nahrátí (emerge)
LILO, "LI"nux "LO"ader, je osvědčeným řešením v oblasti Linuxových zavaděčů. Nicméně v porovnání s GRUB se mu nedostává některých funkcí. LILO se stále používá, jelikož na některých systémech GRUB nefunguje, zatímco LILO ano. Samozřejmě se používá také proto, že někteří lidé jsou s ním obeznámeni a chtějí jej používat. Tak jak tak, Gentoo podporuje oba zavaděče.
Instalace LILO je snadná, prostě použijte emerge.
root #
emerge --ask sys-boot/lilo
Nastavení
K nastavení LILO nejprve vytvořte soubor /etc/lilo.conf.
root #
nano -w /etc/lilo.conf
Jádro ke spuštění označíte v konfiguračním souboru za použití sekcí. Ověřte si, že názvy souborů jádra (včetně verze jádra) a initramfs, znáte, jelikož na ně musíte odkázat v konfiguračním souboru.
Pokud je souborovým systémem na kořenovém oddílu JFS, připojte na konec řádku každé položky
append="ro"
kvůli tomu, že JFS musí přehrát svůj log před tím, než umožní připojení v režimu pro zápis./etc/lilo.conf
Příklad nastavení LILO'"`UNIQ--pre-00000090-QINU`"'
Pokud používáte odlišné schéma diskových oddílů nebo jiný obraz jádra, udělejte odpovídající změny.
Pokud je potřeba initramfs, změňte konfiguraci uvedením odkazu na soubor initramfs a označením zařízení s kořenovým oddílem:
/etc/lilo.conf
Přidání informace o initramfs do položky zavaděče'"`UNIQ--pre-00000093-QINU`"'
Pokud potřebujte předat jádru další volby, použijte výraz append
. Například k zapnutí framebufferu pomocí volby video
:
/etc/lilo.conf
Doplnění parametru video k volbám spuštění'"`UNIQ--pre-00000096-QINU`"'
Uživatelé, kteří použili genkernel by měli mít na paměti, že jejich jádro používá stejné volby jako instalační CD. Pokud tedy například potřebujete zapnout podporu pro SCSI zařízení, přidejte mezi volby jádra doscsi
.
Nyní soubor uložte a ukončete editor.
Instalace
Pro dokončení spusťte /sbin/lilo, čímž umožníte, aby LILO aplikovalo nastavení v /etc/lilo.conf na systém (např. nainstalovalo samo sebe na disk). Berte na vědomí, že program /sbin/lilo musí být spuštěn pokaždé, když nainstalujete nové jádro nebo uděláte změny v souboru /etc/lilo.conf z důvodu, aby systém mohl nastartovat, změní-li se název souboru s jádrem.
root #
/sbin/lilo
Alternativa 2: efibootmgr
V systémech s UEFI může být upravován přímo firmware UEFI (jinými slovy primární zavaděč systému) k tomu, aby vyhledal položky je spuštění. Takové systému nepotřebují zavaděče jako je GRUB2 (známé jako sekundární zavaděče) k tomu, aby je pomohly spustit. Se vším tímto na paměti, důvodem, proč existují EFI zavaděče jako je GRUB2, je rozšíření funkcí UEFI systémů v průběhu procesu spouštění. Použití efibootmgr je vhodné pro ty, kdo chtějí využit opravdu minimalistický (avšak více svázaný) přístup ke spouštění svého systému; použití GRUB2 (viz výše) je pro většinu uživatelů jednodušší, protože je z hlediska svých možností při spouštění systému s UEFI pružnější.
Uvědomte si, že aplikace sys-boot/efibootmgr není zavaděč; je to nástroj sloužící k přizpůsobení firmwaru UEFI a aktualizaci jeho nastavení tak, aby mohlo být dříve do systému nainstalované linuxové jádro spuštěno i s dodatečnými volbami (je-li to třeba) nebo aby mohlo být zapnuto více spustitelných položek. Toto přizpůsobení se děje pomocí proměnných EFI (proto potřeba mít v jádře podporu proměnných EFI).
Před tím, než budete pokračovat, pročtěte si článek EFI stub kernel. Jádro musí mít zapnuty specifické volby, aby bylo přímo spustitelné ze strany UEFI firmwaru. Možná bude potřeba jádro překompilovat. Dobrý nápad je také podívat se na článek efibootmgr.
Pro uvedení věcí na pravou míru, efibootmgr není pro spuštění systému UEFI vyžadováno. Linuxové jádro samo o sobě může být spuštěno napřímo, dodatečné volby mohou být zabudovány přímo do linuxového jádra (v konfiguraci jádra je volba, která umožňuje uživateli specifikovat parametry spuštění). Dokonce i initramfs může být "součástí" jádra.
Kdo se rozhodl jít touto cestou, musí nainstalovat příslušný software:
root #
emerge --ask sys-boot/efibootmgr
Po té vytvořte adresář /boot/efi/boot a zkopírujte do něj jádro, které nazvete grubx64.efi:
root #
mkdir -p /boot/efi/boot
root #
cp /boot/vmlinuz-* /boot/efi/boot/grubx64.efi
Dále sdělte firmwaru UEFI, že má být vytvořena položka "Gentoo" s čerstvě sestaveným jádrem:
root #
efibootmgr --create --disk /dev/sda --part 2 --label "Gentoo" --loader "\efi\boot\grubx64.efi"
Pokud je použit zaváděcí souborový systém RAM (initramfs), přidejte k němu odpovídající volbu:
root #
efibootmgr -c -d /dev/sda -p 2 -L "Gentoo" -l "\efi\boot\grubx64.efi" initrd='\initramfs-genkernel-amd64-6.1.38-gentoo'
Použití \ jako oddělovače adresářů je v rámci definicí pro UEFI povinné.
Po těchto změnách, jakmile systém znovunaběhne, bude zpřístupněna položka "Gentoo".
Alternativa 3: Syslinux
Syslinux je dalším alternativním zavaděčem pro architekturu amd64. Podporuje MBR a, od verze 6.00, zavedení z EFI. PXE (síťové) zavedení a další méně známé způsoby jsou podporovány také. Ačkoli je Syslinux u mnoha lidí oblíbeným zavaděčem, je příručkou nepodporovaný. Čtenáři mohou najít informace o instalaci a nastavení tohoto zavaděče v článku o Syslinuxu.
Restartování systému
Opusťte prostředí chroot a odpojte všechny připojené oddíly. Po té napište kouzelný příkaz, který zahájí konečný, opravdový test: reboot.
root #
exit
cdimage ~#
cd
cdimage ~#
umount -l /mnt/gentoo/dev{/shm,/pts,}
cdimage ~#
umount -R /mnt/gentoo
cdimage ~#
reboot
Samozřejmě nezapomeňte vyjmout bootovací CD, jinak může dojít opět ke startu z CD namísto nově instalovaného systému Gentoo.
Jakmile jste zrestartovali do čerstvě nainstalovaného prostředí Gentoo, dokončete vše podle Dokončení instalace Gentoo.
Administrace uživatelů
Přidání uživatele pro každodenní užívání
Práce pod rootem je v systémech UNIX/Linux nebezpečná a měly byste se jí vyhýbat, pokud je to jen možné. Proto se silně doporučuje přidání uživatele pro běžné používání.
Skupiny, jichž je uživatel členem, určují, jaké činnosti může uživatel provádět. Následující tabulka obsahuje několik důležitých skupin:
Skupina | Popis |
---|---|
audio | Umožní přístup k audio zařízením. |
cdrom | Umožní přímý přístup k optickým mechanikám. |
floppy | Umožní přístup k disketovým mechanikám. |
games | Umožní hrát hry. |
portage | Umožní přistupovat ke zdrojům Portage. |
usb | Umožní přístup k USB zařízením. |
video | Umožní přístup k zařízením pro zachytávání video a provádění grafické akcelerace. |
wheel | Umožní používat su. |
K vytvoření uživatele larry, který je členem skupin "Wheel", "users" a "audio", se nejprve přihlašte jako root (pouze root může vytvářet uživatele) a spusťte příkaz useradd:
Login:
root
Password: (Vložte heslo roota)
root #
useradd -m -G users,wheel,audio -s /bin/bash larry
root #
passwd larry
Password: (Vložte heslo uživatele larry) Re-enter password: (Zopakujte heslo uživatele pro ověření)
Pokud bude uživatel někdy potřebovat provést nějakou činnost jako root, může použít su k tomu, aby dočasně obdržel privilegia kořenového uživatele. Jiný způsob je použití balíčku sudo, který, pokud je dobře nastaven, zajišťuje vysokou míru bezpečnosti.
Vyčištění disku
Odstranění balíků
Šlo-li vše dobře, můžeme po dokončení instalace Gentoo a restartování systému odstranit balík stage3 z pevného disku. Připomínáme, že byly staženy do adresáře /.
root #
rm /stage3-*.tar.*
Na co se podívat dál
Nejste se jistí kam dál? Je moho cest kam se vydat na průzkum... Gentoo poskytuje svým uživatelům mnoho možností, a tudíž má i mnoho zdokumentovaných (a i méně zdokumentovaných) funkcí k zkoumání tady na wiki a na ostatních subdoménách spojených s Gentoo (viz níže sekci Gentoo online).
Dokumentace
It is important to note that, due to the number of choices available in Gentoo, the documentation provided by the handbook is limited in scope - it mainly focuses on the basics of getting a Gentoo system up and running and basic system management activities. The handbook intentionally excludes instructions on graphical environments, details on hardening, and other important administrative tasks. That being stated, there are more sections of the handbook to assist readers with more basic functions.
Čtenáři by se měli určitě podívat na následující část Příručky Gentoo nadepsanou Práce s Gentoo, která vysvětluje, jak udržovat software aktuální, jak nainstalovat další balíčky se softwarem, podrobnosti o USE přepínačích, OpenRC init systému a různých dalších tématech vztahujících se ke správě systému s Gentoo po instalaci.
Kromě příručky nabádáme čtenáře k tomu, aby prozkoumávali i další zákoutí Gentoo wiki a nacházeli doplňující komunitní dokumentaci. Tým Gentoo Wiki také nabízí přehled dokumentovaných témat, který obsahuje hezký výběr článků z této wiki. Například odkazuje na průvodce lokalizací, který vám umožní zabydlet se více v systému (zvláště užitečné pro uživatele, kteří mají angličtinu jako svůj druhý jazyk).
The majority of users with desktop use cases will setup graphical environments in which to work natively. There are many community maintained 'meta' articles for supported desktop environments (DEs) and window managers (WMs). Readers should be aware that each DE will require slightly different setup steps, which will lengthen add complexity to bootstrapping.
Many other Meta articles exist to provide our readers with high level overviews of available software within Gentoo.
Gentoo online
Čtenáři nechť vezmou na vědomí, že všechny oficiální online stránky Gentoo se řídí pravidly chování Gentoo. Být aktivní v komunitě Gentoo je výsada, ne právo, a uživatelé by si měli být vědomí toho, že existence pravidel chování má svůj důvod.
Z výjimkou internet relay chatu (IRC) hostovaného u Freenode a e-mailových konferenecí vyžaduje většina webů zvláštní účet, aby mohly být pokládány otázky, otvírány diskuse nebo zakládána chybová hlášení.
Fórum a IRC
Všichni uživatelé jsou samozřejmě vždy vítání na našem Gentoo fóru nebo na jednom z mnoha internet relay chat kanálů. Je snadné vyhledat na fóru zda problém, který se objevil na čerstvé isntalaci Gentoo, již byl v minulosti objeven a po zpětné vazbě vyřešen. Pravědpobonost, že ostatní uživatelé zažili stejné problémy při instalaci jako prvouživatelé je překvapivá. Radíme uživatelům, aby prohledali fórum a wiki před tím, než budou žádat o pomoc na podpůrných kanálech Gentoo.
E-mailové konference
Členům komunity, kteří raději žádají o pomoc nebo zpětnou vazbu přes e-mail, než aby si vytvářeli uživatelský účet na fóru nebo IRC, je také několik emailových konferencí. Uživatelé budou muset postupovat podle pokynů, aby se stali odběrateli e-mailových konferencí.
Chyby
Občas se ani po prohledání wiki, fóra a hledání pomoci na kanálech IRC nebo v e-mailové konferenci nenajde známé řešení problému. To je většinou známkou toho, že je třeba otevřít chybové hlášení v Bugzille.
Průvodce vývojáře
Čtenáři, kteří touží po tom zjistit více o vývoji Gentoo si mohu prohlédnout Průvodce vývojáře. Tato příručka poskytuje pokyny jak psát ebuildy, pracovat s eclass a poskytuje definice mnoha zákaldních konceptů stojících za vývojem Gentoo.
Závěrečné úvahy
Gentoo je robustní, flexibilní a skvěle spravovatelná distribuce. Komunita vývojářů se těší na zpětnou vazbu ohledně toho, jak učinit Gentoo ještě "lepší" distribucí.
Jen pro připomenutí, jakékoli připomínky k "této příručce" by měly být dávány podle návodu uvedeného v Jak mohu přispět ke zlepšení příručky?
Těšíme se až uvidíme jakým způsobem začnou naši uživatelé Gentoo používat!
Warning: Display title "Gentoo Linux amd64 Handbook: Instalace Gentoo" overrides earlier display title "Handbook:AMD64/Full/Installation/cs".