ΠŸΡƒΡΠΊΠ°Π½Π΅ Π½Π° earlyoom 1.3, процСс Π·Π° Ρ€Π°Π½Π½Π° рСакция ΠΏΡ€ΠΈ липса Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚

Π‘Π»Π΅Π΄ сСдСм мСсСца Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½ΠΈ освобоТдаванС Π½Π° Ρ„ΠΎΠ½ΠΎΠ² процСс Ρ€Π°Π½ΠΎ 1.3, ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π½ΠΎ провСрява количСството Π½Π°Π»ΠΈΡ‡Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚ (MemAvailable, SwapFree) ΠΈ сС ΠΎΠΏΠΈΡ‚Π²Π° Π΄Π° Ρ€Π΅Π°Π³ΠΈΡ€Π° Ρ€Π°Π½ΠΎ ΠΏΡ€ΠΈ поява Π½Π° нСдостиг Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚.

Ако Ρ€Π°Π·ΠΌΠ΅Ρ€ΡŠΡ‚ Π½Π° Π½Π°Π»ΠΈΡ‡Π½Π°Ρ‚Π° ΠΏΠ°ΠΌΠ΅Ρ‚ Π΅ ΠΏΠΎ-малък ΠΎΡ‚ ΡƒΠΊΠ°Π·Π°Π½Π°Ρ‚Π° стойност, Ρ‚ΠΎΠ³Π°Π²Π° earlyoom ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»Π½ΠΎ (Ρ‡Ρ€Π΅Π· ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Π½Π΅ Π½Π° SIGTERM ΠΈΠ»ΠΈ SIGKILL) Ρ‰Π΅ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚ΠΈ процСса, ΠΊΠΎΠΉΡ‚ΠΎ консумира ΠΏΠ°ΠΌΠ΅Ρ‚ Π½Π°ΠΉ-Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ (с Π½Π°ΠΉ-висока стойност /proc/*/oom_score), Π±Π΅Π· Π΄Π° Π²ΠΎΠ΄ΠΈ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° систСмата Π·Π° изчистванС Π½Π° систСмни Π±ΡƒΡ„Π΅Ρ€ΠΈ ΠΈ намСса Π² размяната Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° (ΠΌΠ°Π½ΠΈΠΏΡƒΠ»Π°Ρ‚ΠΎΡ€ΡŠΡ‚ OOM (Out Of Memory) Π² ядрото сС задСйства, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° липса Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚ Π²Π΅Ρ‡Π΅ Π΅ достигнало ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΈ стойности ΠΈ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ към Ρ‚ΠΎΠ·ΠΈ ΠΌΠΎΠΌΠ΅Π½Ρ‚ систСмата Π²Π΅Ρ‡Π΅ Π½Π΅ отговаря спрямо дСйствията Π½Π° потрСбитСля).

Earlyoom ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Π½Π΅ Π½Π° извСстия Π·Π° ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚Π΅Π½ΠΈ процСси Π΄ΠΎ работния ΠΏΠ»ΠΎΡ‚ (ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ notify-send), Π° ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° прСдоставя Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»Π°, Π² ΠΊΠΎΠΈΡ‚ΠΎ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ рСгулярни ΠΈΠ·Ρ€Π°Π·ΠΈ, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° посочитС ΠΈΠΌΠ΅Π½Π°Ρ‚Π° Π½Π° процСситС, ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚Π΅Π½ΠΈ (опция "- -ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΠΌ") ΠΈΠ»ΠΈ спряно трябва Π΄Π° сС избягва (опция "--избягвай").

Основни ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Π² Π½ΠΎΠ²Π°Ρ‚Π° вСрсия:

  • Π’ΡŠΠ²Π΅Π΄Π΅Π½ΠΎ Π΅ ΠΈΠ·Ρ‡Π°ΠΊΠ²Π°Π½Π΅ Π·Π° прСкратяванС Π½Π° процСса слСд ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Π½Π΅ Π½Π° сигнал. Π’ΠΎΠ²Π° ΠΊΠΎΡ€ΠΈΠ³ΠΈΡ€Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°, Ρ‡Π΅ earlyoom понякога ΡƒΠ±ΠΈΠ²Π° ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ Π΅Π΄ΠΈΠ½ процСс, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π΅Π΄ΠΈΠ½ Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π΅Π½;
  • Π”ΠΎΠ±Π°Π²Π΅Π½ ΠΏΠΎΠΌΠΎΡ‰Π΅Π½ скрипт (notify_all_users.py) Π·Π° увСдомяванС Π½Π° всички Π²Π»Π΅Π·Π»ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ Π·Π° прСкратяванС Π½Π° процСси Ρ‡Ρ€Π΅Π· notify-send;
  • ΠŸΠΎΠΏΡ€Π°Π²Π΅Π½ΠΎ Π΅ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° някои ΠΈΠΌΠ΅Π½Π° Π½Π° процСси, ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Ρ‰ΠΈ UTF-8 Π·Π½Π°Ρ†ΠΈ;
  • ΠŸΡ€ΠΈΠ΅Ρ‚ КодСкс Π·Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π° ΡΡŠΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠ°.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€