Введение
Когда система начинает работать медленнее, первое, что нужно проверить, — это использование памяти. В Linux вы можете быстро получить полную картину состояния памяти с помощью нескольких стандартных команд. После выполнения этого руководства вы сможете определить, сколько оперативной памяти доступно, какие процессы потребляют больше всего памяти, и принять простые меры для восстановления производительности.
Требования
- Доступ в терминал с правами обычного пользователя (для
htopмогут потребоваться права администратора). - ОС на базе Linux: Ubuntu 22.04, Debian 12 или CentOS 8 (команды работают и в других дистрибутивах).
- Установленный
htop(необязательно, но рекомендуется).
Пошаговая инструкция
Шаг 1: Использование команды free для получения общего обзора
Команда free -h показывает общий объем, использованный объем, свободный объем, буфер и кэш в удобочитаемом гигабайтном формате.
free -h
💡 Совет: Параметр
-hпреобразует байты в удобные единицы (K, M, G), что упрощает чтение данных.
Шаг 2: Использование htop для подробного просмотра процессов
htop предоставляет интерактивную панель, где каждая строка представляет процесс, а полосы показывают использование процессора (красный) и памяти (зеленый).
# Установка (Debian/Ubuntu)
sudo apt update && sudo apt install htop -y
# Установка (RHEL/CentOS)
sudo yum install htop -y
# Запуск
htop
⚠️ Важно: Для первого запуска
htopможет потребовать прав администратора (sudo htop).
Шаг 3: Мониторинг изменений с помощью vmstat
vmstat полезен для мониторинга изменений использования памяти в течение времени, особенно при анализе производительности работы.
# Вывод каждые 2 секунды, всего 5 раз
vmstat 2 5
Столбец mem показывает свободную (free), резервную (buff) и использованную (used) память.
Шаг 4: Интерпретация результатов и принятие мер
- Сравните использованную память с свободной.
- Если свободная память низкая (менее 20 % от общего объема), определите процесс, потребляющий больше всего памяти:
- В
htopотсортируйте по столбцу MEM. - В
freeобратите внимание наbuff/cache.
- В
- Закройте ненужные программы или перезапустите сервисы:
# Пример завершения работы тяжелого процесса (замените <process> на фактическое имя)
sudo pkill <process>
💡 Совет: Для временного увеличения объема памяти используйте
swapon, чтобы активировать файл подкачки.
Проверка результата
- Повторите
free -h. Свободная память должна увеличиться после закрытия процессов. - Проверьте
htopеще раз: процессоры должны быть ниже порогового значения. - Если
vmstatтеперь показывает более стабильные значенияmem, мониторинг успешен.
Возможные проблемы
htopне отображает процессоры: Убедитесь, что программа установлена (which htop). На некоторых дистрибутивах может потребоваться установка из пакетаhtop-ng.vmstatне установлен: Установите его с помощьюsudo apt install sysstatилиsudo yum install sysstat.- Низкий объем свободной памяти после перезагрузки: Проверьте
/proc/swapsи добавьте файл подкачки (fallocate -l 2G /swapfileиmkswap /swapfile).
Выполнив эти четыре шага, вы сможете быстро проверить использование памяти в Linux, выявить проблемные процессы и принять меры для поддержания системы в хорошем рабочем состоянии.