Ytimen kääntäminen: Kuinka se tehdään Debian-perusdistrossa?

Ytimen kääntäminen: Kuinka se tehdään Debian-perusdistrossa?

Ytimen kääntäminen: Kuinka se tehdään Debian-perusdistrossa?

Meidän edellinen merkintänimeltään "Linux-ydin: ytimen perusteet" käsittelemme joitain olennaiset teoreettiset perusteet päälle Käyttöjärjestelmän ytimet, yleensä; ja Linux-ydin, erityistä.

Ja kuten olemme ilmaisseet siinä, tässä, saamme sanotun loppuun olennaiset teoreettiset perusteet muiden kanssa tärkeitä käsitteitä ja tietoja, lisäksi näyttää nykyisen menettelyn saavuttamiseksi "käännä Linux-ydin" tyhjästä, a Debian GNU/Linux 11 (Bullseye) -jakelu tai sen perusteella.

Linux-ydin: Ytimen perusteet

Linux-ydin: Ytimen perusteet

Ja ennen kuin alat lukea tätä viestiä aiheesta "käännä ydin" Linux Yleensä jätämme joitakin linkkejä edelliset aiheeseen liittyvät viestit myöhempää lukemista varten:

Linux-ydin: Kaikki ilmaisen käyttöjärjestelmän ytimestä
Aiheeseen liittyvä artikkeli:
Linux-ydin: Ytimen perusteet
alttius
Aiheeseen liittyvä artikkeli:
Tässä kuussa useita Linux-ytimen haavoittuvuuksia on jo paljastettu

Ytimen kääntäminen: käännösopastus

Ytimen kääntäminen: käännösopastus

Mitä ohjelman kääntäminen tarkoittaa?

Periaatteessa tämä tekninen prosessi (kutsutaan myös pakkaamiseksi) koostuu saavuttamisesta ohjelman lähdekoodin muuntaminen tai osa ohjelmistoa, sen lähteestä (ohjelmointikieli, jota käytetään kirjoittamaan itsensä) a luettava tuote (korkean tason ohjelmointikieli tulkittavissa) tietokoneella.

Eli saavuttaa muuntaa lähdekoodistasi kunnes siitä tulee a suoritettava ja toimiva ohjelma, käyttämällä a prosessori (kääntäjäohjelmisto) käytettävän ohjelmointikielen muuntamiseen binääri- ja assembler-tyyppiseksi koodiksi.

Ja kun on kyse kehittää ja koota minkäänlaista paketti, sovellus ja ohjelma, perus ja natiivi, kuten ytimiä päälle Debian GNU / Linux, seuraavat paketit ovat sopivia ja tarpeellisia tavaran saamiseksi kehitystukipohja, ja nämä ovat:

apt install autoconf automake autotools-dev build-essential dh-make debhelper debmake devscripts dpkg fakeroot file gfortran git gnupg fp-compiler lintian patch pbuilder perl python quilt xutils-dev
Optimoi GNU/Linux: Debian-pakettisi sovellusten kehittämiseksi
Aiheeseen liittyvä artikkeli:
Optimoi GNU/Linux: Debian-pakettisi sovellusten kehittämiseksi

Edut ja haitat Linux-ytimen kääntämisessä tyhjästä

Kun muokkaamme ja määritämme alusta alkaen tietyn ytimen tietylle tietokoneelle, voimme saada seuraavat edut:

  • Saavuta parempi suorituskyky ja pienempi suorittimen kulutus.
  • Hanki parempi optimointi ja pienempi RAM-muistin kulutus.
  • Paranna käyttöjärjestelmän mukautuvuutta ja yhteensopivuutta.
  • Lisää käyttöjärjestelmän tehokkuutta ja tuottavuutta.

Päinvastoin, voimme tuottaa seuraavat haitat:

  • Toiminta- ja saatavuushäiriöt halutuista resursseista ja palveluista käytetyllä tietokoneella huonojen kokoonpanojen ja käännöksen aikana aiheutuneiden ongelmien vuoksi.
  • Sen luominen on aluksi jatkuvaa, pitkää ja ikävää työtäja sitten myöhemmin, jotta se päivitetään manuaalisesti. Joka voi vaihdella minuuteista tunteihin käytetystä laitteistosta riippuen.
  • Pitkät tunnit opiskelua ja kokeita, koska tarvitaan korkeatasoista tietoa sekä ytimen konfigurointivaihtoehdoista että tietokoneesta (lopullinen laitteisto), jossa se suoritetaan.

Käytettävissä olevat ydinkategoriat

Käytettävissä olevat ydinkategoriat

että kääntää ydin, ensimmäinen asia, joka meidän on tiedettävä, on mikä ydin valita. Tämän tekemiseksi meidän on mentävä osoitteeseen virallisella verkkosivustolla ytimistäja valitse yksi olemassa olevista luokista. Mitkä ovat seuraavat:

  • Pääkehityslinja (päälinja): Tämä luokka sisältää kehitysvaiheessa olevat ytimet, joten ne sisältävät uusia ominaisuuksia ja toimintoja, jotka on testattava ennen kuin ne voidaan laittaa vakaaseen versioon. Näitä ylläpitää ja julkaisee suoraan Linus Torvalds, ja ne julkaistaan ​​keskimäärin 2-3 kuukauden välein.
  • Vakaa: Tämä luokka sisältää ne ytimet, jotka pitkän kehitysprosessin testien läpäisemisen jälkeen muuttuvat vakaiksi, joten niihin voidaan tehdä korjauksia vain nimetyn virallisen ylläpitäjän kautta. Lisäksi heillä on vain muutama virheenkorjausjulkaisu, kunnes seuraava Mainline on saatavilla.
  • Pitkäaikainen: Tähän luokkaan kuuluvat ne ytimet, jotka pitkän kehitysprosessin testien läpäisemisen jälkeen muuttuvat vakaiksi, mutta joita tuetaan virheenkorjauksilla ja ylläpidolla erittäin pitkään (vuosia). Syynä on tärkeitä virheenkorjauksia, joista voi tulla hyvin yleisiä.

