Skelbimas

Kartu su diegiant „Gentoo“ „Gentoo“: „Linux“ paskirstymas, kur jūs kuriate savo optimizuotą programinę įrangąDaugybė skirtingų „Linux“ paleidimo būdų yra stulbinantys, nes yra daugybė pasirinkimo galimybių. Nors yra daugybė paskirstymų, kurie priklauso nuo .deb ... Skaityti daugiau , savo „Linux“ branduolio sudarymas yra vienas iš tų dalykų, kurie laikomi labai geidulingais ir techniniais. Mes jau apėmė keletą priežasčių 3 priežastys, kodėl jūs galite norėti sudaryti savo branduolį [Linux]„Linux“ sistemos yra tokios juokingos, lanksčios ir konfigūruojamos, tai visiškai beprotiška. Didelė dalis to, kodėl „Linux“ yra tokia lanksti, yra dėl modulinės struktūros. Kiekvienas sistemos komponentas ir programa yra padalinami ... Skaityti daugiau kodėl galbūt norėsite tai padaryti. Prieš mes apžvelgsime žingsnius, čia yra keletas svarbių sąvokų apžvalgos.

Kas yra branduolys?

Trumpai tariant, tai yra gyvybiškai svarbi jūsų operacinės sistemos dalis, jei ne pati svarbiausia. Operacinė sistema yra atsakinga už jūsų programų veikimą, suteikdama joms prieigą prie jūsų aparatinės įrangos. Tačiau tai yra

instagram viewer
branduolys Kas yra branduolys „Linux“ ir kaip galite patikrinti savo versiją?„Linux“ yra operacinė sistema, tiesa? Na, ne visai! Tai iš tikrųjų branduolys. Bet kas yra „Linux“ branduolys? Skaityti daugiau kuris iš tikrųjų vykdo visus šiuos darbus.

„Linux“ branduolys yra ypatingas tuo, kad jis gali būti pritaikytas, kad atitiktų jūsų turimą aparatūrą. Priešingai nei „Windows NT“ branduolys, kuris visuose kompiuteriuose paprastai bus vienodas. Norėdami tai padaryti, branduolys turi praeiti procesą, vadinamą kompiliavimu.

Norėdami gauti daugiau informacijos, apsilankykite mūsų supažindinimas su branduoliais Linux Kas yra branduolys „Linux“ ir kaip galite patikrinti savo versiją?„Linux“ yra operacinė sistema, tiesa? Na, ne visai! Tai iš tikrųjų branduolys. Bet kas yra „Linux“ branduolys? Skaityti daugiau .

Kas yra kompiliacija?

Paprastai programos yra parašytos žmonėms suprantama forma. Tai žmonėms palengvina programinės įrangos kūrimą. Pavyzdžiui, „Linux“ branduolys yra parašytas daugiausia programavimo kalba, vadinama C. Tačiau kompiuteriai negali to suprasti. Jie atpažįsta tik sudėtingą kalbą, vadinamą mašinos kodas. Norėdami tai padaryti, teksto eilutės turi būti tokios išverstas Kaip kompiliuoti ir įdiegti TAR GZ ir TAR BZ2 failus „Ubuntu Linux“ Skaityti daugiau naudojant specialią programinės įrangos dalį, vadinamą a sudarytojas.

Skirtingi kompiliatoriai naudojami konvertuoti skirtingas programavimo kalbas. Pavyzdžiui, GCC yra kompiliatorius, kuris C kodą paverčia mašinos kodu (be kitų). Bet tai dar ne viskas, ką gali padaryti ir kompiliatoriai optimizuoti konkrečių mašinų išverstas kodas. Be to, jie taip pat gali pašalinti nepageidaujamas funkcijas iš programų.

