Linux/Linuxové jádro
Postup kompilace linuxového jádra
editovatNástroje pro kompilaci jádra
editovatfakeroot
editovatncurses-dev
editovatPříprava zdrojového kódu
editovatZdrojový kód linuxového jádra je obvyklou součástí distribuce, zpravidla však obsahuje zdrojový kód již upravený. Čisté linuxové jádro se nazývá vanilla a je ke stažení prostřednictvím internetu z adresy http://www.kernel.org
Pokud již máte staženou některou ze starších verzí jádra, pak není nezbytně nutné stahovat celý zdroják znovu, ale stačí pouze stáhnout příslušný patch, jehož aplikací získáte zdrojový kód vámi požadované verze jádra.
Aplikace patche - záplaty
Konfigurace jádra
editovatNež se pustíte do vlastní konfigurace jádra, je nutné zjistit, pro jaký hardware bude jádro určeno. Jak na to, se můžete dočíst v kapitole Linuxové nástroje pro detekci hardware.
Jádro lze před kompilaci konfigurovat několika způsoby. Nejpohodlnější je použít k tomu grafické nástroje.
- make menuconfig využívá knihovny ncurses, běží v textovém režimu s docela pohodlným menu a nápovědou
- make xconfig grafické, využívá QT knihovny
- make gconfig grafické, využívá GTK knihovny
Také lze nakonfigurovat jádro na příkazovém řádku pomoci make oldconfig i ruční editaci souboru.
Kompilace jádra
editovatJádro verze 2.4
editovat$make dep && make bzImage modules modules_install
Jádro verze 2.6
editovat$make && make modules_install
Na Debianu lze přímo zkompilovat balíček takto
$fakeroot make-kpkg --revision=revize.1.0 kernel_image
Nástroje pro kompilaci jádra
editovatmodule-init-tools
editovatinitrd-tools
editovatprocps
editovatInstalace jádra
editovat# mount /boot # cp arch/i386/boot/bzImage /boot/kernel-2.4.25-gentoo # cp System.map /boot/System.map-2.4.25-gentoo # cp .config /boot/config-2.4.25-gentoo
cd ../ dpkg -i kernel-image-2.6.8.1_revize.1.0_i386.deb
Vytvoření ramdisku
editovatRamdisk slouží zejména k načtení modulů jádra, i když ještě není připojen žádný souborový systém.
#cd /boot/ #mkinitrd -o initrd.img-2.6.8.1 2.6.8.1
nejde-li to po dobrém, zpracujte to po zlém..
#mkinitrd -f /boot/initrd-<kernel version>.img /lib/<kernelname>