Linux Kernel
Kompilace jádra (2.6.9+)
Nebudu se zde rozepisovat nijak podrobně o kompilování jádra. O tom už bylo
napsáno více než dost. Takže jen stručný postup kompilování Vanilla kernelu.
- Download jádra z kernel.org v horším
případě nainstalování vhodného balíčku. Horší proto, protože jádra z distribucí
bývají patchovaná a pro nezasvěcené se může stát správná konfigurace noční
můrou.
- Ověření podpisu archivu s jádrem (není nutné). Návod na kernel.org (en).
- Rozbalení jádra (nejrychlejší je v mc sekvence kláves F2, x).
Jinak "man tar" a kouknout se na příklady. Doporučuju použít adresář
"/usr/src". Později při instalaci nějakých ovladačů (např. hostap nebo
nvidia) jsou potřeba zdrojové kódy jádra a kdo to pak má hledat.
- make menuconfig – spustí se celkem příjemné rozhraní na
konfigurování jádra. Jsou potřeba devel knihovny ncurses. Narozdíl od svých
grafických bratříčků nepotřebuje ke svému běhu Xka, což občas není vůbec od
věci.
- Nezapomeneme nastavit svojí extra verzi kernelu, protože by se nám jinak
přepsaly moduly aktuálního jádra shodné verze. Doporučuji pomlčku, pár písmenek
na označení stroje a pořadové číslo kernelu.
General setup --->
() Local version - append to kernel release
- Spustit script compile z adresáře s jádrem nebo ručně make modules
modules_install bzImage. V případě ruční kompilace je výsledné jadro v
"arch/i386/boot/bzImage". Script compile jej odtamtud zkopíruje i s
konfigurací do "/boot/verze-jádra" a hezky přejmenuje.
- Nakonec dopsat nové jádro do "/etc/lilo.conf" popřípadě
"/boot/grub/menu.lst" a reboot.
Script compile
Jedná se o skript v Bashi, který spustí kompilaci kernelu a poté hotový
kernel nakopíruje do určených adresářů. Napsán byl pro jeden z dřívějších
kernelů řady 2.6 a bez problémů ho používám s jádry od verze 2.6.9. Se staršími
nebude fungovat, protože se změnil způsob uchovávání informace poslední složce
označení verze. Na konci scriptu je zakomentovaná kraťoučká melodie. To že je
zakomentovaná má svůj důvud – kdo odkomentuje, pozná ;)
Generátor menu pro Grub – gen-menu.sh
Protože se mi na disku postupem času nahromadilo povícero verzí jádra a
udržování menu pro grub už mne opravdu nebavilo, napsal jsem takový skript v
Bashi, který je volán při každém bootu a shutdownu. Jeho úkolem je projít
adresář /boot, kde jsou uložena jádra a vygenerovat tomu odpovídající menu pr
Grub. Každé jádro má vlastní adresář, ve kterém je image s jádrem a jeho
config, tak jak to vytváří script configure
Download