Senaraikan versi baru Earlyoom 1.4, utiliti untuk mengelakkan kerosakan kerana kekurangan memori

awal kanak-kanak

pada awal tahun kita bercakap di sini di blog mengenai utiliti Earlyoom, yang, setelah perbincangan oleh pemaju Fedora, diterima untuk menggunakan utiliti ini di Fedora 32 sebagai proses latar belakang, dengan mana mereka berniat untuk meningkatkan respons sistem terhadap kekurangan memori dan dengan itu dapat mengelakkan kerosakan.

Sekarang beberapa minggu kemudian dan Setelah lapan bulan pengembangan, peluncuran Earlyoom 1.4 versi baru diumumkan.

Bagi mereka yang tidak biasa dengan projek itu, mereka harus mengetahui perkara itu ini adalah thread latar yang memeriksa secara berkala jumlah memori yang ada (MemAvailable, SwapFree) dan cuba bertindak balas terhadap keadaan kehabisan memori pada peringkat awal. Kod projek ditulis dalam C dan diedarkan di bawah lesen MIT.

Awal
artikel berkaitan:
Awal utas untuk disertakan dalam Fedora 32 untuk mengelakkan kehancuran memori

Sekiranya jumlah memori yang ada kurang daripada nilai yang ditentukan, Earlyoom akan berakhir dengan paksa (dengan menghantar SIGTERM atau SIGKILL) proses proses yang memakan memori yang paling banyak (yang mempunyai nilai tertinggi / proc / * / oom_score), tanpa keadaan sistem pembersih penyangga sistem dan mengganggu kerja pertukaran (OOM (kehabisan memori) pemacu kernel kebakaran ketika keadaan rendah memori sudah mencapai nilai kritikal, dan umumnya pada ketika ini sistem tidak lagi bertindak balas terhadap tindakan pengguna).

Earlyoom menyokong penghantaran pemberitahuan proses paksa ke desktop (dengan mengirim pemberitahuan), dan juga memberikan kemampuan untuk menentukan peraturan di mana ungkapan biasa dapat digunakan untuk menentukan nama proses yang penutupannya lebih disukai (pilihan "-prefer") atau berhenti yang harus dihindari (- elakkan pilihan).

Apa yang baru di Earlyoom 1.4?

Dalam versi baru ini beberapa perubahan diserlahkan, di antaranya Disebutkan bahawa saya berusaha membersihkan kod tersebut dan itu juga disebabkan oleh kelewatan memuat atribut proses, logik memilih proses untuk diselesaikan dipercepat sebanyak 50%.

Selain itu juga reset hak istimewa root telah dilaksanakan dalam fail pemacu "systemd earlyoom.service". Perubahan ini mematahkan kemampuan untuk menerima pemberitahuan GUI.

Untuk mengaktifkan semula pemberitahuan GUI, disarankan untuk mengembalikan hak root dengan melepaskan baris «DynamicUser = benar".

Walaupun mematikan root juga menjadikan mustahil untuk mendapatkan maklumat mengenai penggunaan memori semasa pemasangan / proc mod hidepid = 1 atau hidepid = 2.

Daripada perubahan yang lain yang menonjol:

  • UID proses yang dihentikan dicerminkan dalam registri, selain PID dan nama proses.
  • Menambah penyerlahan log debug kelabu muda.
  • Sekiranya mungkin, deklarasi pemboleh ubah tempatan ke blok digunakan.
  • Konfigurasi ditambah PATH_LEN untuk mengatasi nilai ukuran penyangga tertanam dalam kod.
  • Kemungkinan memulakan semakan jika ada.
  • Uji prestasi "buat bangku" ditambah.
  • Set ujian lanjutan (buat ujian).

Akhirnya sekiranya anda ingin mengetahui lebih lanjut mengenainya Mengenai siaran ini, anda boleh menyemak perinciannya di pautan berikut. 

Bagaimana cara memasang Earlyoom di Linux?

Bagi mereka yang berminat untuk mencuba utiliti ini, mereka boleh melakukannya dengan mengikuti arahan yang kami kongsikan di bawah.

Earlyoom terletak di repositori sebilangan pengedaran Linux yang popular, jadi, dalam kes Debian, Ubuntu dan sebarang derivatifnya daripada ini, pemasangan boleh dilakukan dengan arahan berikut:

sudo apt install earlyoom

Setelah ini selesai, perkhidmatan sekarang mesti diaktifkan dengan arahan:

sudo systemctl enable earlyoom

Dan ia bermula dengan:

sudo systemctl start earlyoom

Dalam kes Fedora dan RHEL 8 dengan EPEL, ia boleh dipasang dengan arahan berikut:

sudo dnf install earlyoom

Dan perkhidmatan ini diaktifkan dengan:

sudo systemctl enable --now earlyoom

Akhirnya, dalam kes Arch Linux atau turunan lain dari ini, pemasangan dilakukan dengan arahan berikut:

sudo pacman -S earlyoom

Dan perkhidmatan ini diaktifkan dengan:

sudo systemctl enable --now earlyoom

Untuk semua pengedaran Linux yang lain, mereka boleh melakukan pemasangan dengan menyusun kod utiliti.

Untuk mendapatkan kod, kita dapat melakukannya dengan perintah berikut:

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

cd earlyoom

Kami terus menyusun dengan:

make

Dan kami memasang (jika anda mempunyai Systemd):

sudo make install

Atau bagi mereka yang tidak mempunyai Systemd:

sudo make install-initscript

Dan untuk menggunakan perkhidmatan yang anda lakukan dengan:

./earlyoom


5 komen, tinggalkan komen anda

Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab atas data: Miguel Ángel Gatón
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.

  1.   infogon kata

    Perincian tajuk: «kehilangan ingatan»

    1.    David naranjo kata

      Terima kasih atas pemerhatian. Ceria! 🙂

  2.   linuxmanr4 kata

    Saya rasa ada perincian dengan pemasangan di Manjaro (berasal dari Arch). Saya tidak menemui bungkusan di repositori biasa.

    Jadi pemasangan harus melalui yaourt.

    yaourt earlyoom

    ¡Saludos!

    1.    David naranjo kata

      Di Arch, ia berada di dalam repositori komuniti yang harus diaktifkan di pacman.conf. Dengan cara yang sama seperti yang anda nyatakan juga terdapat dalam AUR.

      Terima kasih atas pemerhatian 😀

  3.   Fran Pavon kata

    Halo, saya mahu perkhidmatan ini dimulakan di MXLinux setiap kali saya menghidupkan komputer tanpa perlu meletakkan perintah di terminal, bagaimana saya boleh melakukannya?