Linux OOM случайным образом, когда еще есть свободная память

cat /usr/lib/python2.7/site-packages/wok/auth.py  | grep service=
sed -i -e 's/passwd/system-auth/g' /usr/lib/python2.7/site-packages/wok/auth.py 
cat /usr/lib/python2.7/site-packages/wok/auth.py  | grep service=
service wokd restart
4
11.01.2021, 06:13
2 ответа

Объяснение: Система не может выделить память, хотя память доступна .

Что касается того, как решить проблему, я предлагаю сначала проверить, нет ли утечек памяти или неиспользуемых процессов, которые можно было бы остановить, как только вы узнаете, что с точки зрения памяти у вас все в порядке, что осталось заключается в увеличении физической памяти, а если это невозможно, добавьте некоторый своп, так как это может освободить часть памяти (, может повлиять на производительность)

1
18.03.2021, 22:37

Я спрашивал многих людей, но пока не нашел хорошего решения.

Я очень подозреваю, что эта проблема связана с кэшем dentries/inode ядра Linux :когда свободной памяти недостаточно, ядро ​​не пытается освободить кэш-память.

Каждый раз, когда я запускаю echo 2 > /proc/sys/vm/drop_caches, память freeстановится около 8 ГБ. Затем он снижается примерно до 4G в течение примерно десятков минут, затем снижается примерно до 2G, в конечном итоге может стать меньше 1G, иногда меньше 400M.

Только 2для /proc/sys/vm/drop_cachesвлияет на свободную память, 1не влияет.

Приходится использовать временное решение (, хотя я думаю, что оно плохое... ), запускать echo 2 > /proc/sys/vm/drop_cachesкаждые 15 минут...... так грустно.

0
18.03.2021, 22:37

Теги

Похожие вопросы