Tanken om å samle dine egne kjerner opplever frykt i hjernene til nye Linux-brukere. Det høres skremmende ut, og bygger den mest avgjørende delen av systemet fra bunnen av. Sannheten er, men å bygge Linux-kjernen er veldig enkelt.

Å bygge Linux-kjerne krever ikke programmering. Noen av de beste programmørene i verden har allerede skrevet hele koden. Du må bare velge de funksjonene du vil ha og sette alt sammen.

Få avhengighetene

Før du berører en kjerne, trenger du de riktige verktøyene for å bygge den. Bruk Apt til å laste dem ned fra Ubuntus repositorier.

 sudo apt install install install git build-essensiell kjernepakke fakeroot libncurses5-dev libssl-dev ccache 

Å få kjernekilden

Nå kan du ta tak i kilden du vil bygge. Alle kjernene er tilgjengelige fra de offisielle Linux-depotene. Du kan se på de siste stabile utgivelsene i deres git-repository. På tidspunktet for denne artikkelen er det siste 4.11. Den grenen er oppført som linux-4.11.y, og det er den som vil bli klonet med kommandoen nedenfor.

 cd ~ mkdir kernelbuild cd kernelbuild git klone -b linux-4.11.y git: //git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git 

Det vil ta litt tid å klone kjernen, så vær tålmodig.

Sette opp for din bygg

Start oppsettet ditt ved å bytte kataloger til den nylig klonede katalogen. Deretter kopierer du konfigurasjonen av den eksisterende kjernen til den.

 cd linux-stable cp / boot / config-`uname -r` .config 

Nå må du tilpasse den gamle konfigurasjonen til den nye kjernen.

 ja '' | gjør oldconfig 

Normalt vil skriptet spørre deg hva du skal gjøre med hver ny funksjon. På denne måten aksepterer standardinnstillingene. Hvis du vil bli spurt, bruk bare å make oldconfig .

Konfigurere kjernen

Du kan forlate konfigurasjonen slik den er, og du vil nok være i orden. Det er ikke noe poeng i å bygge en tilpasset kjerne hvis du ikke skal tilpasse den, skjønt.

For å tilpasse konfigurasjonen, åpne make menuconfig .

En blå meny åpnes med en liste over kategorier. Disse kategoriene inneholder funksjoner du kan velge for å bygge inn i kjernen din.

For eksempel, hvis du virkelig vil bygge støtte for BTRFS-filsystemet direkte inn i kjernen og aktivere andre funksjoner, går du til "Filsystemer ->." Deretter blar du ned til der du ser "Btrfs filsystemstøtte." Velg alternativet du vil ha, og klikk på mellomromstasten. Mellomromstasten sykler mellom "M, " "*, " og tom. "M" betyr at funksjonen vil bli bygget som en modul som vil bli lastet om nødvendig når Ubuntu starter. "*" Betyr at funksjonen skal bygges inn i kjernen og alltid lastes inn. Skriptet inneholder ikke tomme alternativer i sluttproduktet.

Når du er ferdig med å sette opp ting, rengjør du katalogen.

 gjør rent 

Nå er kjernen din klar til å bygge.

Bygg kjernepakker

Det er en metode som brukes av Ubuntu til å bygge sine kjerner, men det tvinger deg til å bruke skript skrevet for eldre versjoner. Noen ganger er det bra; andre bryter det forferdelig. Så det er vanligvis bedre å bare bruke den mer generiske Linux-metoden med GNU make.

 gjør -j `getconf _NPROCESSORS_ONLN` deb-pkg LOCALVERSION = -custom 

Alt den linjen gjør er å kompilere kjernen i .deb-pakker ved å bruke mengden CPU-kjerner på systemet ditt pluss en. Den legger også til på "egendefinert" til slutten av pakkeversjonen for å skille din tilpassede kjerne fra andre.

Merk : Det kan ta time (r) å kompilere en kjerne. Vær tålmodig.

Installere kjernen

Du finner din nye kjernepakke en katalog opp. De vil være lett identifiserbare av deres versionsnummer. Du kan bruke dpkg til å installere dem.

 cd .. sudo dpkg -i linux-firmware-image-4.11.1-custom_4.11.1-custom-1_amd64.deb sudo dpkg -i linux-libc-dev_4.11.1-tilpasset-1_amd64.deb sudo dpkg -i linux-headers -4.11.1-custom_4.11.1-custom-1_amd64.deb sudo dpkg -i linux-image-4.11.1-tilpasset-dbg_4.11.1-tilpasset-1_amd64.deb sudo dpkg -i linux-image-4.11.1-custom_4 .11.1-custom-1_amd64.deb 

Når installasjonen er ferdig, start datamaskinen på nytt. Ubuntu starter automatisk opp i den nye kjernen din. Du kan dobbeltsjekke at det gjorde ved å runing uname -r i en terminal når den starter. Hvis du ser versjonen din, gratulerer! Du kjører din egen tilpassede kjernen.