Lëscht vun der neier Versioun vum earlyoom 1.4, e Utility fir Crashen ze vermeiden wéinst Mangel u Gedächtnis

earlyoom

Um Ufank vum Joer mir schwätzen hei um Blog iwwer de Earlyoom Utility, déi, no enger Diskussioun vun de Fedora Entwéckler, akzeptéiert gouf fir dësen Utility an Fedora 32 als Hannergrondprozess ze benotzen, mat deem se d'Äntwert vum System op de Manktem u Gedächtnis verbesseren an doduerch Crashen vermeiden.

Elo e puer Woche méi spéit an No aacht Méint Entwécklung gouf d'Verëffentlechung vun der neier Versioun vum Earlyoom 1.4 bekannt ginn.

Fir déi déi de Projet net kennen, solle se dat wëssen dëst ass en Hannergrondfuedem deen periodesch de verfügbaren Erënnerung kontrolléiert (MemAvailable, SwapFree) a probéiert an engem fréie Stadium op en aus Erënnerungszoustand ze reagéieren. De Projet Code gëtt a C geschriwwen an ënner der MIT Lizenz verdeelt.

Verbonnen Artikel:
Earlyoom de Fuedem fir an Fedora 32 opzehuelen fir aus Memory Crashen ze vermeiden

Wann de Betrag vum verfügbaren Gedächtnis manner ass wéi de spezifizéierte Wäert, earlyoom wäert mat Gewalt ophalen (andeems Dir SIGTERM oder SIGKILL schéckt) de Prozess vum Prozess deen am meeschte Gedächtnis verbraucht (deen deen héchste Wäert / proc / * / oom_score huet), ouni Systemzoustand ze läschen System Puffer a stéiert Swap Work (OOM (aus Erënnerung) Driver am Kernfire wann niddereg Staat Erënnerung scho kritesch Wäerter erreecht huet, an allgemeng bei dësem Punkt de System reagéiert net méi op Benotzeraktiounen).

Earlyoom ënnerstëtzt d'Sendung vun Zwangsprozess Notifikatiounen op den Desktop (andeems Dir Notifikatiounen schéckt), a bitt och d'Méiglechkeet Regelen ze definéieren an deenen regelméisseg Ausdréck kënne benotzt ginn fir d'Nimm vun de Prozesser ze spezifizéieren, deenen hir Kënnegung bevorzugt ass (d'Optioun "-prefer") oder Arrêten déi vermeit solle ginn (- vermeiden Optioun).

Wat ass nei am Earlyoom 1.4?

An dëser neier Versioun ginn e puer Ännerunge beliicht, dovun Et gëtt erwähnt datt ech mam Botzen vum Code schaffen an dat och wéinst der verspéiter Belaaschtung vun de Prozessattributer, d'Logik vun der Auswiel vu Prozesser ze kompletéiere gëtt ëm 50% eropgesat.

Nieft deem och root Privileg zréckgesat gouf ëmgesat an der Drive-Datei "systemd earlyoom.service". Dës Ännerung brécht d'Fäegkeet fir GUI Notifikatiounen ze kréien.

Fir GUI Notifikatiounen erëm z'aktivéieren, gëtt virgeschloen Rootrechter zréckzeginn andeems Dir d'Linn net kommentéiert "DynamicUser = richteg".

Och wann de Root deaktivéieren et och onméiglech mécht Informatiounen iwwer de Gedächtniskonsum beim Montage ze kréien / proc am Modus hidepid = 1 oder hidepid = 2.

Vun den aneren Ännerungen déi opfalen:

  • D'UID vum ofgeschlossene Prozess gëtt am Registry reflektéiert, zousätzlech zu der PID an dem Prozessnumm.
  • Liichtgraue Debug Protokoll ervirgehuewen.
  • Wa méiglech, gouf d'Deklaratioun vu Variabelen lokal zu de Blöcke benotzt.
  • Konfiguratioun derbäi PATH_LEN fir de Wäert vun der agebetter Puffergréisst am Code z'iwwerschreiwen.
  • Méiglechkeet vum Start cppcheck wann verfügbar.
  • Leeschtungstest "Maach Bank" derbäi.
  • Erweidert Test Suite (Test maachen).

