URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID15
Нить номер: 4881
[ Назад ]

Исходное сообщение
"Debian 12 автоматически убивать процессы при нехватке памяти"

Отправлено devkornev , 25-Сен-23 09:19 
Рабочий компьютер, 16Гб памяти, работает без выключения. Используется Gnome, Firefox, VSCode, Nodejs, ну и всякий другой софт. После запуска, первые 1-2 дня работаю без проблем. Потом память может кончится. Больше всего съедают память Firefox и VSCode.

- Ubuntu 22.04 при нехватке памяти начинала тупить, но спустя секунд 5-10 убивала сама Firefox или VSCode, и возвращалась к нормальной работе.

- Debian 12 при нехватке памяти перестает отвечать. Курсор мыши не двигается, никакие кнопки и комбинации на клавиатуре не работают.

Как в Debian настроить (по аналогии с Ubuntu) убивание самых тяжелых процессов при нехватке памяти?

ps: ну и вообще можно как-нибудь побороть утечки памяти? Ведь несколько дней нет никаких проблем. Если периодически перезапускать самые тяжелые Firefox и VSCode, то это тоже помогает на какое-то время. Но все равно, кроме названных программ, видимо едят память и другие, т.к. вначале при перезапуске компьютера свободной памяти всегда сильно больше.


Содержание

Сообщения в этом обсуждении
"Debian 12 автоматически убивать процессы при нехватке памяти"
Отправлено Аноним , 25-Сен-23 16:23 
Наверное это должно помочь - /etc/sysctl.conf:

vm.overcommit_memory = 2
vm.overcommit_ratio = 100


"Debian 12 автоматически убивать процессы при нехватке памяти"
Отправлено devkornev , 26-Сен-23 06:23 
Спасибо, попробую.

Почитал в интернете про это (вот например неплохое описание https://olegon.ru/showthread.php?t=33505 ), как-то там не все так однозначно. Ну и с параметрами по умолчанию процессы должны все же отстреливаться, не знаю почему этого не происходит.

По умолчанию в Debian 12 было:
vm.overcommit_memory = 0
vm.overcommit_ratio = 50


"Debian 12 автоматически убивать процессы при нехватке памяти"
Отправлено devkornev , 26-Сен-23 06:53 
Память занята на 40-45%, и в это время VSCode даже не запускается. При старте сразу падает, причина: "crashed", код: 5. Получается по ссылке правильно сказано:
--
vm.overcommit_memory = 2
vm.overcommit_ratio = 100
это обозначает, что программы, которые будут запрашивать памяти больше, чем 100% от свопа+ОЗУ, будут падать по нехватке памяти. Самое забавное, что в большинстве программ это исключение обрабатывается так себе, кривовато, поэтому такие параметры я ставить не рекомендую. Иначе будет все неожиданно падать еще даже до того момента, как память и своп реально закончатся.


"Debian 12 автоматически убивать процессы при нехватке памяти"
Отправлено Аноним , 26-Сен-23 10:04 
Ну так увеличь своп...

"Debian 12 автоматически убивать процессы при нехватке памяти"
Отправлено ACCA , 29-Сен-23 08:58 
Так туда им и дорога. Не их собачье дело про "реально закончатся". Им разрешили столько-то, значит соответсвуй или иди в crash dump.

"Debian 12 автоматически убивать процессы при нехватке памяти"
Отправлено Аноним , 26-Сен-23 11:39 
> Рабочий компьютер, 16Гб памяти, работает без выключения. Используется Gnome, Firefox, VSCode, Nodejs, ну и всякий другой софт. После запуска, первые 1-2 дня работаю без проблем. Потом память может кончится.
> ps: ну и вообще можно как-нибудь побороть утечки памяти?

У меня с сорцов дистр собирается. Пересобирал проги которые некорректно работали с памятью. Которые выправить не удалось выкидывал с системы.

Есть комп с 3Gb RAM + 6Gb SWAP. ClamAV сканит весь входящий трафик занимая 70%-90% физической памяти. Ядро + система + графика + бровзер работают на ~600Mb физической памяти. Утечки удалось побороть. /etc/security/limits.conf подобрал так что система не тормозит работу, всё шустро.

Но если ClamAV обновляет свои базы во время работы, ему надо много больше чем есть физической памяти и ядро убивает его процес с сообщением о нехватке памяти. Всё остальное работает без проблем.

Борись с утечками памяти в Firefox и VSCode. Добавь 32Gb свопа.


"Debian 12 автоматически убивать процессы при нехватке памяти"
Отправлено devkornev , 26-Сен-23 13:28 
> Борись с утечками памяти в Firefox и VSCode.

Firefox своей жизнью живет, почти все вкладки иногда закрою, а он не особо высвобождает память. Перезапуск браузера гораздо лучше помогает.

В VSCode экспериментирую с дополнениями, некоторые, конечно, прожорливые.

> Добавь 32Gb свопа.

Пока так и сделал. Посмотрим. Вообще не хотел особо своп использовать, т.к. где-то (уже не помню где) видел предупреждение, что на SSD-дисках его включать не рекомендуется. Порылся в интернете по этому вопросу, похоже байка.



"Debian 12 автоматически убивать процессы при нехватке памяти"
Отправлено X , 26-Сен-23 20:45 
https://packages.debian.org/bookworm/earlyoom

"Debian 12 автоматически убивать процессы при нехватке памяти"
Отправлено devkornev , 27-Сен-23 08:01 
> https://packages.debian.org/bookworm/earlyoom

Спасибо, по умолчанию его не было


"Debian 12 автоматически убивать процессы при нехватке памяти"
Отправлено Neon , 27-Сен-23 01:52 
> Рабочий компьютер, 16Гб памяти, работает без выключения. Используется Gnome, Firefox,
> VSCode, Nodejs, ну и всякий другой софт. После запуска, первые 1-2
> дня работаю без проблем. Потом память может кончится. Больше всего съедают
> память Firefox и VSCode.

Интересно, сколько вкладок Firefox открыто ? Это два, три дня открывать новые вкладки и не закрывать старые что ли ?!))) Какая та проблема надуманная. Mint живет у меня, вообще, на 8 Гб на ноуте и ничего.


"Debian 12 автоматически убивать процессы при нехватке памяти"
Отправлено devkornev , 27-Сен-23 07:57 
> Интересно, сколько вкладок Firefox открыто ? Это два, три дня открывать новые
> вкладки и не закрывать старые что ли ?!))) Какая та проблема
> надуманная. Mint живет у меня, вообще, на 8 Гб на ноуте
> и ничего.

Ну вкладок 20-30 иногда, но стараюсь держать порядка 10-15, меньше никак) Просто они когда долго висят, памяти жрут все больше и больше.


"Debian 12 автоматически убивать процессы при нехватке памяти"
Отправлено pedestrian , 18-Окт-23 06:43 
Понятно, что тема про убийство=) - ответы соответствующие.
Но всё равно удивляет, что никто не предложил продление жизни в виде zram|zswap - мне помогло!