Navedite novu verziju earlyoom 1.4, uslužnog programa za izbjegavanje padova zbog nedostatka memorije

rani zum

Početkom godine ovdje na blogu razgovaramo o uslužnom programu Earlyoom, koja je nakon rasprave Fedorinih programera prihvaćena za upotrebu ovog uslužnog programa u Fedori 32 kao pozadinski postupak, kojim namjeravaju poboljšati odgovor sustava na nedostatak memorije i na taj način izbjeći padove.

Sada nekoliko tjedana kasnije i Nakon osam mjeseci razvoja, najavljeno je izlazak nove verzije Earlyoom 1.4.

Oni koji nisu upoznati s projektom, to bi trebali znati ovo je pozadinska nit koja povremeno provjerava količinu dostupne memorije (MemAvailable, SwapFree) i pokušava odgovoriti na stanje bez memorije u ranoj fazi. Kôd projekta napisan je na C jeziku i distribuiran pod MIT licencom.

Ranoom
Povezani članak:
Rano uvećajte nit koju ćete uključiti u Fedoru 32 kako biste izbjegli padove memorije

Ako je količina dostupne memorije manja od navedene vrijednosti, earlyoom će završiti silom (slanjem SIGTERM-a ili SIGKILL-a) proces procesa koji troši najviše memorije (koji ima najvišu vrijednost / proc / * / oom_score), bez sistemskog međuspremnika za brisanje stanja sustava i ometanja swap rada (OOM (bez memorije) pokretački program u kernelu se aktivira u niskom stanju memorija je već dosegla kritične vrijednosti i općenito u ovom trenutku sustav više ne reagira na radnje korisnika).

Earlyoom podržava slanje obavijesti o prisilnom procesu na radnu površinu (slanjem obavijesti), a također pruža mogućnost definiranja pravila gdje se regularni izrazi mogu koristiti za određivanje imena procesa čiji je završetak preferiran (opcija "–prefer") ili zaustavljanja koja treba izbjegavati (–izbjegavati opcija).

Što je novo u Earlyoom 1.4?

U ovoj novoj verziji istaknute su neke promjene Spominje se da radim na čišćenju koda i to također zbog odgođenog učitavanja procesnih atributa, logika odabira procesa za dovršavanje ubrzava se za 50%.

Osim toga također provedeno je resetiranje root privilegija u datoteci pogona "systemd ranoom.servis". Ova promjena prekida mogućnost primanja GUI obavijesti.

Da biste ponovo omogućili GUI obavijesti, predlaže se vraćanje root prava tako što ćete komentirati redak «DynamicUser = true”.

Iako onemogućavanje root-a također onemogućuje dobivanje informacija o potrošnji memorije prilikom montiranja / proc u modu hidepid = 1 ili hidepid = 2.

Od ostalih promjena koji se ističu:

  • UID završenog procesa odražava se u registru, uz PID i naziv postupka.
  • Dodano svijetlosivo isticanje dnevnika otklanjanja pogrešaka.
  • Ako je moguće, korištena je deklaracija varijabli lokalnih za blokove.
  • Konfiguracija dodana PUT_LEN kako bi nadjačala vrijednost veličine ugrađenog međuspremnika u kodu.
  • Mogućnost pokretanja cppcheck ako je dostupno.
  • Dodan je test izvedbe "make bench".
  • Prošireni testni paket (napraviti test).

Konačno ako želite znati više o tome O ovom izdanju pojedinosti možete provjeriti u sljedeći link. 

Kako instalirati earlyoom na Linux?

Oni koji su zainteresirani za mogućnost isprobavanja ovog uslužnog programa, mogu to učiniti slijedeći upute koje dijelimo u nastavku.

Earlyoom se nalazi unutar spremišta nekih distribucija popularnog Linuxa, pa, u slučaju Debiana, Ubuntu-a i bilo kojih derivata od toga se instalacija može izvršiti pomoću sljedeće naredbe:

sudo apt install earlyoom

Nakon što se to učini, usluga sada mora biti omogućena naredbom:

sudo systemctl enable earlyoom

A započinje sa:

sudo systemctl start earlyoom

U slučaju Fedora i RHEL 8 s EPEL-om, može se instalirati pomoću sljedeće naredbe:

sudo dnf install earlyoom

A usluga se aktivira sa:

sudo systemctl enable --now earlyoom

Konačno, u slučaju Arch Linuxa ili bilo kojeg drugog derivata ovoga, instalacija se vrši pomoću sljedeće naredbe:

sudo pacman -S earlyoom

A usluga se aktivira sa:

sudo systemctl enable --now earlyoom

Za sve ostale distribucije Linuxa, mogu izvršiti instalaciju sastavljanjem komunalnog koda.

Da bismo dobili kod, možemo to učiniti pomoću sljedeće naredbe:

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

cd earlyoom

Nastavljamo sa sastavljanjem:

make

I instaliramo (ako imate Systemd):

sudo make install

Ili za one koji nemaju Systemd:

sudo make install-initscript

A da biste koristili uslugu s kojom to radite:

./earlyoom


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.

  1.   infogon dijo

    Pojedinost naslova: «gubitak pamćenja»

    1.    David naranjo dijo

      Hvala na promatranju. Živjeli! 🙂

  2.   linuxmanr4 dijo

    Mislim da postoji detalj oko instalacije na Manjaru (izvedeno iz Arch). Nisam pronašao paket u uobičajenim spremištima.

    Dakle, instalacija bi trebala biti putem vašeg računa.

    yaourt earlyoom

    Pozdrav!

    1.    David naranjo dijo

      U Archu je unutar spremišta zajednice koje mora biti omogućeno u pacman.conf. Na isti način kao što spominjete, to je i u AUR.

      Hvala na zapažanju 😀

  3.   Fran Pavon dijo

    Pozdrav, želim da se ova usluga pokrene u MXLinuxu svaki put kad uključim računalo bez potrebe za stavljanjem naredbe u terminal, kako to mogu učiniti?