htop — интерактивный системный монитор для Unix/Linux, работающий в терминале. В отличие от стандартного top, htop отображает данные в цветном интерфейсе с горизонтальными индикаторами нагрузки, поддерживает прокрутку списка процессов и управление ими через клавиши без ввода PID.
Как работает
htop читает информацию из псевдофайловой системы /proc: загрузку CPU из /proc/stat, информацию о каждом процессе из /proc/[pid]/stat и /proc/[pid]/cmdline, использование памяти из /proc/meminfo. Обновляется каждые 2 секунды (настраивается). Использует ncurses для отрисовки интерфейса.
Верхняя панель показывает: загрузку каждого ядра CPU отдельно (важно для многоядерных серверов), использование RAM (отдельно буферы и кеш), использование swap, load average за 1/5/15 минут, uptime и число процессов/задач. В отличие от free -h, htop показывает реальное потребление памяти (за вычетом кеша, который ОС освобождает при необходимости).
Основные горячие клавиши: F6 — выбор поля сортировки, F9 — отправить сигнал процессу (kill/SIGTERM/SIGKILL), F5 — дерево процессов, / — поиск по имени, u — фильтр по пользователю. Процессы root и пользователей выделены разными цветами.
История
htop создан бразильским разработчиком Хеном Ти Рот (Hisham Muhammad) в 2004 году как улучшение стандартного top. Оригинальный top существует с 1984 года (написан Уильямом ЛеФебвром для Unix), но имеет ограниченный интерфейс. htop 3.0 вышел в 2020 году с поддержкой OpenBSD и macOS. В 2021 году оригинальный автор передал проект новым мейнтейнерам — htop активно развивается. Альтернативы: btop (2021) — более современный интерфейс; atop — с историей нагрузки.
На что обращать внимание
htop не является системным сервисом и не записывает метрики — только просмотр в реальном времени. Для исторического мониторинга нагрузки на VPS используют: Netdata, Prometheus + Grafana, Zabbix или встроенные инструменты хостера. htop потребляет минимум ресурсов (~5 МБ ОЗУ) и доступен в репозиториях всех дистрибутивов: apt install htop или dnf install htop.
Сигнал SIGTERM (15) — вежливое завершение процесса, даёт время на cleanup. SIGKILL (9) — принудительное завершение, процесс не может перехватить. Для зависших Nginx-воркеров или MySQL — сначала SIGTERM, SIGKILL только если процесс не завершился за 10–30 секунд.
htop vs другие инструменты мониторинга
htop — интерактивный инструмент для быстрой диагностики на VPS. Для постоянного мониторинга сервера используют Netdata, Prometheus + Grafana. htop показывает: загрузку CPU по ядрам, использование ОЗУ и swap, список процессов с их командными строками (полезно видеть все процессы nginx или MySQL). Альтернативы: top (стандартный), glances (более подробный с сетью и дисками), atop (историческое логирование метрик). Установка: apt install htop (Debian/Ubuntu) или dnf install htop (AlmaLinux). На Linux-серверах htop — первый инструмент при диагностике проблем с производительностью.