Paprastai šis procesas jau atliekamas daugeliui programinės įrangos. Vietoj to, žmonės atsisiųsti konvertuotus dvejetainis instrukcijos, kurios neveikia. Pavyzdžiui, interneto naršyklė Ar naudojate geriausią „Linux“ interneto naršyklę 2016 m.?Naudojant „neteisingą“ naršyklę gali atsirasti daug nereikalingų galvos skausmų, išeikvoti produktyvumą ir netgi prarasti duomenis. Taigi kuri naršyklė yra geriausia jūsų Linux kompiuteriui? Išsiaiškinkime. Skaityti daugiau jūs dabar naudojate, jau yra sudarytas. Taip yra todėl, kad kažko sudarymas gali būti šiek tiek sudėtingas ir atima daug laiko. Galvok apie tai, kaip išversti didelę knygą į užsienio kalbą.

Trumpai tariant, sudaryti branduolį reiškia konvertuoti jo kodą į tai, kas iš tikrųjų veiks jūsų kompiuteryje.

Branduolio šaltinių gavimas

Jūs negalite užkurti ugnies be degalų. Taip pat negalite sudaryti programų, jei visų pirma neturite jos kodo. Paprastai metodas yra tas pats daugumai „Linux“ operacinių sistemų, išskyrus keletą išimčių. Daugelis jų tiekia savo pasirinktinius branduolio šaltinius. Turėtumėte pabandyti tuo naudotis, jei galite. Pvz., Jei naudojate „Debian“ pagrįsta operacinė sistema pvz., „Ubuntu“, turėtumėte įdiegti šaltinius naudodami šias komandas:

„sudo apt-get“ atnaujinimas. sudo apt-get įdiegti linux-source. 
Kaip sudaryti savo Linux branduolio Debian Linux šaltinį

Taip pat galite įdiegti skirtingas šio paketo versijas (pvz. linux-source-4.8.0) Jeigu tau patinka. Įdiegtus failus rasite /usr/src/ katalogą, todėl eikite ten ir peržiūrėkite turinį:

CD / usr / src / ls.

Pamatysite failą, kurio pabaiga .tar.bz2. Tai yra šaltinis, kurį naudosite. Ištraukite jį šia komanda:

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

Žinoma, būtinai pakeiskite failą teisingu vardu. Failas bus gana didelis, todėl procesas užtruks šiek tiek laiko!

Alternatyvus metodas

Jei norite, galite įsigyti savo šaltinių iš oficiali „Linux Kernel“ svetainė. Aš rekomenduoju tai tik tuo atveju, jei jūsų „Linux“ operacinė sistema jų nepateikia. Pasirinkite norimą versiją ir atsisiųskite. Jei einate šiuo maršrutu, turėtumėte jį atsisiųsti į tuščią aplanką. Tokiu būdu, jei ateityje norite kompiliuoti daugiau branduolių, turėsite gražų aplanką, kuriame galėsite juos tvarkyti.

Kaip sudaryti savo „Linux“ branduolio vanilės branduolio šaltinius

Tai padarę, ištraukite failą šia komanda:

tar xJvf linux-4.9.11.tar.xz
Kaip sudaryti savo Linux branduolio vanilės Linux šaltinį

Įsitikinkite, kad naudojate failo vardą, kuris atitinka atsisiųstą versiją!

Tinkinkite branduolį

Tai yra žingsnis, kuriame galite pasirinkti, kokių branduolio dalių norite atsikratyti. Pavyzdžiui, branduolys siunčiamas su daugybe skirtingų tvarkyklių, skirtų įvairiems įrenginiams. Jei jums nereikia šios palaikymo, atsikratydami jų, kartu su mažesniu branduoliu, galite gauti tam tikrų greičio pranašumų.

Būtinos sąlygos

Prieš pradėdami, turite įdiegti keletą programų, kurios leis jums jas tinkinti ir kompiliuoti.

Debian'o pagrindu sukurtose sistemose jums reikia statyti-būtina pakuotė, be kita ko:

„sudo apt-get“ įdiegti būtiną „gcc libncurses5-dev libssl-dev“. 

libncurses5-dev paketas palengvins branduolio konfigūravimą, todėl būtinai jį įdiekite. Kitos „Linux“ operacinės sistemos turės panašią programą, tačiau tai gali būti pavadinta kitu pavadinimu. Pvz., Jei naudojate Fedora 5 priežastys naudoti gryną atvirojo kodo diskoteką, „Fedora“„Fedora“ nėra tokia gerai žinoma kaip „Ubuntu“ ir turi gerą vardą kaip sunkiai naudojama. Bet jei tai tiesa, kodėl tiek daug žmonių ir toliau naudoja „Fedora“? Skaityti daugiau , tai vadinama ncurses.

