Luettele Earlyoom 1.4: n uusi versio, apuohjelma, jotta vältetään kaatumiset muistin puutteen vuoksi

aikaisin

vuoden alussa puhumme täällä blogissa Earlyoom-apuohjelmasta, jotka Fedora-kehittäjien keskustelun jälkeen hyväksyttiin käyttämään tätä apuohjelmaa Fedora 32: ssa taustaprosessina, jolla he aikovat parantaa järjestelmän vastausta muistin puutteeseen ja välttää siten kaatumisia.

Nyt useita viikkoja myöhemmin ja Kahdeksan kuukauden kehityksen jälkeen ilmoitettiin Earlyoom 1.4: n uuden version julkaisemisesta.

Niille, joille projekti ei ole tuttu, heidän tulisi tietää se tämä on taustalanka, joka tarkistaa säännöllisesti käytettävissä olevan muistin määrän (MemAvailable, SwapFree) ja yrittää vastata muistin puutteesta jo varhaisessa vaiheessa. Projektikoodi kirjoitetaan C-muodossa ja jaetaan MIT-lisenssin alla.

varhainen huone
Aiheeseen liittyvä artikkeli:
Varhennetaan säike, joka sisällytetään Fedora 32: een, jotta vältetään muistin kaatuminen

Jos käytettävissä olevaa muistia on vähemmän kuin määritetty arvo, earlyoom päättyy väkisin (lähettämällä SIGTERM tai SIGKILL) prosessin prosessi, joka kuluttaa eniten muistia (jolla on korkein arvo / proc / * / oom_score) ilman järjestelmän tilan tyhjentämistä järjestelmän puskureista ja häiritsemästä vaihtotyöohjainta (OOM (muistista loppu) -ohjainta ytimessä, kun tila on alhainen muisti on jo saavuttanut kriittiset arvot, ja yleensä tässä vaiheessa järjestelmä ei enää vastaa käyttäjien toimiin).

Earlyoom tukee pakotettujen prosessi-ilmoitusten lähettämistä työpöydälle (lähettämällä ilmoituksia), ja tarjoaa myös mahdollisuuden määritellä säännöt, joissa säännöllisiä lausekkeita voidaan käyttää määrittelemään niiden prosessien nimet, joiden lopettaminen on suositeltavaa (vaihtoehto "–prefer") tai joita tulisi välttää (- välttää vaihtoehtoa).

Mitä uutta Earlyoom 1.4: ssä?

Tässä uudessa versiossa on korostettu joitain muutoksia, joista Mainitaan, että työskentelen koodin puhdistamisessa ja että myös prosessimääritteiden viivästyneen lataamisen vuoksi suoritettavien prosessien valinnan logiikkaa nopeutetaan 50%.

Sen lisäksi myös pääkäyttöoikeuksien nollaus toteutettiin asematiedostossa "systemd earlyoom.service". Tämä muutos rikkoo kykyä vastaanottaa GUI-ilmoituksia.

GUI-ilmoitusten ottamiseksi uudelleen käyttöön ehdotetaan palauttaa pääkäyttäjän oikeudet poistamalla kommentti rivi «DynamicUser = tosi".

Vaikka juuren poistaminen käytöstä tekee myös mahdottomaksi saada tietoa muistin kulutuksesta asennuksen aikana / proc tilassa hidepid = 1 tai hidepid = 2.

Muista muutoksista jotka erottuvat:

  • Lopetetun prosessin UID näkyy rekisterissä PID: n ja prosessin nimen lisäksi.
  • Lisätty vaaleanharmaa virheenkorjauslokin korostus.
  • Jos mahdollista, käytettiin lohkoille paikallisten muuttujien ilmoitusta.
  • Kokoonpano lisätty PATH_LEN ohittaa koodiin upotetun puskurikoon arvo.
  • Mahdollisuus käynnistää cppcheck jos saatavilla.
  • Suoritustesti "tee penkki" lisätty.
  • Laajennettu testipaketti (tee testi).

Vihdoin jos haluat tietää enemmän siitä Tietoja tästä julkaisusta voit tarkistaa yksityiskohdat seuraava linkki. 

Kuinka asentaa earlyoom Linuxiin?

Niille, jotka ovat kiinnostuneita kokeilemaan tätä apuohjelmaa, he voivat tehdä sen noudattamalla alla olevia ohjeita.

Earlyoom sijaitsee joidenkin jakelujen arkistoissa suosittua Linuxia, joten Debianin, Ubuntun ja mahdollisten johdannaisten tapauksessa näistä asennus voidaan tehdä seuraavalla komennolla:

sudo apt install earlyoom

Kun tämä on tehty, palvelu on nyt otettava käyttöön komennolla:

sudo systemctl enable earlyoom

Ja se alkaa:

sudo systemctl start earlyoom

Jos kyseessä on Fedora ja RHEL 8 EPEL: n kanssa, se voidaan asentaa seuraavalla komennolla:

sudo dnf install earlyoom

Ja palvelu aktivoidaan:

sudo systemctl enable --now earlyoom

lopuksi, Arch Linuxin tai muun tämän johdannaisen tapauksessa, asennus suoritetaan seuraavalla komennolla:

sudo pacman -S earlyoom

Ja palvelu aktivoidaan:

sudo systemctl enable --now earlyoom

Kaikissa muissa Linux-jakeluissa he voivat suorittaa asennuksen kääntämällä apuohjelmakoodin.

Koodin saamiseksi voimme tehdä sen seuraavalla komennolla:

git clone https://github.com/rfjakob/earlyoom.git

cd earlyoom

Jatkamme kokoamista:

make

Ja asennamme (jos sinulla on Systemd):

sudo make install

Tai niille, joilla ei ole Systemd:

sudo make install-initscript

Ja käyttääksesi palvelua, jonka teet sen kanssa:

./earlyoom


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.

  1.   infogon dijo

    Yksityiskohta otsikosta: «muistin menetys»

    1.    David naranjo dijo

      Kiitos havainnosta. Kippis! 🙂

  2.   linuxmanr4 dijo

    Luulen, että Manjaron asennuksessa on yksityiskohta (johdettu Archista). En löytänyt pakettia tavallisista arkistoista.

    Joten asennuksen tulisi tapahtua yaourtin kautta.

    yaourt earlyoom

    Tervehdys!

    1.    David naranjo dijo

      Archissa se on yhteisön arkistossa, joka on otettava käyttöön pacman.conf-tiedostossa. Samoin kuin mainitsette, se on myös AUR: ssa.

      Kiitos havainnosta 😀

  3.   Fran Pavon dijo

    Hei, haluan tämän palvelun käynnistyvän MXLinuxissa joka kerta, kun käynnistän tietokoneen ilman, että minun pitää laittaa komentoa päätelaitteeseen. Kuinka voin tehdä sen?