Reklaam

Koos installides Gentoo Gentoo: Linuxi distributsioon, kus kompileerite oma optimeeritud tarkvaraLinuxi käitamiseks mõeldud eri viiside arv on jahmatav, kuna ümberkäimiseks on palju valikuid. Ehkki on palju jaotusi, mis tuginevad kas ... Loe rohkem , oma Linuxi tuuma koostamine on üks neist asjadest, mida peetakse väga geeks ja tehniliseks. Oleme juba teinud hõlmas mõnda põhjust 3 põhjust, miks võiksite oma tuuma [Linux] kompileeridaLinuxi süsteemid on nii naeruväärselt paindlikud ja konfigureeritavad, see on täiesti hull. Suur osa sellest, miks Linux on nii paindlik, tuleneb selle modulaarsest ülesehitusest. Iga süsteemi komponent ja programm on jagatud ... Loe rohkem miks võiksite seda teha. Enne kui juhendame teid sammudest läbi, on siin lühike ülevaade mõnedest olulistest mõistetest.

Mis on tuum?

Lühidalt - see on teie opsüsteemi oluline osa, kui mitte kõige olulisem. Teie programmide laskmise eest vastutab opsüsteem, võimaldades neil juurdepääsu teie riistvarale. Kuid see on see

instagram viewer
kernel Mis on kernel Linuxis ja kuidas oma versiooni kontrollida?Linux on opsüsteem, eks? Noh, mitte täpselt! See on tegelikult tuum. Mis on Linuxi kernel? Loe rohkem mis tegelikult kõik need tööd ära viib.

Linuxi kernel on eriline selle poolest, et seda saab kohandada vastavalt teie enda riistvarale. Sellele vastandub Windows NT kernel, mis on üldiselt igas arvutis sama. Selleks peab kernel läbima protsessi, mida nimetatakse kompileerimiseks.

Lisateavet leiate siit meie tutvustus tuumadega Linuxis Mis on kernel Linuxis ja kuidas oma versiooni kontrollida?Linux on opsüsteem, eks? Noh, mitte täpselt! See on tegelikult tuum. Mis on Linuxi kernel? Loe rohkem .

Mis on kompileerimine?

Üldiselt kirjutatakse programmid inimesele loetavas vormingus. See hõlbustab tarkvara loomist inimestel. Näiteks kirjutatakse Linuxi kernel peamiselt programmeerimiskeeles, mida nimetatakse C. Kuid arvutid ei saa sellest aru. Nad tunnevad ära ainult keerulise keele, mida nimetatakse masina kood. Selleks peavad teksti read olema tõlgitud TAR GZ & TAR BZ2 failide kompileerimine ja installimine Ubuntu Linuxis Loe rohkem kasutades spetsiaalset tarkvara, mida nimetatakse a koostaja.

Erinevate programmeerimiskeelte teisendamiseks kasutatakse erinevaid kompilaatoreid. Näiteks, GCC on kompilaator, mis teisendab C-koodi masinkoodiks (muu hulgas). Kuid see pole veel kõik, mida nad teevad - ka koostajad saavad optimeerida konkreetsete masinate tõlgitud kood. Koos sellega saavad nad ka seda tehes programmidest eemaldada soovimatud funktsioonid.

Tavaliselt tehakse seda protsessi juba paljude tarkvarade puhul. Selle asemel laadivad inimesed teisendatud alla binaarne juhised, mis töötavad karbist välja. Näiteks veebibrauseris Kas kasutate 2016. aasta parimat Linuxi veebibrauserit?"Vale" brauseri kasutamine võib põhjustada palju tarbetut peavalu, raisata tootlikkust ja isegi kaotada andmeid. Milline brauser on teie Linuxi arvutile parim? Uurime välja. Loe rohkem praegu jooksed on juba kompileeritud. Selle põhjuseks on asjaolu, et millegi koostamine võib olla natuke keeruline ja aeganõudev. Mõelge sellele nagu suure raamatu tõlkimine võõrkeelde.

Lühidalt öeldes tähendab kerneli kompileerimine selle koodi muundamist millekski, mis teie arvutis tegelikult töötab.

Tuumaallikate hankimine

Ilma kütuseta lõket teha ei saa. Samuti ei saa te programme koostada, kui teil pole selle jaoks kõigepealt koodi. Meetod on enamiku Linuxi opsüsteemide puhul üldiselt sama, mõne erandiga. Paljud neist pakuvad omaenda kerneli allikaid. Peaksite proovima ja kasutama, kui saate. Näiteks kui kasutate a Debianil põhinev opsüsteem nagu Ubuntu, peaksite allikad installima järgmiste käskude abil:

sudo apt-get update. sudo apt-get install linux-source. 
Kuidas kompileerida oma Linuxi tuuma Debiani Linuxi allikat

