Handleidingen > Kernel compileren algemeen
Deze howto helpt je bij het compileren van een nieuwe kernel voor Linux. Het is bedoeld voor mensen die voor een van de eerste keren een kernel compileren.

Een kernel compileren onder Fedora Core gaat iets anders dan hieronder beschreven. Zie daarvoor deze pagina: http://www.fedora-linux.nl/wiki/index.php/Eigen_kernel_compileren.php

Het kan zijn dat je een nieuwe kernel wilt compileren. Enkele redenen om een nieuwe kernel te compileren:

Je kunt het afstemmen op jou computer, zodat je overbodige zooi niet mee compileert in je kernel. De kernel wordt daardoor kleiner en sneller.

Je hardware wordt niet ondersteund door de standaard kernel van je distributie.

Je wilt de laatste versie van de kernel hebben

Genoeg gezeur, laten we beginnen.

1)Download de laatste kernel van kernel.org
2)Pak de kernel uit in /usr/src:

tar -jxvf linux-2.6.7.tar.bz2

3)Ga naar de map die met de kernel die zojuist gemaakt is:

cd linux-2.6.7/

4)Nu moet je kiezen wat je wilt meecompileren in de kernel. Dat kan door 1 van de volgende commando’s in te typen:

make config
make menuconfig
make xconfig
make gconfig

 


Het configureren van de kernel kan door middel van menu’s. Hier een screenshot van make xconfig. Klik hier voor screenshot van menuconfig.

Als je voor make config kiest, moet je elke vraag met Yes of No beantwoorden. Het is niet aan te raden. Make menuconfig kan je het beste kiezen als je geen X hebt, je kunt dan in de console je kernel configureren. Make xconfig vind ik het meest overzichtelijk. In plaats van make xconfig kan je ook make gconfig doen. xconfig heeft qtnodi, gconfig heeft GTK nodi.

Wanneer je de keuze’s voor mee te compilen drivers/modules hebt gemaakt moet je een bootimage maken, om je distributie op te kunnen starten.

Een bootimage maken doe je met die commando:

make dep && make clean bzImage modules modules_install

Dit kan even duren. Als het zonder fouten eindigt kan je je nieuwe bootimage verplaatsen naar de boot-map op je harde schijf:

cp /usr/src/linux/arch/i386/boot/bzImage /boot

Let op! Overschrijf niet je oude bootimage, maar geef de nieuwe een andere naam. Als de nieuwe kernel toch niet blijkt te werken kan je je computer nog opstarten met je oude bootimage!
Als je geen intel-386 architectuur hebt zal je boot-image zich natuurlijk in een andere map bevinden.

De kernel is nu klaar, je moet alleen nog kunnen opstarten met de nieuwe kernel. Dat kan je mogelijk maken door een paar regels toe te voegen aan /etc/lilo.conf /boot/grub/grub.conf

Als je Grub als bootloader gebruikt moet je hetvolgende aan /boot/grub/grub.conf toevoegen:

title
root (hd0,2)
kernel /bzImage_2.6.7 ro root=/dev/hda7

Natuurlijk moet je wel een paar dingen aanpassen aan je eigen partitie’s en versie’s, alles wat roodgedrukt is.

Je kunt nu met je eigen kernel gaan werken, als alles goed is, en je niets vergeten bent.

Voor Lilo moet je hetvolgende toevoegen aan /etc/lilo.conf:

image=/boot/bzImage_2.6.7
label-Linux-2.6.7
root=/dev/hda7

Sla nu het bestand op en voer het commando ‘lilo’ uit, om de wijzigingen door te voeren.
Natuurlijk ook hier de waarden aanpassen aan je eigen systeem!

Dat was het!

De eerste keer zal je waarschijnlijk wel iets over het hoofd zien, en opnieuw moeten beginnen, omdat je geen ondersteuning voor bepaalde hardware hebt in de nieuwe kernel. Dat gebeurt iedereen!

In plaats een nieuwe kernel compileren kan je ook de laatste versie van je distributie gebruiken. Meestal biedt je distributie de laatste kernel-versie aan in een handig formaat, zodat het eenvoudig op jou distributie te installeren is.

Category: