🖥️ htop: кратко и по делу#

htop — интерактивный мониторинг процессов в реальном времени: загрузка CPU, RAM, swap, I/O, сети, сортировка, фильтрация и управление процессами.

📝 Топ‑12 полезных флагов htop#

  • -d N — задержка обновления экрана в десятых долях секунды (по умолчанию 10 = 1 секунда).
  • -C — чёрно-белый режим без цветных индикаторов.
  • -t — древовидное отображение процессов (аналог F5).
  • -s FIELD — сортировка по указанному полю (например, htop -s PERCENT_MEM).
  • -u USER — показать только процессы конкретного пользователя.
  • -p PID1,PID2 — мониторить только заданные PID’ы.
  • -H — отображать потоки вместо процессов.
  • -P — показывать каждое ядро CPU отдельно.
  • -M — показывать память в мегабайтах вместо процентов.
  • --tree — запустить сразу в режиме дерева.
  • --sort-key NAME — задать колонку сортировки (альтернатива -s).
  • --no-kill — отключить возможность отправки сигналов процессам.

🚀 Айсберг команд htop — от базового к гуру#

🟢 Уровень 1 — База (разогрев)#

htop

  • Запустить интерфейс мониторинга

htop -d 5

  • Обновление экрана каждые 0.5 сек

htop -u myuser

  • Показать только процессы пользователя myuser

htop -p 1234,5678

  • Следить только за конкретными процессами

htop -s PERCENT_CPU

  • Сортировать по загрузке CPU

🟡 Уровень 2 — Фильтрация и сортировка#

htop -t

  • Древовидное отображение процессов

htop -H

  • Показать потоки вместо процессов

htop -P

  • Разделить статистику по ядрам CPU

htop --sort-key PERCENT_MEM

  • Запуск с сортировкой по использованию памяти

htop -u www-data

  • Смотреть только процессы веб-сервера

🟠 Уровень 3 — Работа с интерфейсом (горячие клавиши)#

Навигация и управление:

  • F1 — помощь и список клавиш
  • F2 — настройки интерфейса (поля, цвета, режимы)
  • F3 — поиск процесса по имени
  • F4 — фильтр по имени
  • F5 — режим дерева процессов
  • F6 — сортировка по колонке
  • F7 — снизить приоритет (увеличить nice)
  • F8 — повысить приоритет (снизить nice)
  • F9 — убить процесс
  • F10 — выход

Навигация по CPU/Memory:

  • 1 — переключение отображения ядер CPU
  • m — сортировка по памяти
  • p — сортировка по CPU
  • t — переключить режим дерева
  • u — выбор пользователя

🔵 Уровень 4 — Мониторинг системных ресурсов#

htop -M

  • Показать память в мегабайтах

htop --tree

  • Сразу открыть древовидный режим

htop -s IO_RATE

  • Сортировка по I/O активности

htop -s TIME+

  • Сортировка по общему времени CPU

htop -C

  • Чёрно-белый вывод для слабых терминалов

🟣 Уровень 5 — Продвинутое использование#

htop -p $(pgrep nginx | tr '\n' ',')

  • Следить только за процессами Nginx

htop -u $(whoami)

  • Показать только процессы текущего пользователя

htop -s PERCENT_CPU -u postgres

  • Смотреть нагрузку PostgreSQL по CPU

watch -n 1 "htop -b -n 1 | head -n 20"

  • Автоматический мониторинг топ-20 процессов в non-interactive режиме

htop --sort-key=STATE

  • Сортировка по состоянию процессов

🔴 Уровень 6 — Интеграции и автоматизация#

pgrep nginx | xargs htop -p

  • Мониторить только Nginx

pidstat -d 1 | htop

  • Следить за процессами + дисковая активность

htop -p $(pidof mysqld)

  • Мониторить MySQL

curl localhost:8080/metrics | jq '.'

  • Использовать htop вместе с метриками приложений

dstat --top-mem --top-cpu

  • Отличное дополнение к htop для мониторинга IO/NET

🟤 Уровень 7 — Гуру‑режим#

htop -s PERCENT_MEM --sort-key=STATE -P -M

  • Мульти-сортировка + режим потоков + память в MB

htop -p $(pgrep -d',' java)

  • Мониторинг всех Java-процессов

timeout 30 htop

  • Запуск htop на 30 секунд и автозавершение

htop -C -u root -s TIME+

  • Мониторинг только root-процессов, отсортированных по времени CPU

sudo htop --tree -s PERCENT_CPU

  • Полный мониторинг со всеми процессами

🧩 Бонус — лучшие практики#

Сортировка по CPU и памяти:

htop -s PERCENT_CPU
htop -s PERCENT_MEM

Мониторинг только текущего пользователя:

htop -u $(whoami)

Древовидный режим:

htop --tree

Только процессы Nginx:

htop -p $(pgrep nginx | tr '\n' ',')

Использовать htop как dash-борд:

htop -P -M -s PERCENT_CPU