Samuti saate installida selle paketi erinevaid versioone (nt linux-source-4.8.0) kui sulle meeldib. Installitud failid leiate kaustast /usr/src/ kataloogis, nii et liikuge sinna ja vaadake sisu:

CD / usr / src / ls.

Näete faili, mille lõpp on .tar.bz2. See on allikas, mida kasutate. Ekstraheerige see selle käsuga:

sudo tar xjvf linux-source-4.4.0.tar.bz2. 

Muidugi asendage fail muidugi õige nimega. Fail on üsna suur, nii et protsess võtab natuke aega!

Alternatiivne meetod

Kui soovite, võite oma allikaid hankida veebisaidilt ametlik Linuxi kerneli veebisait. Soovitan seda ainult siis, kui teie Linuxi opsüsteem neid ei paku. Valige soovitud versioon ja laadige alla. Selle marsruudi läbimisel peaksite selle alla laadima tühja kausta. Sel viisil, kui soovite tulevikus rohkem tuuma kompileerida, on teil tore kaust, kus neid korrastada.

Kuidas koostada oma Linuxi kerneli vanilli tuumaallikaid

Pärast seda ekstraheerige fail selle käsuga:

tar xJvf linux-4.9.11.tar.xz
Kuidas koostada oma Linuxi tuuma Vanilla Linuxi allikas

Veenduge, et kasutate failinime, mis vastab allalaaditud versioonile!

Kohandage tuuma

See on samm, kus saate valida, millistest kerneli osadest soovite lahti saada. Näiteks kernel tarnib paljude seadmete jaoks palju erinevaid draivereid. Kui te ei vaja seda tuge, võib neist lahti saada väiksema kerneli abil mõned kiiruseelised.

Eeltingimused

Enne jätkamist peate installima mõned programmid, mis võimaldavad teil seda kohandada ja kompileerida.

Debianipõhistes süsteemides vajate ehitama-hädavajalik pakett, muu hulgas:

sudo apt-get install ehita hädavajalik gcc libncurses5-dev libssl-dev. 

libncurses5-dev pakett kerneli seadistamise lihtsamaks, nii et installige see kindlasti. Teistel Linuxi opsüsteemidel on sarnane programm, kuid see võib olla teise nime all. Näiteks kui kasutate Fedora Puhta avatud lähtekoodiga distro kasutamise viis põhjust, FedoraFedora pole nii tuntud kui Ubuntu ja tal on maine, et seda on raske kasutada. Aga kui see on tõsi, siis miks jätkavad nii paljud inimesed Fedora kasutamist? Loe rohkem , seda nimetatakse ncurses.

Kui seda pole veel installitud, vajate ka seda GNU koostajakogu (GCC). See on tööriist, mis vastutab töötlemata lähtekoodi tõlkimise eest arvutitele arusaadavaks. See tähendab, et koostamine.

Pärast nende programmide installimist avage oma terminal nii, et olete sees ekstraheeritud Linuxi lähtekausta. Näiteks kui kasutasite linux-allikas meetodil, teeksite seda järgmiselt:

cd /usr/src/linux-source-4.4.0

Kerneli konfiguratsioonifail

Enne kerneli kompileerimist peate GCC-le ütlema, kuidas soovite seda teha. Selleks kasutate käsurida, mida nimetatakse tegema. Sisestage see käsk:

sudo teha localmodconfig. 

See loob faili nimega .config, mis ütleb GCC-le, mida tuumaallikatest kompileerida. tee kohalikmodconfig käsk tuvastab praegu töötavad kerneli komponendid ja märgib need kompileerimiseks. Kui kernel asub teile kuuluvas kaustas, siis teie ei vaja sudo et see toimiks.

Võite kohata mõnda teadet, näiteks allpool. Vajutage lihtsalt nuppu Sisenema võti nende vahelejätmiseks - need on tavaliselt lihtsalt uued kerneli funktsioonid.

Enda Linuxi tuuma koostamine, kuidas muuta Localmodconfig uueks

Localmodconfig pole aga täiuslik! Kui te ei kasuta praegu mõnda arvuti osa, ei pruugi see tuvastada kõiki toetatavaid asju. Seetõttu peate need käsitsi lubama. Teise võimalusena võite selle sammu täielikult vahele jätta ja kasutada selle asemel järgmist käsku. See kompileerib uue kerneli samade valikutega, mida praegu kasutate.

Kui eelistate seda, kuid kasutasite enne käsku localmodconifg, tehke järgmist:

sudo tee puhtaks. 

See annab teile puhta ehitise. Seda käsku peaksite kasutama ka siis, kui olete nende allikatega tuuma varem kompileerinud.

Edasine seadistamine

Kerneli lähtekaustas on fail nimega .config. GCC kasutab seda kompileerimise valimisel. Selle käsitsi redigeerimise asemel (pole soovitatav) kasutate selle asemel mõnda terminali tööriista. See muudab kompileerimisvalikute valimise palju lihtsamaks.

