Π―Π΄Ρ€ΠΎ Linux Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ мягко ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ситуации с Π½Π΅Ρ…Π²Π°Ρ‚ΠΊΠΎΠΉ памяти

Π’ спискС рассылки Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ядра Linux поднята ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ситуации исчСрпания свободной памяти Π² Linux:

Π˜Π·Π²Π΅ΡΡ‚Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°, которая Π΄ΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚ мноТСство людСй Π½Π° протяТСнии ΠΌΠ½ΠΎΠ³ΠΈΡ… Π»Π΅Ρ‚ ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ воспроизвСсти мСньшС, Ρ‡Π΅ΠΌ Π·Π° нСсколько ΠΌΠΈΠ½ΡƒΡ‚ Π½Π° послСднСй вСрсии ядра Linux 5.2.6. ВсС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ядра установлСны Π² значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

Π¨Π°Π³ΠΈ:

  • ЗагруТаСмся с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ «mem=4G».
  • Π’Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ swap (sudo swapoff -a).
  • ЗапускаСм любой Π²Π΅Π± Π±Ρ€Π°ΡƒΠ·Π΅Ρ€, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Chrome/Chromium ΠΈΠ»ΠΈ/ΠΈ Firefox.
  • НачинаСм ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ с сайтами ΠΈ смотрим ΠΊΠ°ΠΊ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ΡΡ ΠΎΠ±ΡŠΡ‘ΠΌ свободной памяти.

Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ситуация, ΠΊΠΎΠ³Π΄Π° новая Π²ΠΊΠ»Π°Π΄ΠΊΠ° Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ большС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти, Ρ‡Π΅ΠΌ доступно, систСма практичСски ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ зависаСт. Π’Ρ‹ Π΄Π°ΠΆΠ΅ с Ρ‚Ρ€ΡƒΠ΄ΠΎΠΌ смоТСтС Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒ курсором ΠΌΡ‹ΡˆΠΈ. Π˜Π½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Тёсткого диска Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠΎΡ€Π³Π°Ρ‚ΡŒ Π±Π΅Π· остановки (ΠΌΠ½Π΅ Π½Π΅ ясно ΠΏΠΎΡ‡Π΅ΠΌΡƒ). Π’Ρ‹ Π½Π΅ смоТСтС Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ прилоТСния ΠΈΠ»ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Π΅.

Π­Ρ‚ΠΎΡ‚ малСнький кризис ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒΡΡ ΠΌΠΈΠ½ΡƒΡ‚Ρ‹ ΠΈΠ»ΠΈ дольшС. Π― ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡŽ, Ρ‡Ρ‚ΠΎ систСма Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° сСбя Ρ‚Π°ΠΊ вСсти. Π”ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΡ… «Π·Π°Π²ΠΈΡΠ°Π½ΠΈΠΉ».

Π― ΠΏΠΎΡ‡Ρ‚ΠΈ ΡƒΠ²Π΅Ρ€Π΅Π½, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ sysctl для избСТания ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ситуаций, Π½ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ подсказываСт, Ρ‡Ρ‚ΠΎ это ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для всСх, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ нСтСхничСскиС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ, ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΠ²ΡˆΠΈΡΡŒ с Ρ‚Π°ΠΊΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, просто откаТутся ΠΎΡ‚ использования Linux ΠΈ ΠΈΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΊΠ°Ρ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π² Google.

Π’ коммСнтариях Π½Π° Reddit Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ swap, Π½ΠΎ это Π½Π΅ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ, Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΅Ρ‘ ΠΎΡ‚ΠΎΠ΄Π²ΠΈΠ³Π°Π΅Ρ‚ ΠΈ часто усугубляСт. Π’ качСствС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠ²Π»Π΅Ρ‡Π΅Π½Π° появившаяся Π² ядрС 4.20 ΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π½Π°Ρ Π² ядрС 5.2 подсистСма PSI (Pressure Stall Information), которая позволяСт Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ оТидания получСния Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… рСсурсов (CPU, ΠΏΠ°ΠΌΡΡ‚ΡŒ, Π²Π²ΠΎΠ΄/Π²Ρ‹Π²ΠΎΠ΄). Данная подсистСма Π΄Π°Ρ‘Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ отслСТиваниС Π½Π΅Ρ…Π²Π°Ρ‚ΠΊΠΈ памяти Π½Π° Ρ€Π°Π½Π½Π΅ΠΉ стадии, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ источник ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ°Ρ‚ΡŒ Π½Π΅Π²Π°ΠΆΠ½Ρ‹Π΅ прилоТСния, Π½Π΅ доводя Π΄ΠΎ появлСния Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ эффСктов.

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