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.
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
Yksityiskohta otsikosta: «muistin menetys»
Kiitos havainnosta. Kippis! 🙂
Luulen, että Manjaron asennuksessa on yksityiskohta (johdettu Archista). En löytänyt pakettia tavallisista arkistoista.
Joten asennuksen tulisi tapahtua yaourtin kautta.
yaourt earlyoom
Tervehdys!
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 😀
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?