Pärast seda saate seda veelgi täpsustada:

sudo tee nconfig. 

Näete hüpikakent värvikas menüü. See on kerneli seadistusmenüü. Ümber liikumiseks kasutage nooleklahve. Võite vajutada nuppu eks nooleklahv kirjete laiendamiseks a-ga —> märk nende kõrval. Nendest alammenüüdest liikuge, vajutades vasakule nooleklahv.

Enda Linuxi tuuma kompileerimine Tee Nconfig

Saate lülitada menüükirjeid, millel on <> või [] allkirjastage nende kõrval tühikuklahvi vajutades. See liigub läbi erinevate menüüvalikute. Kui näete a * või M sees kompileeritakse see konkreetne kerneli komponent. Ainus erinevus nende vahel on see, et M suvand laaditakse, kui seda vaja on. See võib olla kasulik, kui koostate näiteks draiverit, mida ei kasutata sageli.

Kui soovite rohkem teada saada, mida konkreetne lüliti teeb, vajutage F2 üle sellest. Näete kasulikku kirjeldust selle kohta, mida koostate.

Enda Linuxi tuuma koostamine Nconfig F2

Kui olete kõik valmis, vajutage nuppu F9 nuppu salvestamiseks ja väljumiseks.

Enda Linuxi tuuma kompileerimine Nconfig-i salvestamiseks

Tuuma kompileerimine ja installimine

Nüüd, kui olete loonud kohandatud failifaili, peate seda tegema kompileerima TAR GZ & TAR BZ2 failide kompileerimine ja installimine Ubuntu Linuxis Loe rohkem tuuma. Sisestage see käsk:

sudo make -j $ (nproc - kõik)

Sa saad ei vaja sudo kui laadisite kerneli allikad veebist alla. Käsu teine ​​osa aitab kiirendada kerneli kompileerimise aega, kasutades ära kõik teie käsud Protsessori südamikud Mis on protsessori tuum? [MakeUseOf selgitab]Igal arvutil on protsessor, olgu see siis väike efektiivsuse suurendaja või suure jõudlusega jõuseade või muidu poleks see võimeline töötama. Muidugi, protsessor, mida nimetatakse ka protsessoriks või keskseks töötlemiseks ... Loe rohkem . Võite sellest lahti saada või muuta numbri millekski muuks (nt -j2), kui soovite kasutada arvutit muudeks toiminguteks ilma liiga palju luksumist. Kuid see muudab ka kompileerimise aeglasemaks!

See protsess võib võtta ja võtab väga kaua aega. Mida vähem valisite kompileerimise, seda lühem see on. Isegi siis peate olema kannatlik.

Pärast seda tippige see käsk ülejäänud kerneli kompileerimise lõpuleviimiseks:

sudo make modules_install. 

Selle kerneli tegelikuks kasutamiseks peate sisestama järgmise käsu:

sudo teha install. 

See kopeerib kerneli automaatselt teie kausta /boot kausta ja genereerige selle toimimiseks sobivad failid.

Tuumade vahetamine GRUB-i abil

Kui pärast uue kerneli installimist taaskäivitate, teie süsteem ei pruugi töötada! Selle põhjuseks on tavaliselt valesti kompileeritud kernel (see tähendab, et teie arvuti ei toeta piisavalt hästi). Näitena minu enda sülearvuti. Igaks juhuks soovitan redigeerimine GRUB GRUB-i alglaaduri kohandamine funktsiooni BURG abil [Ubuntu] Loe rohkem nii et see saab tagasi vanematele tuumadele ümber lülituda. Selleks kasutage seda käsku:

sudo nano / etc / default / grub. 
Kuidas koostada oma Linuxi tuuma Ubuntu GRUB

Asetage # ees märk GRUB_HIDDEN_TIMEOUT ja GRUB_HIDDEN_TIMEOUT_QUIET read. Pärast seda salvestage need muudatused, käivitades selle käsu:

sudo grub-mkconfig -o /boot/grub/grub.cfg. 
Kuidas omaenda kerneli GRUB-i menüüd kompileerida

Nüüd, kui taaskäivitate arvuti, saate üle minna vanemale kernelile, kui teie uus ei tööta. Minge lihtsalt lehele Täpsemad valikud ja valige kernel, mille soovite käivitada. Kui kõik õnnestub, õnnitleme teid! Kasutate kernelit, mille olete ise koostanud.

Kas olete huvitatud rohkem tuumade kompileerimisest? Muud programmid? Kas leiate, et see on väärt?

Piltide autorid: chombosan / Shutterstock

Praegu õpib BIT, Austin Luong on innukas Linuxi entusiast, kes armastab tutvustada vaba tarkvara. Talle meeldib ka ulme kirjutamine, kuid ainult oma kõvaketta draivi privaatsuses.