Så varför skulle man vilja ändra i kärnan? Det finns många olika anledningar men de vanligaste är att du antingen vill ha ett snabbare system genom att ta bort exempelvis tjänster ur kärnan som du inte använder.

Det är vanligt att göra på servrar och liknande som klarar sig bra med bara de viktigaste tjänsterna. En annan anledning att modifiera kärnan kan vara att man behöver stöd för hårdvara som inte finns i kärnan som standard.

Först ett varningens ord, att modifiera kärnan är något som kan förstöra ditt system. Bra att veta är att denna guide främst är utformad för Debianbaserade system.

Innan du börjar behöver du ta reda på vilken version av kärnan du kör för tillfället. Det gör du enklast genom att öppna en terminal och skriva in

uname -r

2.6.17-10-generic

Nu behöver du installera källkoden för din kärna och en del andra paket som behövs när du kompilerar kärnan senare. Fortsättningsvis ska du ersätta versionnumret på kärnan i exemplen som vi använder här med det versionsnummer du fick av kommandot ovan.

sudo apt-get install linux-source-2.6.17 kernel-package libncurses5-dev fakeroot

För att slippa skriva in sudo innan varje kommando kan du nu öppna en root-terminal:

sudo /bin/bash

Gå in i katalogen där källkoden ligger och packa upp den komprimerade filen med dessa kommandon:

cd /usr/src

bunzip2 linux-source-2.6.17.tar.bz2

tar xvf linux-source-2.6.17.tar

ln -s linux-source-2.6.17 linux

Kopiera din nuvarande konfigurationsfil:

cp /boot/config-`uname -r` /usr/src/linux/.config

Nu är det dags att öppna verktyget som hjälper dig genom processen att konfigurera kärnan.

cd /usr/src/linux

make menuconfig

Nu ska du ladda konfigurationsfilen du skapade innan. Gå ner till Load an Alternate Configuration och tryck på enter. Filen . config bör redan vara förvald så tryck bara på enter igen.

Du kan nu bläddra igenom de olika alternativen och välja vad du vill inkludera i din kärna. Är det något alternativ du behöver hjälp om markerar du det och trycker på ”?” på tangentbordet.

Det finns en del saker inkluderade i kärnan som vanliga personer knappast är särskilt intresserade av. Ett exempel på detta här Amateur Radio Support under menyn Networking Support. Om du inte har ett behov av att ansluta din linuxdator till en amatörradio kan du välja bort det här från din kärna.

Gör det genom att markera alternativet och trycka på N på tangentbordet. På motsvarande sätt väljer du Y på tangentbordet om det är något du vill lägga till.

På vissa ställen ser du att det står M bredvid alternativet, det betyder att det inte kommer att bli en del av kärnan utan istället byggas som en modul.

När du är klar trycker du på Exit och väljer att spara konfigurationen.

Innan vi kompilerar kärnan ska vi städa upp lite med följande kommando.

make-kpkg clean

Nu är det dags att faktiskt kompilera kärnan. Här kan du passa på att gå på en promenad eller liknande för det här kommer ta väldigt lång tid.

Använd kommandot:

fakeroot make-kpkg –initrd –append-to-version=-custom kernel_image kernel_headers

Två stycken .deb filer kommer nu att skapas i /usr/src. Installera dem med följande kommandon och ersätt filnamnen med namnen på dina filer:

dpkg -i linux-image-2.6.17.14-ubuntu1-custom_2.6.17.14-ubuntu1-custom-10.00.Custom_i386.deb

dpkg -i linux-headers-2.6.17.14-ubuntu1-custom_2.6.17.14-ubuntu1-custom-10.00.Custom_i386.deb

När du installerat de här två paketen är din nya kärna installerad och kommer att starta som standard när du startar om datorn. Om det är något fel på din kärna är det nu det kommer att märkas. Skulle det vara det, trycker du bara på Esc vid GRUB-prompten och väljer den gamla kärnan istället.