Kategorie: Server, Desktop

Kompilace kernelu (Debian/Ubuntu)

Základní postup kompilace kernelu pod Debianem nebo Ubuntu. Nevyžaduje grafické prostředí.

Součásti jádra

linux-imageZkompilované jádro
linux-restricted-modulesZkompilované moduly jádra (uzavřené?)
linux-sourceZdrojové kódy jádra (pro kompilaci jádra)
linux-headersHlavičkové soubory jádra (pro kompilaci modulů)

Příprava - instalace nástrojů a stažení zdrojových kódů

Instalace nástrojů potřebných pro konfiguraci a kompilaci jádra...
apt-get install build-essential bin86 kernel-package gcc fakeroot ncurses-dev
Přejdeme do adresáře určeného pro zdrojové kódy jádra...
cd /usr/src
Stáhneme jádro z kernel.org (Oficiálního webu linuxového jádra, nejlépe nejnovější stable verzi, archiv který má něco přes 64 MB)
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.34.1.tar.bz2
Rozbalíme archiv... (To bude taky trvat)
tar xjf linux-2.6.34.1.tar.bz2
Vstoupíme do takto vzniklého adresáře...
cd /usr/src/linux-2.6.34.1

Konfigurace a kompilace

Zbavíme se zbytků po předchozích kompilacích...
make-kpkg clean
Otevřeme pseudografickou konfiguraci jádra - zde rozhodneme které funkce a moduly budou zakompilovány do jádra (*), které do jeho modulů (M) a které nebude naše jádro vůbec obsahovat (-). (Odstraníme tak třeba nepotřebné nebo nežádoucí ovladače hardwaru který nepoužíváme nebo nám způsobuje problémy) Tím vznikne soubor .config, obsahující konfiguraci jádra.
make menuconfig
Nakonec jádro zkompilujeme a vytvořím tak Debianí/Ubuntí balíček, který pak můžeme snadno nainstalovat. (Třeba i na jiném počítači stejné architektury)
Kompilace bude trvat velmi velmi dlouho, tak na to myslete předtím než spustíte následující příkaz, který ji spustí!
make-kpkg --initrd --stem linux --revision=vlastni.1.0 kernel_image

Instalace jádra

Pokud už máte tento balíček na počítači na kterém chcete jádro nainstalovat, jednoduše jej nainstalujte...
dpkg -i /usr/src/linux-image-2.6.X.Y_vlastni.1.0_i386.deb
Neodstraňujte ale původní jádro, dokud neověříte že toto jádro je funkční! Naštěstí není s linuxovými zavaděči problém mít nainstalovaných více jader, takže by v tom neměl být problém. Balíček obsahuje jak samotný kernel, tak i initrd a moduly jádra. Vše tak máte zastřešené jedním balíčkem který můžete přenášet mezi počítači nebo snadno odstranit. To že se jádro zkompilovalo ještě nutně neznamená že bude funkční! Dokonce i když nabootuje - co když jste si například odstranili ovladače klávesnice a myši? :)

Komentáře


Nebyly přidány žádné komentáře.