Endlech wann Dir méi doriwwer wësse wëllt Iwwer dës Verëffentlechung kënnt Dir d'Detailer an der folgenden Link. 

Wéi installéiere ech earlyoom op Linux?

Fir déi, déi interesséiert sinn dëst Utility kënnen ze probéieren, kënne se dat maachen andeems Dir d'Instruktioune follegen déi mir hei ënnen deelen.

Earlyoom läit bannent de Repositioune vun e puer vun de Verdeelungen vu populärem Linux, also, am Fall vun Debian, Ubuntu an all Derivaten vun dësen kann d'Installatioun mam folgendem Kommando gemaach ginn:

sudo apt install earlyoom

Wann dëst fäerdeg ass, muss de Service elo mam Kommando aktivéiert ginn:

sudo systemctl enable earlyoom

An et fänkt mat:

sudo systemctl start earlyoom

Am Fall vun Fedora an RHEL 8 mat EPEL, kann et mam folgendem Kommando installéiert ginn:

sudo dnf install earlyoom

An de Service gëtt aktivéiert mat:

sudo systemctl enable --now earlyoom

Endlech am Fall vun Arch Linux oder all aner Derivat dovun, d'Installatioun gëtt mam folgendem Kommando gemaach:

sudo pacman -S earlyoom

An de Service gëtt aktivéiert mat:

sudo systemctl enable --now earlyoom

Fir all aner Linux Verdeelungen, si kënnen d'Installatioun maachen andeems se den Utility Code kompiléieren.

Fir de Code ze kréien kënne mir et mam folgendem Kommando maachen:

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

cd earlyoom

Mir fänken un ze kompiléiere mat:

make

A mir installéieren (wann Dir Systemd hutt):

sudo make install

Oder fir déi déi net Systemd hunn:

sudo make install-initscript

A fir de Service ze benotzen, maacht Dir et mat:

./earlyoom


Den Inhalt vum Artikel hält sech un eis Prinzipie vun redaktionnell Ethik. Fir e Feeler ze mellen klickt hei.

5 Kommentaren, loosst ären

Gitt Äre Kommentar

Är Email Adress gëtt net publizéiert ginn. Néideg Felder sinn markéiert mat *

*

*

  1. Responsabel fir d'Daten: Miguel Ángel Gatón
  2. Zweck vun den Donnéeën: Kontroll SPAM, Kommentarmanagement.
  3. Legitimatioun: Är Zoustëmmung
  4. Kommunikatioun vun den Donnéeën: D'Donnéeë ginn net un Drëttubidder matgedeelt ausser duerch legal Verpflichtung.
  5. Datenspeicher: Datebank gehost vun Occentus Networks (EU)
  6. Rechter: Zu all Moment kënnt Dir Är Informatioun limitéieren, recuperéieren an läschen.

  1.   Infogon sot

    En Detail vum Titel: «Memory loss»

    1.    David naranjo sot

      Merci fir d'Observatioun. Prost! 🙂

  2.   LinuxmanR4 sot

    Ech mengen et ass en Detail mat der Installatioun zu Manjaro (ofgeleet vum Arch). Ech hunn de Package net an den normale Repositories fonnt.

    Also d'Installatioun sollt duerch Yaourt sinn.

    yaourt earlyoom

    Greetings!

    1.    David naranjo sot

      Am Arch ass et am Gemeinschaftsrepositorium deen a pacman.conf aktivéiert muss ginn. Am selwechte wéi Dir et erwähnt ass et och an AUR.

      Merci fir d'Observatioun 😀

  3.   Fran Pavon sot

    Salut, ech wëll datt dëse Service all Kéier am MXLinux start wann ech de Computer uschalten ouni de Kommando an den Terminal ze setzen, wéi kann ech et maachen?