Hvordan kompilere Kernel 2.6.36.2 i Ubuntu med oppdateringen på 200 linjer

Mange av dere ser ut til å ha hatt problemer med å installere Kjerne forhåndskompilert med patch med 200 linjer på maskinene dine, er dette å forvente, så det er alltid best å ha en Kernel direkte kompilert i maskinen vår enn i en utenlandsk maskin, slik at den tar riktig arkitektur av maskinen vår og den generelle konfigurasjonen av maskinvaren.

Av denne grunn lærer jeg her de dristigste, hvordan man lager sin egen Kernel (2.6.36.2) i Ubuntu (testet i Ubuntu 10.10) med oppdateringen på 200 linjer. Husk at denne prosessen skal gjøres på egen risiko, det krever et stort antall pakker å laste ned og en ganske lang kompileringstid.

For å begynne med er det første vi må gjøre å installere de nødvendige avhengighetene for kjernekompilering ved å utføre følgende linje i terminalen:

sudo apt-get install fakeroot build-essential crash kexec-tools makedumpfile kernel-wedge kernel-package

La oss nå utføre følgende linje i terminalen, som er nødvendig for å kompilere kjernen (fra Intrepid)

sudo apt-get build-dep linux

Vi avslutter dette første trinnet med installasjon av andre pakker som er nødvendige for kompilering

sudo apt-get install libncurses5 libncurses5-dev libelf-dev asciidoc binutils-dev

For å fortsette med installasjonen av kjernen, må vi laste ned kildene til den siste stabile kjernen (2.6.36.2) og oppdateringen Mike galbraith og finn dem i vår personlige katalog.
La oss lage en katalog for kjernekompilering, vi går til den og laster ned kjernekildene fra kernel.org:

mkdir kjerne-2.6.36.2 cd-kjerne-2.6.36.2 wget http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.36.2.tar.gz

Nå oppretter vi en ny tekstfil, og vi vil kopiere koden som vi finner i Mike Galbraiths innlegg, eller vi kan laste den ned fra MediaFire, lagre og lukke filen:

gedit ~ / autogroup.patch

Mike Galbraiths offisielle innlegg
Mike Galbraith Patch fra MediaFire

Nå skal vi pakke ut kjernen som vi nettopp lastet ned fra kernel.org:

tar xzvf linux-2.6.36.2.tar.gz cd linux-2.6.36.2 patch -p1 <~ / autogroup.patch

På dette tidspunktet skal alt gå bra og uten feil. I tilfelle feil er det nødvendig å starte prosessen på nytt.
Deretter vil vi laste den nåværende konfigurasjonen av kjernen, dette slik at den nye kjernen tar konfigurasjonen direkte fra systemet vårt, og vi har ikke noe problem når vi kompilerer den. Allikevel, hvis du har nok kunnskap, kan du tilpasse kjernekonfigurasjonen for å få et system som er mer skreddersydd for dine behov.

Hvis du ikke vet hva du gjør, er det bedre å ikke endre kjernekonfigurasjonen manuelt.

Vi kopierer konfigurasjonen ved å utføre følgende kommando i terminalen og senere utfører vi

lsmod

slik at alle modulene som er lastet inn i systemet vårt blir utført, og vi sørger for at all maskinvaren vår blir gjenkjent.

cp -vi / boot / config-`uname -r` .config gjør localmodconfig

På dette punktet vil kompileringsprosessen stille deg flere spørsmål om modulene. Fortsett å godta alle spørsmålene som blir stilt ved å trykke Enter til installasjonsprosessen er fullført.
Vi fortsetter kjernekompilering ved å utføre følgende linje i terminalen for å åpne kjernekonfigurasjonsmenyen:

cp / boot / config - $ (uname -r) .config && yes "" | lage oldconfig lage menuconfig

Nå kan vi velge oppdateringene vi vil aktivere i kjernen, siden vi er interessert i oppdateringen på 200 linjer.
For å gjøre dette, navigerer vi gjennom kjernekonfigurasjonsmenyen som vises, til

General Setup

og vi ser etter linjen med navn

Automatic process group scheduling

, vi aktiverer det ved å trykke på mellomromstasten på tastaturet vårt, vi posisjonerer oss på alternativet

Exit

ved hjelp av piltastene på tastaturet og trykker på tasten Enter fra tastaturet vårt for å gå ut av menyen

General Setup

.

Linux-kjernekonfigurasjon - Generelt oppsett

Linux-kjernekonfigurasjon - Automatisk prosessgruppeplanlegging

Nå navigerer vi til menyen

Kernel hacking

og vi går inn ved å trykke på tasten Enter, vi ser etter alternativet

Compile the kernel with debug info

og vi fjerner valget av det ved å trykke på mellomromstasten på tastaturet vårt, igjen går vi til alternativet

Exit

og vi trykker Enter for å gå ut av hovedmenyen.

Linux-kjernekonfigurasjon - Kjernehacking

Linux-kjernekonfigurasjon - Nei Kompiler kjernen med feilsøkingsinformasjon

Vi har fullført kjernekonfigurasjonen, så vi trenger bare å gå tilbake til

Exit

i hovedmenyen og trykk på Enter for å fullføre kjernekonfigurasjonen. Vi godtar når den spør oss om vi vil lagre endringene som er gjort i kjernekonfigurasjonen ved å trykke Enter på Ja-alternativet.