Kuinka kääntää ydin GNU/Linux Debian Bullseye Distrossa?

Kuinka kääntää ydin GNU/Linux Debian Bullseye Distrossa?

Valittuaan yhden tietty ytimen versio, virallisella verkkosivustolla ja jo tietää (kopioi) sinun latauspolku kautta tarball-painiketta samasta, jää vain suorittaa seuraava menettely, jonka näytämme esimerkkinä ottamalla Vakaa Linux-ytimen versio 6.0.8:

Vaihe 1

cd /usr/src
wget -c https://mirrors.edge.kernel.org/pub/linux/kernel/v6.x/linux-6.0.8.tar.xz
sudo unxz linux-6.0.8.tar.xz
sudo tar xvf linux-6.0.8.tar
sudo ln -s linux-6.0.8 linux
cd /usr/src/linux
sudo make clean && make mrproper
sudo cp /boot/config-`uname -r`* .config
make menuconfig

Tämän viimeisen komennon suorittaminen käynnistää "Ytimen määritysvalikko", missä voit konfiguroida (muokata) parametreja mieltymyksesi tai tarpeesi. Lisäksi tässä on tärkeää muistaa, että se on välttämätöntä valitse 64-bittinen ydin tai poista valintariippuen siitä, mitä halutaan tai vaaditaan. Ja myös, kun olet tehnyt kaikki tehdyt muutokset, sinun on paina Tallenna-painiketta ja sitten Poistu-painike.

Ytimen asetusvalikko

Vaihe 2

Tässä vaiheessa niitä on 2 mahdollista polkua ottaa:

Vain ytimen asennus
sudo make
sudo make modules_install
sudo make install
sudo update-grub; sudo update-grub2; sudo update-initramfs -u
sudo apt clean; sudo apt autoclean; sudo apt autoremove; sudo apt remove; sudo apt purge

Ytimen asennus ja .deb-tiedostojen luominen

Ytimen asennus ja .deb-tiedostojen luominen

Tämän vaiheen suorittamiseksi on tärkeää kutsua paketin asennus kernel-paketti. Siksi menettely on seuraava ja alkaa seuraavasti:

sudo wget -c http://ftp.us.debian.org/debian/pool/main/k/kernel-package/kernel-package_13.018+nmu1~bpo9+1_all.deb
sudo apt install ./kernel-package_13.018+nmu1~bpo9+1_all.deb
fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers
cd /usr/src
sudo dpkg -i *.deb

Jos saat kokoamisprosessin aikana a ytimen varmenteisiin liittyvä virhe, se on edelleen vaihtoehto, jotta voit suorittaa seuraavat komentojärjestys korjaamaan sen automaattisesti:

sed -i '/CONFIG_SYSTEM_TRUSTED_KEYS/s/^/#/g' .config

Kyllä, kaikki päättyi hyvin, jäljellä on vain käynnistää tietokoneemme uudelleen ja testata kuinka käyttöjärjestelmämme nousee uuden ytimen kanssa. Kuten ennen ja jälkeen, seuraavissa kuvakaappauksissa:

Ennen ytimen asennusta

Ennen asennusta

Ytimen asennuksen jälkeen

Asennuksen jälkeen

Aiheeseen liittyvä artikkeli:
Fast Kernel Headers, joukko korjaustiedostoja, jotka nopeuttavat ytimen kääntämistä 50-80 %
Aiheeseen liittyvä artikkeli:
Kerla: uusi ydin, joka on kirjoitettu Rustilla ja yhteensopiva Linux ABI:n kanssa

Yhteenveto: Banneripostaus 2021

Yhteenveto

Lyhyesti sanottuna toivomme, että tämä opetusohjelma on erittäin hyödyllinen molemmille Edistyneet käyttäjät kuin Distrojen tai Respinsien kehittäjät. jotka yleensä vaativat "käännä ydin" erityisesti tällä hetkellä asennetussa GNU/Linux-käyttöjärjestelmässä tai sellaisessa, joka on luotu tyhjästä, jotta siihen voidaan sisällyttää parempi suorituskyky ja optimointi tietyissä laitteistoissa. Useimmiten tavoitteena on saavuttaa a pienempi suorittimen ja RAM-muistin kulutus.

Tosin jos joku tietää toinen hyödyllinen tapa suorittaa mainittu menettely tai tietää yhtään ehdotus, suositus tai korjaus mitä täällä tarjotaan, olet tervetullut tekemään niin kommenttien kautta. Ja kyllä, pidit tästä julkaisusta, älä lopeta sen kommentoimista ja sen jakamista muiden kanssa. Muista myös käydä meillä «kotisivu» tutkia lisää uutisia sekä liittyä viralliseen kanavallemme Sähke lähettäjältä DesdeLinux, Länsi ryhmä saadaksesi lisätietoja tämän päivän aiheesta.


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastuussa tiedoista: Miguel Ángel Gatón
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.