Проблема с фантомной оперативной памятью в Ubuntu 24.10. Как можно решить эту проблему?

Привет всем!

Я прохожу курс “от 0 до Linux админа” здесь: https://yodo.im/courses/linux/?v=1d20b5ff1ee9 и столкнулся с проблемой использования оперативной памяти на Ubuntu 24.10. У меня сложилось впечатление, что в оперативной памяти остается “призрачное” потребление после завершения процессов. Когда я смотрю на открытые процессы, они не занимают столько.

Вот выводы из htop и bashtop:

htop:
htop

bashtop:
bashtop

К сожалению, это не проблема кеша, так как у меня остается слишком много необъяснимой оперативной памяти. Как видно из вывода команды free -ht:

$ free -ht
               total        used        free      shared  buff/cache   available
Mem:            15Gi        13Gi       909Mi       270Mi       861Mi       1.2Gi
Swap:          4.0Gi       1.7Gi       2.3Gi
Total:          19Gi        15Gi       3.2Gi

После выполнения команды sudo sysctl vm.drop_caches=3 использование памяти поменялось так:

$ free -ht
               total        used        free      shared  buff/cache   available
Mem:            15Gi        11Gi       3.2Gi       222Mi       546Mi       3.2Gi
Swap:          4.0Gi       1.7Gi       2.3Gi
Total:          19Gi        13Gi       5.5Gi

Я даже пытался закрыть все программы, но память все равно использовалась на уровне 8.7Gi без видимой причины:

$ free -ht
                   total        used        free      shared  buff/cache   available
    Mem:            15Gi       8.7Gi       6.2Gi       131Mi       490Mi       6.3Gi
    Swap:          4.0Gi       462Mi       3.5Gi
    Total:          19Gi       9.2Gi       9.8Gi

Кто-нибудь сталкивался с подобной проблемой или знает, как это можно исправить? Буду благодарен за подсказки!

Спасибо за ответ на мой вопрос по поводу проблемы с фантомной оперативной памятью в Ubuntu 24.10! У меня всё получилось решить эту проблему. Ещё раз благодарю!

Привет!

Ситуация с “призрачным” потреблением памяти на Ubuntu может быть неприятной, но это не редкость, особенно в современных системах. Давай разберемся с тем, что происходит.

1. Кэширование и память

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

2. Использование команд

Ты уже использовал команду free -ht, что хорошо! Она показывает, что часть памяти занята под кэш (в колонке buff/cache). Этот кэш освобождается, когда системе это необходимо, так что в общем-то это нормальное поведение.

3. Освобождение кэша

Команда sudo sysctl vm.drop_caches=3 действительно помогает освободить кэш, как ты и заметил. После её выполнения это освободило часть памяти, и данные, которые уже были в кэше, исчезли.

4. Необъяснимое использование памяти

Если после закрытия программ используется много памяти (например, 8.7 GiB), возможно, что некоторые программы не закрываются полностью, или существует утечка памяти в одном из запущенных процессов. Ты можешь использовать команду ps aux --sort=-%mem для проверки процессов, которые используют больше всего памяти.

5. Проверка на утечки

Если ты подозреваешь, что какая-то программа вызывает утечку памяти, запусти утилиты, такие как valgrind, на ней, чтобы отследить использование памяти.

6. Обновления и стабильность системы

Также стоит убедиться, что у тебя установлены последние обновления системы. Иногда проблемы фиксируются в более поздних версиях пакетов.

7. Мониторинг

Ты можешь попробовать установить и использовать такие инструменты, как nmon, atop, или glances для более глубокого мониторинга использования ресурсов системы.

Если у тебя есть дополнительные вопросы по этому поводу, не стесняйся спрашивать! . Я ответил на ваш вопрос?

Ответ на ваше сообщение

Привет! :star2:

Рад слышать, что тебе удалось решить проблему с фантомной оперативной памятью в Ubuntu 24.10! Это здорово, когда удается разобраться с такими вещами. Если у тебя возникнут ещё какие-то вопросы или понадобится помощь, не стесняйся обращаться. Удачи в работе с системой!

Береги себя! :blush: . Я ответил на ваш вопрос?