Cum să compilați Kernel 2.6.36.2 în Ubuntu cu patch-ul de 200 de linii

Mulți dintre voi par să fi avut probleme la instalarea Kernel precompilat cu patch-ul 200 line pe mașinile dvs., acest lucru este de așteptat, deci este întotdeauna mai bine să aveți un Nucleu compilate direct în mașina noastră decât într-o mașină străină, astfel încât să preia corect arhitectura mașinii noastre și configurația generală a hardware-ului.

Din acest motiv, aici îi învăț pe cei mai îndrăzneți cum să-și compileze propriul nucleu (2.6.36.2) în Ubuntu (testat în Ubuntu 10.10) cu patch-ul de 200 de linii inclus în acesta. Amintiți-vă că acest proces trebuie făcut pe propriul risc, necesită un număr mare de pachete pentru descărcare și un timp de compilare destul de lung.

Pentru început, primul lucru pe care trebuie să-l facem este să instalăm dependențele necesare pentru compilarea nucleului executând următoarea linie în terminal:

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

Acum, să executăm următoarea linie în terminal, care este necesară pentru a compila nucleul (din Intrepid)

sudo apt-get build-dep linux

Încheiem acest prim pas cu instalarea altor pachete necesare compilării

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

Pentru a continua cu procesul de instalare a nucleului, trebuie să descărcăm sursele celui mai recent nucleu stabil (2.6.36.2) și patch-ul de mike galbraith și localizați-le în directorul nostru personal.
Să creăm un director pentru compilația kernelului, să-l localizăm și să descărcăm sursele kernelului kernel.org:

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

Acum creăm un nou fișier text și vom copia codul pe care îl vom găsi în postarea lui Mike Galbraith sau îl putem descărca din MediaFire, salvăm și închidem fișierul:

gedit ~ / autogroup.patch

Postul oficial al lui Mike Galbraith
Mike Galbraith Patch de la MediaFire

Acum vom dezarhiva Kernel-ul de pe care tocmai l-am descărcat kernel.org:

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

În acest moment totul ar trebui să meargă bine și fără erori, în caz de eroare este necesar să reporniți procesul.
În continuare vom încărca configurația curentă a nucleului, astfel încât noul nucleu să preia configurația direct din sistemul nostru și să nu avem nicio problemă la compilarea acestuia. Chiar și așa, dacă aveți suficiente cunoștințe, puteți personaliza configurația nucleului pentru a obține un sistem mai adaptat nevoilor dvs., puteți.

Dacă nu știți ce faceți, este mai bine să nu modificați manual configurația nucleului.

Copiem configurația executând următoarea comandă în terminal și ulterior executăm

lsmod

astfel încât toate modulele încărcate în sistemul nostru să fie executate și să ne asigurăm că tot hardware-ul nostru este recunoscut.

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

În acest moment procesul de compilare vă va pune mai multe întrebări despre module, continuați să acceptați toate întrebările care sunt puse apăsând Intrați până la finalizarea procesului de configurare.
Continuăm compilarea nucleului executând următoarea linie în terminal pentru a deschide meniul de configurare a nucleului:

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

Acum putem alege patch-urile pe care dorim să le activăm în Kernel, deoarece suntem interesați de patch-ul de 200 de linii.
Pentru a face acest lucru, navigăm prin meniul de configurare a nucleului care apare, până la

General Setup

și căutăm linia cu nume

Automatic process group scheduling

, îl activăm apăsând bara de spațiu de pe tastatură, ne poziționăm pe opțiune

Exit

folosind tastele săgeată de pe tastatură și apăsați tasta Intrați de la tastatura noastră pentru a ieși din meniu

General Setup

.

Configurare kernel Linux - Configurare generală

Configurarea kernel-ului Linux - Scheludarea automată a grupului de procese

Acum navigăm la meniu

Kernel hacking

și intrăm apăsând tasta Intrați, căutăm opțiunea

Compile the kernel with debug info

și o deselectăm apăsând bara de spațiu de pe tastatură, din nou mergem la opțiune

Exit

și apăsăm Intrați pentru a ieși din meniul principal.

Linux Kernel Configuration - Hacking kernel

Configurare kernel Linux - nu Compilați kernel-ul cu informații de depanare

Am terminat configurația kernel-ului, deci trebuie doar să ne întoarcem la

Exit

din meniul principal și apăsați Intrați pentru a finaliza configurația kernel-ului. Acceptăm când ne întreabă dacă vrem să salvăm modificările făcute la configurația nucleului apăsând Enter pe opțiunea Da.

Acum da, vom compila nucleul executând următoarea linie în terminal:

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

Vă rugăm să rețineți că procesul de compilare poate varia în funcție de hardware-ul dvs.