Jei jis dar neįdiegtas, jums taip pat reikės GNU kompiliatorių kolekcija (GCC). Tai įrankis, atsakingas už neapdoroto šaltinio kodo pavertimą kompiuteriams suprantama. T. y., Sudaryti.

Įdiegę šias programas, atidarykite terminalą, kad būtumėte viduje išgautas „Linux“ šaltinio aplankas. Pvz., Jei naudojote linux-source metodą, darytumėte taip:

cd /usr/src/linux-source-4.4.0

Branduolio konfigūracijos failas

Prieš komponuodami branduolį, turite pasakyti GCC, kaip norite tai padaryti. Tai galite padaryti naudodami komandų eilutės įrankį, vadinamą padaryti. Įveskite šią komandą:

sudo padaryti localmodconfig. 

Tai sukuria failą, vadinamą .config, kuriame GCC nurodoma, ką kompiliuoti iš branduolio šaltinių. padaryti vietinę modonfigą komanda aptinka šiuo metu vykdomus branduolio komponentus ir pažymi juos kompiliavimui. Jei branduolys yra aplanke, kuris jums priklauso, jūs nereiks sudo kad tai veiktų.

Galite susidurti su kai kuriais pranešimais, tokiais kaip žemiau. Tiesiog paspauskite Įveskite klavišas juos praleisti - dažniausiai tai tik naujos branduolio savybės.

Kaip sudaryti savo „Linux“ branduolį, padarykite „Localmodconfig“ naują

Tačiau vietinis modifonas nėra tobulas! Jei šiuo metu nenaudojate kai kurių kompiuterio dalių, jis gali neaptikti visų palaikomų dalykų. Todėl juos turite įjungti rankiniu būdu. Arba galite visiškai praleisti šį veiksmą ir vietoj jo naudoti kitą komandą. Tai sudarys naująjį branduolį su tomis pačiomis parinktimis, kurias naudojate šiuo metu.

Jei jums labiau patinka, bet anksčiau naudojote „localmodconifg“ komandą, atlikite tai:

sudo pasidaryk švarus. 

Tai suteiks jums švarų statinį. Šią komandą taip pat turėtumėte naudoti, jei anksčiau sudarėte branduolį iš šių šaltinių.

Tolesnė konfigūracija

Branduolio šaltinio aplanke yra failas, vadinamas .config. Štai ką GCC naudos, norėdamas pasirinkti, ką kompiliuoti. Vietoj to, kad redaguotumėte rankiniu būdu (nerekomenduojama), naudokite keletą terminalo įrankių. Tai palengvins kompiliavimo parinkčių pasirinkimą.

Tai padarę, gerai sureguliuokite toliau:

sudo padaryti nconfig. 

Pamatysite spalvingą meniu. Tai yra branduolio konfigūracijos meniu. Norėdami naršyti, naudokite rodyklių klavišus. Galite paspausti teisingai rodyklės klavišu išplėskite įrašus a —> pasirašyk šalia jų. Išeikite iš šių submeniu paspausdami liko rodyklės klavišą.

Kaip kompiliuoti savo Linux branduolį

Galite perjungti meniu įrašus, kuriuose yra <> arba [] pasirašykite šalia jų paspausdami tarpo klavišą. Tai pateks į skirtingas meniu parinktis. Jei matote * arba M viduje bus sukompiliuotas tas konkretus branduolio komponentas. Vienintelis skirtumas tarp jų yra tas, kad M parinktis bus įkelta, kai jos prireiks. Tai gali būti naudinga, jei kuriate, pavyzdžiui, tvarkyklę, kuri nebus dažnai naudojama.

Jei norite sužinoti daugiau apie tai, ką daro konkretus jungiklis, paspauskite F2 per ją. Pamatysite naudingą aprašą, ką kaupiate.

