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

ranoom

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 proces, s kojim namjeravaju poboljšati odgovor sistema na nedostatak memorije i na taj način izbjeći padove.

Sada nekoliko sedmica 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.

rana soba
Vezani članak:
Rano dodajte zonu da se uključi u Fedora 32 kako bi se izbjeglo rušenje memorije

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

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

Što je novo u Earlyoom 1.4?

U ovoj novoj verziji su istaknute 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%.

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

Da bi se ponovo omogućilo GUI obavještavanje, predloženo je vraćanje root prava tako što ćete komentirati redak «DynamicUser = true".

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

Od ostalih promjena koji se ističu:

  • UID okončanog postupka odražava se u registru, uz PID i ime procesa.
  • Dodano svijetlosivo isticanje dnevnika otklanjanja pogrešaka.
  • Ako je moguće, korištena je deklaracija varijabli lokalnih za blokove.
  • Konfiguracija dodana PATH_LEN za nadjačavanje vrijednosti veličine ugrađenog međuspremnika u kodu.
  • Mogućnost starta cppcheck ako je dostupno.
  • Dodan je test performansi "make bench".
  • Prošireni paket za testiranje (make test).

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

Kako instalirati earlyoom na Linux?

Oni koji su zainteresirani da mogu isprobati ovaj uslužni program, mogu to učiniti slijedeći upute koje dijelimo u nastavku.

Earlyoom se nalazi unutar spremišta nekih distribucija popularnog Linuxa, 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

I započinje sa:

sudo systemctl start earlyoom

U slucaju da Fedora i RHEL 8 sa 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

Na kraju, u slučaju Arch Linuxa ili bilo kojeg drugog derivata ovoga, instalacija se vrši slijedećom naredbom:

sudo pacman -S earlyoom

A usluga se aktivira sa:

sudo systemctl enable --now earlyoom

Za sve ostale Linux distribucije, oni mogu izvršiti instalaciju sastavljanjem korisničkog 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 kompajliranjem sa:

make

I instaliramo (ako imate Systemd):

sudo make install

Ili za one koji nemaju Systemd:

sudo make install-initscript

A da biste koristili uslugu sa kojom to radite:

./earlyoom


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  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 obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.

  1.   infogon rekao je

    Detalj naslova: «gubitak memorije»

    1.    David naranjo rekao je

      Hvala na posmatranju. Živjeli! 🙂

  2.   linuxmanr4 rekao je

    Mislim da postoji detalj oko instalacije u Manjaro (izvedeno iz Arch). Nisam pronašao paket u normalnim spremištima.

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

    yaourt earlyoom

    Pozdrav!

    1.    David naranjo rekao je

      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 rekao je

    Pozdrav, želim da se ova usluga pokrene u MXLinux-u svaki put kad pokrenem računar, a da ne moram stavljati naredbu u terminal, kako to mogu učiniti?