navody:fc6jadro

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
navody:fc6jadro [2007/01/05 22:23] mackynavody:fc6jadro [2022/11/14 12:25] (aktuální) – upraveno mimo DokuWiki 127.0.0.1
Řádek 88: Řádek 88:
   * Přečtěte si kapitolu [[navody:fc6obsah#Obecné poznámky]].   * Přečtěte si kapitolu [[navody:fc6obsah#Obecné poznámky]].
  
-Samotný překlad jádra vyžaduje poměrně hluboké znalosti nejen z oblasti //Linux//u ale také hardwaru. Jestliže Vám pojmy jako //TCP/IP//, //PCI// nebo //x86// nic neříkají nebo nevíte, jaký má Váš počítač //CPU// a zvukový čip, překlad jádra se Vám nejspíše napoprvé nepodaří. Nicméně následující postup je relativně bezpečný a není jím co zkazit. Úspěšné zkompilování jádra je tedy otázkou Vaší trpělivosti a času, který máte k dispozici.\\+Samotný překlad jádra vyžaduje poměrně hluboké znalosti nejen z oblasti //Linux//u ale také hardwaru. Jestliže Vám pojmy jako //TCP/IP//, //PCI// nebo //x86// nic neříkají nebo nevíte, jaký má Váš počítač //CPU// a zvukový čip, překlad jádra se Vám nejspíše napoprvé nepodaří. Nicméně následující postup je relativně bezpečný a není jím co zkazit. Úspěšné zkompilování jádra je tedy otázkou Vaší trpělivosti a času, který máte k dispozici. 
 +\\ 
 +Pokud chcete provádět překlad jádra, musíte mít k dispozici zdrojové kódy jádra a nástroje potřebné pro samotný překlad((Vedle pojmu "překlad" se také v této souvislosti můžete setkat s pojmem "kompilace" - jedná se ekvivalenty.)). 
 +\\ 
 +=== Nástroje pro překlad jádra ===
  
-=== Příprava === +Nástroje potřebné pro překlad jádra jsou obsaženy balíčku vývojových nástrojů. Tento balíček nainstalujete pomocí
-Pokud chcete provádět překlad jádra, musíte mít k dispozici zdrojové kódy jádra a nástroje potřebné pro samotný překlad((Vedle pojmu "překlad" se také této souvislosti můžete setkat s pojmem "kompilace" - jedná se ekvivalenty.)).\\+
  
-== Zdrojové kódy jádra ==+  yum -y groupinstall "Development Tools" 
 + 
 +=== Jádro ze src.rpm === 
 + 
 +**Poznámka:** Níže uvedený postup byl převzat z [[http://www.mjmwired.net/resources/mjm-fedora-fc6.html#kernelsrc |www.mjmwired.net]]. 
 +\\ 
 +Pro překlad jádra můžete použít **zdrojové kódy připravené v rámci projektu //Fedora Core//**. Toto jádro je modifikované pro potřeby //Fedora Core// a obsahuje některé úpravy oproti tzv. vanila jádru. Překlad těchto zdrojových kódů je nesrovnatelně jednodušší než překlad vanila jádra. 
 +\\ 
 +Nejprve nainstalujte balíček ''rpm-build''. Tento balíček obsahuje skripty a programy, které se používají pro tvorbu balíčků.
  
-Můžete použít **zdrojové kódy jádra připravené v rámci projektu //Fedora Core//**. Toto jádro je modifikované pro potřeby //Fedora Core// a obsahuje některé úpravy oproti tzv. vanila jádru.\\+  yum -y install rpm-build
  
-**Poznámka:** Níže uvedený postup byl převzat z [[http://www.mjmwired.net/resources/mjm-fedora-fc6.html#kernelsrc |www.mjmwired.net]].\\+Proveďte aktualizaci jádra Vašeho systému.
  
   yum -y update kernel   yum -y update kernel
  
-Tímto provedete aktualizaci jádra. Restartujte počítač, abyste "natáhli" nové jádro. Po té zadejte do příkazové řádky+Restartujte počítač, abyste "natáhli" nové jádro. Po té vytvořte adresář ''/opt/kernel'' a nastavte ho jako pracovní.
  
   mkdir /opt/kernel   mkdir /opt/kernel
   cd /opt/kernel   cd /opt/kernel
  
-Výše uvedené příkazy vytvoří adresář ''/opt/kernel'' a nastaví ho jako pracovní.+Do adresář''/opt/kernel'' stáhněte soubor ''kernel-verze_jadra.src.rpm'', který obsahuje zdrojové kódy.
  
   yum install yum-utils   yum install yum-utils
   yumdownloader --source kernel --enablerepo updates-source   yumdownloader --source kernel --enablerepo updates-source
  
-Tímto stáhnete do adresáře ''/opt/kernel'' soubor ve tvaru ''kernel-verze_jadra.src.rpm'', který obsahuje zdrojové kódy. Tento soubor nainstalujete pomocí+Tento soubor nainstalujete pomocí
  
   rpm -ivh kernel-verze_jadra.src.rpm   rpm -ivh kernel-verze_jadra.src.rpm
  
-Druhou možností je stáhnout **zdrojové kódy vanila jádra** ve formě  '.gz' popř. '.bz2' souborů přímo na stránkách [[http://www.kernel.org]]. Tyto komprimované soubory mají velikost 40 - 50 //MB// v závislosti na použitém komprimačním formátu a verzi jádra.\\+Nyní je možné přistoupit k samotnému překladu jádra. Před samotným překladem je možné provést ruční editaci konfiguračního souboru ''kernel-verze_jadra-architektura.config''. Konfigurační soubor bohužel neobsahuje nápovědu pro jednotlivé položky, což činí případnou modifikaci souboru ''kernel-verze_jadra-architektura.config'' poněkud problematickou. 
 + 
 +   gedit /usr/src/redhat/SOURCES/kernel-verze_jadra-architektura.config 
 + 
 +Samotnou kompilaci zdrojových kódů jádra pak spustíte pomocí příkazů 
 + 
 +   cd /usr/src/redhat/SPECS 
 +   rpmbuild -bb --target architektura kernel-2.6.spec 
 + 
 +Výsledný //rpm// balíček pak naleznete v adresáři ''/usr/src/redhat/RPMS/architektura/''
 + 
 +** Poznámka: ** Architekturu Vašeho počítače zjistíte pomocí příkazu ''uname -m''
 + 
 +=== Jádro z www.kernel.org (tzv. vanila jádro) === 
 + 
 +Druhou možností je stáhnout **zdrojové kódy vanila jádra** ve formě  '.gz' popř. '.bz2' souborů přímo na stránkách [[http://www.kernel.org]]. Tyto komprimované soubory mají velikost 40 - 50 //MB// v závislosti na použitém komprimačním formátu a verzi jádra. 
 +\\ 
 +Stáhněte příslušný soubor se zdrojovými kódy ze stránek [[http://www.kernel.org]]. 
 Přesuňte se do adresáře ''/usr/src/kernels''. Přesuňte se do adresáře ''/usr/src/kernels''.
  
Řádek 122: Řádek 151:
 Nakopírujte do tohoto adresáře soubor se zdrojovými kódy vanila jádra pomocí příkazu Nakopírujte do tohoto adresáře soubor se zdrojovými kódy vanila jádra pomocí příkazu
  
-  mv cesta_k_souboru_se_zdrojovými_kody/verze_jadra.tar.gz verze_jadra.tar.gz+  mv cesta_k_souboru_se_zdrojovými_kody/verze_jadra.tar.gz /usr/src/kernels/verze_jadra.tar.gz
  
 popř. popř.
  
-  mv cesta_k_souboru_se_zdrojovými_kody/verze_jadra.tar.bz2 verze_jadra.tar.bz2+  mv cesta_k_souboru_se_zdrojovými_kody/verze_jadra.tar.bz2 /usr/src/kernels/verze_jadra.tar.bz2
      
 v závislosti na typu komprimovaného souboru. Soubor pak rozbalte pomocí příkazů v závislosti na typu komprimovaného souboru. Soubor pak rozbalte pomocí příkazů
  
   gunzip verze_jadra.tar.gz   gunzip verze_jadra.tar.gz
-  verze_jadra.tar.gz 
  
 popř. popř.
  
   bunzip2 verze_jadra.tar.bz2   bunzip2 verze_jadra.tar.bz2
-  verze_jadra.tar.gz 
  
 Původní soubor se zdrojovými kódy vanila jádra pak můžete smazat pomocí příkazu Původní soubor se zdrojovými kódy vanila jádra pak můžete smazat pomocí příkazu
  
-  rm verze_jadra.tar +  rm -f verze_jadra.tar.*
- +
-**Poznámka:** Pokud budete chtít použít patche, aplikujte je pouze na vanila jádro. Jestliže používáte jádro upravené pro potřeby //Fedora Core//((Jedná se o jádra obsažená v distribuci nebo o jádra stažená z repozitářů.)), mohla aplikace patchů vést k problémům. Obecně platí, že je jednodušší stáhnout nejakutálnější verzi jádra, která již obsahuje případné patche.\\ +
- +
-== Nástroje pro překlad jádra == +
- +
-Nástroje potřebné pro kompilaci jádra jsou obsaženy v balíčku vývojových nástrojů. +
- +
-  yum -y groupinstall "Development Tools" +
- +
-=== Překlad jádra ===+
  
-Nyní je možné přistoupit samotnému ekladu jádra. Přesuňte se do adresáře ''/usr/src/kernels/verze_jadra'', který obsahuje zdrojové kódy jádra.+**Poznámka:** Pokud budete chtít použít patche, aplikujte je pouze na vanila jádro. Jestliže používáte jádro upravené pro potřeby //Fedora Core//((Jedná se o jádra obsažená v distribuci nebo o jádra stažená z repozitářů.)), mohla by aplikace patchů vést problémům. Obecně platí, že je jednodušší stáhnout nejakutálnější verzi jádra, která již obsahuje případné patche. 
 +\\ 
 +Nyní následuje samotný eklad jádra. Přesuňte se do adresáře ''/usr/src/kernels/verze_jadra'', který obsahuje zdrojové kódy jádra.
  
-  cd /usr/src/kernels/vezre_jadra+  cd /usr/src/kernels/verze_jadra
  
 Překlad spustíte pomocí příkazu Překlad spustíte pomocí příkazu
Řádek 168: Řádek 187:
   Prompt for development and/or incomplete code/drivers (EXPERIMENTAL) [Y/n/?]   Prompt for development and/or incomplete code/drivers (EXPERIMENTAL) [Y/n/?]
  
-Na jednotlivé otázky odpovídáte ''Y'' (ano), ''n'' (ne). Jestliže si odpovědí nejste jisti, zadejte ''?'' a u většiny položek se Vám zobrazí podrobnější popis. V řadě případů Vám bude nabídnuta ještě další možnost - ''m''. Pomocí této volby nebude odpovídající část kódu zapracována přímo do jádra, ale bude zkompilována jako modul.\\+Na jednotlivé otázky odpovídáte ''Y'' (ano), ''n'' (ne). Jestliže si odpovědí nejste jisti, zadejte ''?'' a u většiny položek se Vám zobrazí podrobnější popis. V řadě případů Vám bude nabídnuta ještě další možnost - ''m''. Pomocí této volby nebude odpovídající část kódu zapracována přímo do jádra, ale bude přeložena ve formě modulu.\\
 Nastavení jádra pomocí ''config'' je téměř nadlidský úkol - k jednotlivým otázkám se není možné vracet a každá chyba tak znamená, že je třeba celé martýrium opakovat od začátku. Navíc není možné odpovědět pouze na část otázek, odpovědi uložit a pokračovat později. Z tohoto důvodu je vhodnější použít grafické nádstavby ''menuconfig'' nebo ''gconfig''. Nastavení jádra pomocí ''config'' je téměř nadlidský úkol - k jednotlivým otázkám se není možné vracet a každá chyba tak znamená, že je třeba celé martýrium opakovat od začátku. Navíc není možné odpovědět pouze na část otázek, odpovědi uložit a pokračovat později. Z tohoto důvodu je vhodnější použít grafické nádstavby ''menuconfig'' nebo ''gconfig''.
  
Řádek 204: Řádek 223:
  
   title Kernel verze_jadra   title Kernel verze_jadra
- root (hd0,6)+ root (hd0,X)
  kernel /boot/vmlinuz ro root=LABEL=/ rhgb quiet  kernel /boot/vmlinuz ro root=LABEL=/ rhgb quiet
  
  • Poslední úprava: 2022/11/14 11:09
  • (upraveno mimo DokuWiki)