Kaip kompiliuoti savo „Linux“ branduolį Padarykite „Nconfig F2“

Baigę paspauskite mygtuką F9 mygtuką išsaugoti ir išeiti.

Kaip sudaryti savo „Linux“ branduolį - „Nconfig“ išsaugokite

Branduolio sudarymas ir įdiegimas

Dabar, kai sukūrėte pasirinktinio failo failą, turėsite tai padaryti sudaryti Kaip kompiliuoti ir įdiegti TAR GZ ir TAR BZ2 failus „Ubuntu Linux“ Skaityti daugiau branduolys. Įveskite šią komandą:

sudo make -j $ („nproc“ - viskas)

Tu darysi nereikia sudo jei atsisiuntėte branduolio šaltinius iš interneto. Antroji komandos dalis padeda pagreitinti branduolio sudarymo laiką pasinaudojant visomis jūsų galimybėmis CPU branduoliai Kas yra procesoriaus branduolys? [„MakeUseOf“ paaiškina]Kiekviename kompiuteryje yra procesorius, nesvarbu, ar tai mažo efektyvumo specialistas, ar didelio našumo galios stiprintuvas, kitaip jis negalėtų veikti. Žinoma, procesorius, dar vadinamas CPU arba „Central Processing“ ... Skaityti daugiau . Galite to atsikratyti arba pakeisti numerį į ką nors kitą (pvz. -j2), jei norite naudoti kompiuterį kitoms užduotims atlikti be per daug žagsėjimo. Tačiau tai taip pat sulėtins kompiliavimą!

Šis procesas gali užtrukti ir užtruks labai ilgai. Kuo mažiau pasirinkote kompiliuoti, tuo trumpesnis bus. Nepaisant to, greičiausiai turėsite būti kantrūs.

Po to įveskite šią komandą, kad baigtumėte kompiliuoti likusį branduolį:

sudo make modules_install. 

Norėdami iš tikrųjų naudoti šį branduolį, turėsite įvesti šią komandą:

sudo make install. 

Tai automatiškai nukopijuos branduolį į jūsų /boot aplanką ir sugeneruokite tinkamus failus, kad jis veiktų.

Branduolių perjungimas naudojant GRUB

Jei paleisite iš naujo įdiegę naują branduolį, jūsų sistema gali neveikti! Paprastai taip yra dėl netinkamai sukompiliuoto branduolio (tai yra, nepakankamai palaikant kompiuterį). Pavyzdžiui, mano nešiojamas kompiuteris. Tik tuo atveju, jei tai atsitiks, aš rekomenduoju redaguoti GRUB Kaip tinkinti GRUB įkrovos krautuvą naudojant BURG [Ubuntu] Skaityti daugiau kad galėtų grįžti prie senesnių branduolių. Norėdami tai padaryti, naudokite šią komandą:

sudo nano / etc / default / grub. 
Kaip sudaryti savo „Linux“ branduolį „Ubuntu GRUB“

Padėkite # ženklą priešais GRUB_HIDDEN_TIMEOUT ir GRUB_HIDDEN_TIMEOUT_QUIET linijos. Vėliau išsaugokite šiuos pakeitimus paleisdami šią komandą:

sudo grub-mkconfig -o /boot/grub/grub.cfg. 
Kaip sudaryti savo Linux branduolio GRUB meniu

Jei iš naujo paleisite kompiuterį, galėsite perjungti į senesnį branduolį, jei naujasis neveikia. Tiesiog eikite į Išplėstiniai nustatymai meniu elementą ir pasirinkite branduolį, kurį norite paleisti. Jei viskas pavyks gerai, sveikinu! Naudosite patys sudarytą branduolį.

Ar norėtumėte sudaryti daugiau branduolių? Kitos programos? Ar jums tai verta?

Kreditai vaizdams: chombosanas / „Shutterstock“

Šiuo metu studijuoja BIT, Austinas Luongas yra aktyvus „Linux“ entuziastas, mėgstantis populiarinti laisvą programinę įrangą. Jam taip pat patinka rašyti sci-fi, bet tik privatumo tema kietajame diske.