Første trin er få installeret kildekoden til kernen. I Debian skal du finde pakken \"kernel-source-x.x.x\", hvor x.x.x er den version af kernen du ønsker at installere. Der er en del forskelliger versioner af kernen med. Det anbefales at vælge en version >=2.2.19.
Pakken kan enten findes og vælges i dselect, eller installeres direkte med apt-get:
apt-get install kernel-source-2.2.19
Hvis du ønsker en ikke officiel kerne, eller ønsker den allerseneste nye udviklingskerne, er det ikke sikkert der er lavet en kernel-source pakke til denne. Der er intet i vejen med blot at hente kildekoden på kernel.org, og bruge denne i stedet.
For at kompilere kernen skal vi også bruge nogen forskellige værktøjer, derfor:
apt-get install kernellab Program vi skal bruge til at lave kernepakken med.
apt-get install libncurses5-dev Udviklingsbibliotek som vi skal bruge til at lave menukonfigureringen til kernen med.
Til at hjælpe os igennem kompileringen af kernen bruger vi et lille program der hedder kernellab. Programmet er egentlig lavet til at hjælpe systemadministratoren med at administrere et større antal kernelkonfigurringer for mange maskiner, men programmet virker også fint selv om du kun er en kerne til en enkel workstation man skal bruge.
Kernellab ligger i /var/state/kernellab, hvor de forskellige arbejdsbiblioteker kernellab bruger også ligger.
Kernellab forventer at linux source koden ligger i /var/state/kernellab/kernels/linux-x.x.x.tar.gz (eller .bz2), og at dennne fil ved udpakning ligger kildekoden i linux/.
Har du hentet en standard kerne fra kernel.org kan denne blot kopieres ind i dette biblitek, og du kan springe det næste over.
Har du hentet kernel-source fra debian, skal der lige lidt manøvre til først. Kernellab forventer at linux source koden ligger i /var/state/kernellab/kernels/linux-x.x.x.tar.gz (eller .bz2), og at dennne fil ved udpakning ligger kildekoden i linux/. Kernel-source pakkerne hedder dels ikke linux-x.x.x.tar.gx, dels pakker de ikke ud i et biblitek der hedder linux... derfor:
Først skal vi ind i /usr/src hvor din kerne gerne skulle ligge nu, start med at pakke den ud:
tar -Ixvf kernel-source-2.2.19.tar.bz2
Omdøb bibliteket du har fået udpakket:
mv kernel-source-2.2.19 linux
pak det hele ind igen i en fil med rigtig navngivning:
Det der kommer efter kernellab er navnet på den kernel pakke du er ved at lave. Det kan værer en god ide at navngive den efter maskinmodel/navn, men man kan også vælge at navngive efter hostnavn/funktion, f. eks webserver, firewall eller lignende. Der er intet i vejen for at du kan lave kernen til webserveren og firewallen på den egen maskine, det er faktik tilrådeligt, i stedet for at installere et komplet udviklingsmiljø på sine servere, blot for at lave en kerne.
Vi har \"-c\" med, for at komme ind i konfigureringen af kernen. Det er ikke altid du ønsker det, hvis du blot ønsker at opgradere kernen fra. f. eks 2.2.18 til 2.2.19, kan du blot lægge den nye kerne ind i \"kernels\", og så kører kernellab CompaqML350 (hvis du engang før har laven konfigurationen for den maskine).
Nu går der lige lidt tid med at pakker kernen ud og så skulle du gerne stå inden i et skærmbilled.
Her vælger du dit netkort.
Når du er færdig trykker du blot på exit, og gemmer konfigureringen.
Nu starter selve kompileringen automatisk. Det kan tage temmeligt lang tid.
Når du er færdig skulle der i /var/state/kernellab/images/CompaqML350/ gerne ligge en kernelpakke parat til installering, derfor:
Dette er en bootdisk med den nye kerne på, da vi tidliger har lavet en bootdisk, behøver vi ikke have en til, du kan derfor blot trykke enter:
Derpå (hvis du bruger lilo): Install a boot block using the existing /etc/lilo.conf? [Yes]
Det vil som regel værer en god ide, så svar blot Yes her igen.
Nu er den nye kerne installeret, incl moduler mm, og du kan nu teste den:
reboot
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.