Annonse
Sammen med installerer Gentoo Gentoo: En Linux-distribusjon der du kompilerer din egen optimaliserte programvareDet store antallet forskjellige måter Linux kan kjøres på er forbløffende, siden det er mange valg å gå rundt på. Mens det er mange distribusjoner som er avhengige av enten .deb ... Les mer , å sammenstille din egen Linux-kjernen er en av de tingene som anses som veldig geeky og teknisk. Det har vi allerede dekket noen få grunner 3 grunner til at du kanskje vil sammenstille din egen kjerne [Linux]Linux-systemer er så latterlig fleksible og konfigurerbare, det er helt vanvittig. En enorm del av grunnen til at Linux er så fleksibel er på grunn av dens modulære struktur. Hver enkelt systemkomponent og program er delt opp ... Les mer hvorfor kan det være lurt å gjøre dette. Her er en kort oversikt over noen viktige konsepter før vi går gjennom trinnene.
Hva er en kjerne?
Kort sagt, det er en viktig del av operativsystemet ditt, om ikke det viktigste. Et operativsystem er ansvarlig for å la programmene dine fungere ved å gi dem tilgang til maskinvaren. Imidlertid er det
kernel Hva er en kjerne i Linux, og hvordan kontrollerer du versjonen din?Linux er et operativsystem, ikke sant? Vel, ikke akkurat! Det er faktisk en kjerne. Men hva er Linux-kjernen? Les mer som faktisk fører alle disse jobbene ut.Linux-kjernen er spesiell ved at den kan skreddersys for å passe til maskinvaren du eier. Kontrast dette med Windows NT-kjernen, som generelt vil være den samme på alle datamaskiner. For å gjøre dette, må kjernen gå gjennom en prosess som kalles kompilering.
For mer info, sjekk ut vår introduksjon til kjerner i Linux Hva er en kjerne i Linux, og hvordan kontrollerer du versjonen din?Linux er et operativsystem, ikke sant? Vel, ikke akkurat! Det er faktisk en kjerne. Men hva er Linux-kjernen? Les mer .
Hva er sammenstilling?
Generelt er programmer skrevet i et menneskelig lesbart format. Dette gjør det lettere for folk å lage programvare. For eksempel er Linux-kjernen hovedsakelig skrevet på et programmeringsspråk som heter C. Datamaskiner kan imidlertid ikke forstå dette. De kjenner bare igjen et komplisert språk som heter maskinkode. For å gjøre det, må tekstlinjene være oversatt Hvordan kompilere og installere TAR GZ & TAR BZ2-filer i Ubuntu Linux Les mer ved hjelp av et spesielt programvare kalt a kompilatoren.
Ulike kompilatorer brukes til å konvertere forskjellige programmeringsspråk. For eksempel, GCC er en kompilator som oversetter C-kode til maskinkode (blant andre). Men det er ikke alt de gjør - kompilatorer kan også optimalisere den oversatte koden for spesifikke maskiner. Sammen med dette kan de også fjerne uønskede funksjoner fra programmer mens de gjør det.
Vanligvis er denne prosessen allerede gjort for mye programvare. I stedet laster folk ned det konverterte binær instruksjoner, som fungerer ut av esken. For eksempel nettleser Bruker du den beste nettleseren for Linux i 2016?Å bruke den "gale" nettleseren kan føre til mye unødvendig hodepine, bortkastet produktivitet og til og med tapte data. Så hvilken nettleser er best for din Linux-datamaskin? La oss finne det ut. Les mer du kjører akkurat nå er allerede samlet. Dette fordi kompilering av noe kan være litt komplisert og tidkrevende. Tenk på det som å oversette en stor bok til et fremmed språk.
Kort sagt betyr å sammenstille kjernen å konvertere koden til noe som faktisk vil kjøres på datamaskinen din.
Innhenting av kjerne kilder
Du kan ikke lage fyr uten drivstoff. På samme måte kan du ikke sette sammen programmer hvis du ikke har koden for det i utgangspunktet. Metoden er generelt den samme for de fleste Linux-operativsystemer med noen få unntak. Mange av dem leverer egne tilpassede kjerne-kilder. Du bør prøve å bruke det hvis du kan. Hvis du for eksempel bruker en Debian-basert operativsystem som Ubuntu, bør du installere kildene ved å bruke disse kommandoene:
sudo apt-get oppdatering. sudo apt-get install linux-source.
Du kan også installere forskjellige versjoner av denne pakken (f.eks. Linux-source-4.8.0) hvis du vil. Du finner de installerte filene i /usr/src/ katalog, så naviger der, og se innholdet:
cd / usr / src / ls.
Du vil se en fil som slutter med Tar.bz2. Dette er kilden du bruker. Pakk den ut med denne kommandoen:
sudo tar xjvf linux-source-4.4.0.tar.bz2.
Sørg for at du selvfølgelig bytter ut filen med riktig navn. Filen vil være ganske stor, så prosessen vil ta litt tid!
Alternativ metode
Hvis du vil, kan du få tak i kildene dine fra offisiell Linux Kernel-nettsted. Jeg anbefaler dette bare hvis Linux-operativsystemet ditt ikke gir dem. Velg versjonen du ønsker og last ned. Hvis du går gjennom denne ruten, bør du laste den ned til en tom mappe. På denne måten, hvis du vil samle flere kjerner i fremtiden, vil du ha en fin mappe å holde dem organisert i.
Etter å ha gjort dette, pakker du ut filen med denne kommandoen:
tar xJvf linux-4.9.11.tar.xz
Forsikre deg om at du bruker filnavnet som samsvarer med versjonen du lastet ned!
Tilpass kjernen
Dette er trinnet der du kan velge hvilke deler av kjernen du vil bli kvitt. For eksempel skipet kjernen med mange forskjellige drivere for en rekke enheter. Hvis du ikke trenger den støtten, kan du kvitte seg med dem gi noen hastighetsfordeler, sammen med en mindre kjerne.
Forutsetninger
Før du fortsetter, må du installere noen programmer som lar deg tilpasse og kompilere det.
På Debian-baserte systemer trenger du build-essential pakke, blant andre:
sudo apt-get install build-essential gcc libncurses5-dev libssl-dev.
De libncurses5-dev pakken vil gjøre det lettere å konfigurere kjernen, så sørg for å installere den. Andre Linux-operativsystemer vil ha et lignende program, men dette kan være under et annet navn. For eksempel hvis du bruker Fedora 5 grunner til å bruke ren Open Source Distro, FedoraFedora er ikke så kjent som Ubuntu, og har et rykte for å være vanskelig å bruke. Men hvis dette er sant, hvorfor fortsetter så mange mennesker å bruke Fedora? Les mer , det heter ncurses.
Hvis den ikke allerede er installert, trenger du også GNU Compiler Collection (GCC). Dette er verktøyet som er ansvarlig for å oversette den rå kildekoden til noe forståelig for datamaskiner. Det vil si å samle.
Etter å ha installert disse programmene, åpner du terminalen slik at du er det innsiden den ekstraherte Linux-kildemappen. Hvis du for eksempel brukte Linux-source metoden, vil du gjøre dette:
cd /usr/src/linux-source-4.4.0
Kernelkonfigurasjonsfil
Før du setter sammen kjernen, må du fortelle GCC hvordan du vil gjøre det. Du gjør dette ved å bruke et kommandolinjeverktøy som heter gjøre. Skriv inn denne kommandoen:
sudo lage localmodconfig.
Dette oppretter en fil som heter .config, som forteller GCC hva de skal kompilere fra kjernekildene. De lage localmodconfig kommando oppdager kjørte komponenter som for øyeblikket kjøres, og markerer dem for sammenstilling. Hvis kjernen er inne i en mappe du eier, du trenger ikke sudo for at det skal fungere.
Du kan komme over noen meldinger som den nedenfor. Bare trykk på Tast inn for å hoppe over dem - de er vanligvis bare nye kjernefunksjoner.
Localmodconfig er imidlertid ikke perfekt! Hvis du for øyeblikket ikke bruker noen deler av datamaskinen din, vil det kanskje ikke oppdage alle tingene den støtter. Som sådan må du aktivere dem manuelt. Alternativt kan du hoppe over dette trinnet helt og bruke den neste kommandoen i stedet. Dette vil sammenstille den nye kjernen med de samme alternativene som den du bruker.
Hvis du foretrekker det, men brukte localmodconifg-kommandoen før, gjør du dette:
sudo gjøre rent.
Dette vil gi deg et rent bygg. Du bør også bruke denne kommandoen hvis du har satt sammen en kjerne med disse kildene før.
Ytterligere konfigurasjon
Inne i kildekildemappen er det en fil som heter .config. Dette er hva GCC vil bruke for å velge hva de skal sammenstille. I stedet for å redigere det manuelt (anbefales ikke), bruker du i stedet noen få terminalverktøy. Dette vil gjøre valg av kompilasjonsalternativer mye enklere.
Etter å ha gjort dette, finjuster det videre:
sudo lage nconfig.
Du vil se en fargerik meny dukke opp. Dette er kjernekonfigurasjonsmenyen. For å navigere rundt bruker du piltastene. Du kan trykke på Ikke sant piltast for å utvide oppføringer med a —> skilt ved siden av dem. Naviger ut av disse undermenyene ved å trykke på venstre piltast.
Du kan veksle mellom menyoppføringer som har <> eller [] skilt ved siden av dem ved å trykke på mellomromstasten. Dette vil bla gjennom de forskjellige menyalternativene. Hvis du ser en * eller M på innsiden, vil den spesifikke kjernekomponenten bli samlet. Den eneste forskjellen mellom dem er at M alternativet blir lastet når det trengs. Dette kan være nyttig hvis du for eksempel samler en driver, som ikke blir brukt ofte.
Hvis du vil vite mer om hva en bestemt bryter gjør, trykk F2 over det. Du ser en nyttig beskrivelse av hva du samler.
Når du er ferdig, trykker du på F9 for å lagre og avslutte.
Kompilering og installering av kjernen
Nå som du har opprettet en tilpasset fabrikasjonsfil, må du gjøre det kompilere Hvordan kompilere og installere TAR GZ & TAR BZ2-filer i Ubuntu Linux Les mer kjernen. Skriv inn denne kommandoen:
sudo make -j $ (nproc - alt)
Du vil trenger ikke sudo hvis du lastet ned kjernekildene fra nettet. Den andre delen av kommandoen hjelper med å øke hastigheten på kjernen til å kompilere tid ved å dra nytte av all din CPU-kjerner Hva er en prosessorkjerne? [MakeUseOf Explains]Hver datamaskin har en prosessor, enten det er en liten effektivitetspro eller et kraftverk med stor ytelse, ellers vil den ikke kunne fungere. Selvfølgelig, prosessoren, også kalt CPU eller Central Processing ... Les mer . Du kan bli kvitt dette, eller endre tallet til noe annet (f.eks. -j2), hvis du vil bruke datamaskinen til andre oppgaver uten for mange hikke. Dette vil imidlertid også gjøre samlingen tregere!
Denne prosessen kan og vil ta veldig lang tid. Jo mindre du valgte å kompilere, jo kortere blir den. Likevel vil du sannsynligvis trenge å være tålmodig.
Etterpå skriver du inn denne kommandoen for å fullføre kompilering av resten av kjernen:
sudo make modules_install.
For å bruke denne kjernen, må du oppgi denne kommandoen:
sudo make install.
Dette vil automatisk kopiere kjernen til din /boot mappe og generere passende filer for at det skal fungere.
Bytte kerner ved å bruke GRUB
Hvis du starter på nytt etter å ha installert den nye kjernen, systemet ditt fungerer kanskje ikke! Dette skyldes vanligvis en feil sammensatt kjerne (det vil si at du ikke støtter datamaskinen din godt nok). I sak, min egen bærbare datamaskin. Bare i tilfelle dette skjer, anbefaler jeg redigering av GRUB Hvordan tilpasse GRUB Boot Loader ved å bruke BURG [Ubuntu] Les mer slik at den kan bytte tilbake til eldre kjerner. For å gjøre dette, bruk denne kommandoen:
sudo nano / etc / default / grub.
Plasser et #-skilt foran GRUB_HIDDEN_TIMEOUT og GRUB_HIDDEN_TIMEOUT_QUIET linjer. Lagre deretter endringene ved å kjøre denne kommandoen:
sudo grub-mkconfig -o /boot/grub/grub.cfg.
Hvis du nå starter datamaskinen på nytt, kan du bytte til en eldre kjerne hvis den nye ikke fungerer. Bare gå til Avanserte alternativer menyelement og velg kjernen du vil starte. Hvis alt fungerer bra, gratulerer! Du bruker kjernen du har satt sammen av deg selv.
Er du interessert i å samle flere kjerner? Andre programmer? Synes du det er verdt?
Bildekreditter: chombosan / Shutterstock
For tiden studerer for et BIT, er Austin Luong en ivrig Linux-entusiast som elsker å proselytize om gratis programvare. Han liker også å skrive sci-fi, men bare i privatlivet på harddisken.