Aceasta va genera două pachete .deb în directorul kernel-2.6.36.2, pe care le vom folosi pentru a instala noul kernel în Ubuntu, permițându-le să fie urmărite de către Synaptic și ușor de demontat.

Ajungem la partea finală a acestui tutorial, unde vom instala și testa buna funcționare a noului Kernel pe care tocmai l-am instalat.

Pentru a instala cele două pachete .deb pe care tocmai le-am generat, trebuie să executăm următoarea comandă în terminal:

cd .. sudo dpkg -i * .deb

Dacă totul a mers bine, ne-am repornit aparatul și în lista de haleală, selectăm noul Kernel (2.6.36.2) și apăsăm Intrați pentru a porni sistemul.
Odată ce ne-am întors pe desktop, vom verifica dacă patch-ul de 200 de linii este corect aplicat și funcționează executând următoarea linie într-un terminal:

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

Și trebuie să returneze o astfel de linie:

CONFIG_SCHED_AUTOGROUP = y

Dacă da, avem sistemul nostru care rulează cu el. Kernel 2.36.6.2 și „Programarea automată a grupului de procese” activat.
Ubuntu 10.10 Maverick Meerkat cu Kernel 2.6.36.2 și programarea automată a grupului de procese

Putem deja stresa Ubuntu la maximum ...

Acest manual vă vine datorită efortului depus de FRANCOBEP.


Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.

  1.   Horacio el a spus

    Buna David

    intrebarea mea este:

    De obicei folosesc nucleele ubuntu ppa (https://launchpad.net/~kernel-ppa/+archive/ppa)

    Acestea nu mai vin cu patch-ul de 200 de linii inclus?

    Gracias

    1.    David Gomez el a spus

      Vezi, încă verific dacă kernelul Ubuntu PPA are patch-ul inclus, dar acest lucru este ușor de aflat pentru tine, doar execută comanda cat /usr/src/[versión del último kernel]/.config | grep -i AUTOGROUP, unde ați schimba textul din paranteze pentru versiunea celui mai recent nucleu de pe mașină.

      Dacă primiți un mesaj de răspuns de genul acesta CONFIG_SCHED_AUTOGROUP=y, atunci aveți instalat patch-ul.

      Nota: pentru a cunoaște versiunea tuturor nucleelor ​​instalate pe computer, trebuie doar să executați comanda ls /usr/src/ În terminal.

    2.    David Gomez el a spus

      Horacio, nucleul Ubuntu PPA Kernel are în prezent patch-ul V4 de Mike glabraith în cuvintele lui însuși Tim gardner (Dezvoltator Canonical).

      Purtăm V4 din patch-ul auto-cgroup al lui Mike Galbraith începând cu 2.6.37-6.16, dar mă aștept să se schimbe în favoarea vârfului din amonte, pe măsură ce avansăm în fereastra de îmbinare 2.6.38.

      schedul: automat pentru fiecare sesiune grupuri de sarcini V4

      RTG

      -
      Tim gardner

  2.   kanito el a spus

    L-am compilat deja și este instalat, .... cel puțin sistemul nu a murit acum pentru a lucra pentru a vedea cum funcționează

  3.   Irving el a spus

    Excelent tutorial. Am urmat pașii până la scrisoare și totul a funcționat perfect. Am noul meu nucleu.

    Notă: Am făcut o singură modificare care mi s-a părut logică și a fost aici:

    cp -vi / boot / config-`uname -r` .config
    faceți localmodconfig

    Am făcut-o așa:

    cp -vi / boot / config-`uname -r` .config
    lsmod
    faceți localmodconfig

  4.   kanito el a spus

    acum îmi dau seama că am făcut o mică greșeală, așa că o voi reinstala ... și voi adăuga modificarea irving : Mrgreen:

  5.   sergio el a spus

    Rămân la început:
    init: procesul principal necitit (362) încheiat cu starea 5
    Ei bine, pare să funcționeze bine, ce ar putea fi ??? '

  6.   Brian el a spus

    Ei bine, foarte bine manualul, l-au postat și pe taringa, în acest moment se compilează nucleul. Sper că a mers bine. Am schimbat doar tipul de procesor din menuconfig. Sper că ați ales bine optând pentru Intel core / mai nou xeon deoarece am un procesor Intel Core i3, salutări și mulțumiri pentru intrare

  7.   thedemon007 el a spus

    Bună, bine, comanda mi se pare mai bună

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

    deoarece folosește cea mai recentă configurație a nucleului instalată

  8.   Darkwolf22 el a spus

    Bună, ce mai faci? Am doar o ușoară îndoială ... în fișierul kernel vine atât versiunea pe 32 de biți, cât și pe versiunea pe 64 de biți? sau pentru a obține versiunea amd64, trebuie să descarc o versiune diferită? ... Prin deducere, ambele versiuni ar trebui să aibă același drept? ... explicație foarte bună!

    Vă mulţumim!