LINUX.ORG.RU

Выпуск earlyoom 1.1

 , ,


2

2

Спустя пять месяцев после предыдущего релиза вышел earlyoom 1.1. Earlyoom - демон, периодически (10 раз в секунду) проверяющий объем доступной памяти (MemAvailable, SwapFree) и, если доступной памяти окажется меньше заданного объема, то процессу с максимальным oom_score будет отправлен сигнал SIGKILL для предотвращения Out of memory. Earlyoom поддерживает отправку десктопных уведомлений об убитых процессах (с помощью notify-send), а также возможность задать с помощью regex имена процессов, убийство которых предпочтительно (опция --prefer) или убийства которых стоит избегать (опция --avoid).

Основные изменения:

  • Исправлена возможная инъекция shell-кода через всплывающие уведомления.
  • Время сна после неудачи убийства процесса снижено с 10 до 1 секунды.
  • Всплывающие уведомления теперь отправляются после убийства процесса, а не перед.
  • Поддержка --help в дополнение к -h.
  • Исправлена проблема неверного отображения имен процессов во всплывающих уведомлениях.
  • Исправлено возможное деление на ноль при использовании опции -S.

>>> Подробности



Проверено: jollheef ()

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

anonymous ()

Начал развитие аналогичный проект - nohang

Особенности: возможность корректного завершения процессов с помощью SIGTERM; возможность десктопных уведомлений о низком уровне памяти; настраиваемая интенсивность мониторинга; поддержка zram (mem_used_total в качестве триггера). https://github.com/hakavlad/nohang

hakavlad ()

Выглядит как какое-то ненужно.

Напоминает тюнинг Android, когда в итоге памяти свободной много, но использовать её из-за агрессивного убивания процессов не получается.

Radjah ★★★★★ ()

Исправлена возможная инъекция shell-кода через всплывающие уведомления.
Исправлена проблема неверного отображения имен процессов во всплывающих уведомлениях.
Исправлено возможное деление на ноль при использовании опции -S.

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

slovazap ★★★★★ ()
Ответ на: комментарий от Radjah

Выглядит как какое-то ненужно.

Ага, а зависания при исчерпании памяти и неприход OOM киллера выглядят очень нужно. Не нравится - просто не используй. И да, эта штука настраивается, порог срабатывания можешь выбрать хоть 1%, хоть 10%.

Кстати, отзывы довольных юзеров:

«А можете рассказать, как сделать OOM Killer более агрессивным? Например, в ситуации, когда приложение открыло/создало множество мелких файлов и держит их в памяти, при внезапной нехватке памяти ядро пытается высвободить эти файловые страницы, что вешает систему намертво со 100%-м дисковым I/O на несколько (десятков) минут. А ведь зачастую гораздо проще просто грохнуть само приложение с дальнешим его перезапуском.» https://habr.com/company/flant/blog/348324/#comment_10659202

«Это хорошо, если приходит OOM-killer. Плохо, когда есть огромный iowait, а киллера так никто и не видел, спит. Надежда на то, что без свопа протекающий фаерфокс будет пристрелен, очень быстро растворились в хрусте винта.» https://habr.com/company/flant/blog/348324/#comment_10660004

«А можете рассказать, как сделать OOM Killer более агрессивным? Например, в ситуации, когда приложение открыло/создало множество мелких файлов и держит их в памяти, при внезапной нехватке памяти ядро пытается высвободить эти файловые страницы, что вешает систему намертво со 100%-м дисковым I/O на несколько (десятков) минут. А ведь зачастую гораздо проще просто грохнуть само приложение с дальнешим его перезапуском.» https://habr.com/company/flant/blog/348324/#comment_10659202

«Говно какое-то этот оом-киллер, нихрена не работает. Но чтобы это нормально работало, я думаю, нужен какой-то демон, который постоянно мониторит потребление памяти и прибивает тот процесс, который резко начинает набирать обороты. В общем сам этот демон будет проц грузить, хотя можно ограничить процессы, которые он будет проверять только пользовательскими процессами, добавить black-white list ну и настраиваемый интервал проверки. Короче если кто-то напишет будет круто.» www.linux.org.ru/forum/general/13074074#comment-13074864

«Сегодня скормил пикарду 100-дисковое издание Бетховена и тот сожрал 16 гб памяти вместе с 8 гб zram (коэффициент сжатия был 3.5). Со swappiness 100 zram начал наполняться на 80% памяти, а когда сам достиг 80%, то сжатие продолжилось с новой силой и полной загрузкой ядра. По окончанию банкета система встала колом, потому что киллер опять сцуко не пришел (ждал 10 минут).» www.linux.org.ru/forum/general/13074074/page1?lastmod=1481740875388#comment-1...

«Система таки становится неюзабельной если продолжать стараться забивать ее вплоть до исчерпания RAM+ZRAM. Ничего неудивительного, памяти то нет. Но в случае с дисковым свопом ты начинаешь заранее замечать что дело плохо. По ощущениям ZRAM не тормозит вообще, потому ты ничего не подозреваешь до часа икс и система становится колом.» www.linux.org.ru/forum/talks/12684213?lastmod=1466676523241#comment-12684906

«И IRL ты никогда не знаешь, в какой момент момент твои данные перестанут умещаться в оперативку. Потому zram — удел embedded систем, где это может быть детерминировано.» https://2ch.hk/s/res/2310304.html#2311483, https://archive.li/idixk

«OOM killer, зараза такая, не срабатывает или срабатывает через 3 часа.» www.linux.org.ru/forum/desktop/11255705

hakavlad ()
Ответ на: Утменя не работает :( от hakavlad

Re: Утменя не работает :(

Комбинация эта, как раз плазма в очередной раз систему раком поставила и никакие волшебные комбинации, в том числе и переведённая, меня не спасали. Грустно. :(

К слову, про плазму, эпик: 1. Создаём 2 пользователя; 2. Заходим под 1 пользователем; 3. Завершаем сеанс; 4. Снова заходим под 1 пользователем; 5. DM упал, лол.

Просто пздц, не могут обнаружить косяк месяц, а я все жду :(

anonymous ()
Ответ на: комментарий от GladAlex

Ctrl-Alt-Bkspace

Это же не магические кнопки)))

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

einhander ★★ ()
Ответ на: комментарий от eternal_sorrow

От oom в свопе она так раком вне встанет, это нужен баг в драйвере (например видеокарты) так что он прав. Только magic key f убьёт совсем не то что следовало и доводить не стоит.

Вот насчёт OOM в винде тоже можно поспорить. Если софт типа хромиума, то он сам упадёт аккуратно и никому не навредит, как и в линуксе. А если что-нибудь неприятное, то спасёт только хардресет ибо magic keys не завезли и принудительный рестарт видеодрайвера помогает довольно не всегда.

anonymous ()

периодически (10 раз в секунду) проверяющий объем доступной памяти

Да сколько можно-то! Когда уже будет 15 раз в секунду?!

anonymous ()