Nå ja, vi skal kompilere kjernen ved å utføre følgende linje i terminalen:

fakeroot make-kpkg --initrd --append-to-version = -20101209 kernel-image kernel-headers

Vær oppmerksom på at byggeprosessen kan variere avhengig av maskinvaren din

Dette vil generere to .deb-pakker i kernel-2.6.36.2-katalogen, som vi vil bruke til å installere den nye kjernen i Ubuntu, slik at de kan spores av Synaptic og lett avtakbar.

Vi kommer til den siste delen av denne opplæringen, der vi skal installere og teste at den nye kjernen som vi nettopp har installert, fungerer som den skal.

For å installere de to .deb-pakkene vi nettopp har generert, må vi utføre følgende kommando i terminalen:

cd .. sudo dpkg -i * .deb

Hvis alt gikk bra, startet vi maskinen på nytt og i listen over grub, velger vi den nye kjernen (2.6.36.2) og trykker på Enter for å starte systemet.
Når vi er tilbake på skrivebordet, vil vi bekrefte at oppdateringen på 200 linjer er riktig brukt og fungerer ved å utføre følgende linje i en terminal:

cat /usr/src/linux-headers-2.6.36.2-20101219/.config | grep -i AUTOGROUP

Og det må returnere en linje som denne:

CONFIG_SCHED_AUTOGROUP = y

I så fall har vi systemet vårt kjørt med det. Kernel 2.36.6.2 og "Automatisk planlegging av prosessgrupper" aktivert.
Ubuntu 10.10 Maverick Meerkat med Kernel 2.6.36.2 og automatisk prosessgruppeplanlegging

Vi kan allerede stresse Ubuntu maksimalt ...

Denne håndboken kommer til deg takket være innsatsen fra FRANCOBEP.


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.

  1.   Horacio sa

    Hei David

    spørsmålet mitt er:

    Jeg bruker vanligvis kjernene til ubuntu ppa (https://launchpad.net/~kernel-ppa/+archive/ppa)

    Disse kommer ikke lenger med oppdateringen på 200 linjer inkludert?

    takk

    1.    David Gomez sa

      Se jeg sjekker fortsatt for å se om Ubuntu PPA-kjernen har oppdateringen inkludert, men dette er lett å finne ut selv, bare kjør kommandoen cat /usr/src/[versión del último kernel]/.config | grep -i AUTOGROUP, der du vil endre teksten i parentesene for versjonen av den siste kjernen på maskinen din.

      Hvis du får en svarmelding som denne CONFIG_SCHED_AUTOGROUP=y, så har du oppdateringen installert.

      Merk: for å kjenne versjonen av alle kjernene som er installert på datamaskinen din, trenger du bare å utføre kommandoen ls /usr/src/ I terminalen.

    2.    David Gomez sa

      Horacio, Ubuntu PPA-kjernen har for øyeblikket V4-oppdateringen av Mike glabraith med ordene til seg selv Tim gardner (Kanonisk utvikler).

      Vi bærer V4 av Mike Galbraiths auto-gruppeplaster siden 2.6.37-6.16, men jeg forventer at det vil endre seg til fordel for oppstrøms tips når vi går videre inn i flettevinduet 2.6.38.

      sched: automatisert per øktoppgave V4

      rtg

      -
      Tim gardner

  2.   kanito sa

    Vel, jeg har allerede samlet den, og den er installert,…. i det minste døde ikke systemet nå for å se hvordan det fungerer

  3.   Irving sa

    Utmerket opplæring. Jeg fulgte trinnene til punkt og prikke, og alt fungerte perfekt. Jeg har den nye kjernen min.

    Merk: Jeg gjorde bare en endring som hørtes logisk ut for meg, og den var her:

    cp -vi / boot / config-`uname -r` .config
    lage localmodconfig

    Jeg gjorde det slik:

    cp -vi / boot / config-`uname -r` .config
    lsmod
    lage localmodconfig

  4.   kanito sa

    nå innser jeg at jeg gjorde en liten feil, så jeg vil installere den på nytt ... og legge til irving-modifikasjonen : Mrgreen:

  5.   sergio sa

    Jeg blir i begynnelsen a:
    init: ulest hovedprosess (362) avsluttet med status 5
    Vel, det ser ut til å fungere bra, hva kan det være ??? '

  6.   brian sa

    Vel veldig bra manualen, de la den også ut på taringa, for øyeblikket kompilerer den kjernen. Jeg håper det har gått bra. Jeg endrer bare prosessortype i menukonfigurasjonen. Jeg håper du har valgt godt ved å velge Intel-kjerne / nyere xeon siden jeg har en Intel Core i3-prosessor, hilsen og takk for innspillet

  7.   demonen007 sa

    Hei, vel, kommandoen virker bedre for meg

    cp / boot / config-`uname –kernel-release` ./.config

    siden den bruker den siste installerte kjernekonfigurasjonen

  8.   Darkwolf22 sa

    Hei, hvordan har du det? Jeg er bare i tvil ... i kjernefilen kommer både 32-biters og 64-biters versjoner? eller for å få amd64-versjonen, trenger jeg å laste ned en annen? ... Ved fradrag skal begge versjonene ha samme rett? ... veldig god forklaring!

    Takk!