gtop — небольшой дашборд для терминала, который рисует графики загрузки процессора по ядрам, памяти, swap и сети, а ниже показывает таблицу процессов. В отличие от htop, здесь нет управления процессами, зато есть наглядная картинка, которую удобно держать на отдельном экране или в SSH-сессии. Разберём установку, горячие клавиши, чтение графиков и трезвую оценку: кому gtop подходит в 2026 году, а кому лучше взять btop или bottom.

Что показывает gtop

Интерфейс собран на blessed-contrib, данные собирает библиотека systeminformation. На экране одновременно видны столбики загрузки каждого логического ядра, кольцевая диаграмма занятой памяти, отдельный индикатор swap, график сетевого трафика приёма и передачи и список процессов с PID, именем, процентом процессора и памяти. Всё обновляется с интервалом в несколько секунд; история не сохраняется, поэтому после закрытия данные теряются.

Важное ограничение: диск, температура, GPU и лимиты cgroup не отображаются. gtop — про быстрый обзор, а не про глубокую диагностику. Если на сервере несколько контейнеров, по этим графикам нельзя понять, кто именно съел память.

Установка

node --version
npm install -g gtop
sudo snap install gtop
gtop

Нужен Node.js; пакет нетребователен и работает на современных LTS-версиях. Если npm ругается на права доступа к глобальному каталогу, не стоит запускать установку через sudo — лучше настроить prefix в домашнем каталоге или использовать nvm. Проверить, куда встал бинарник, можно через npm prefix -g.

npm prefix -g
npm ls -g --depth=0
which gtop

Запуск в Docker

docker run --rm -it --name gtop \
  --net=host --pid=host \
  aksakalli/gtop

Без --pid=host контейнер увидит только свои процессы, а без --net=host — только свой сетевой интерфейс. Для разового просмотра на сервере, где не хочется ставить Node.js, это удобный способ. Образ небольшой, но требует доступа к docker daemon, что само по себе повышает привилегии. Рядом целесообразно держать docker stats: он демонстрирует потребление контейнеров без интерактивного дашборда и дополнительных зависимостей, а вывод остаётся в том же терминале.

Горячие клавиши

gtop
# p — сортировка по PID
# c — сортировка по процессору
# m — сортировка по памяти
# q или Ctrl+C — выход

Набор минимален: сортировка таблицы процессов по трём полям и выход. Нельзя завершить процесс, изменить приоритет, отфильтровать по имени или открыть дерево. Для этого нужен htop или btop. Зато gtop не перехватывает мышь и не конфликтует с tmux.

Как читать графики

Столбики процессора показывают загрузку каждого ядра отдельно, поэтому легко заметить перекос: одно ядро на 100 процентах, остальные спят — признак однопоточного узкого места. Кольцо памяти стоит читать вместе с swap: активный swap при высокой занятости памяти означает, что система уже давится. Сетевой график масштабируется автоматически, и по нему видно направление, но не абсолютные значения в удобном виде — для точных цифр лучше смотреть vnstat или ip -s link.

Пример разбора нагрузки

Допустим, сервер стал отвечать медленно. По gtop видно, что ядра загружены неравномерно, а память близка к пределу. Дальше дашборд заканчивается: нужно спускаться в обычные утилиты.

ps -eo pid,pcpu,pmem,comm --sort=-pcpu | head
vmstat 1 5
ss -tulpn
journalctl -k --since "1 hour ago" | tail -50

gtop в этой цепочке играет роль указателя, а не инструмента расследования. Он подсказывает, куда смотреть — процессор, память или сеть, — и экономит первые полминуты. Этого достаточно, если не путать обзор с диагностикой.

Работа в tmux и на слабых машинах

gtop хорошо переносит переподключение: внутри tmux сессия переживёт разрыв SSH, а графики продолжат обновляться. На слабой виртуалке с одним ядром сам дашборд может забирать заметную долю процессора, потому что Node.js и перерисовка экрана не бесплатны. В таком случае его лучше запускать эпизодически, а не держать открытым сутками.

Типичные проблемы

LANG=en_US.UTF-8 TERM=xterm-256color gtop
locale
echo $TERM
tput cols; tput lines

Если вместо рамок видны вопросительные знаки, виновата локаль или тип терминала. Второй частый случай — слишком маленькое окно: при ширине меньше 80 колонок блоки наезжают друг на друга, и дашборд становится нечитаемым. В SSH-сессии с медленным каналом обновление графиков может подтормаживать; помогает уменьшить окно или запускать gtop в tmux на самом сервере.

Отдельно стоит проверить, что вы смотрите на нужную машину. В контейнере без host-режимов gtop покажет процессы контейнера и его сетевой namespace, а не хоста.

Сравнение с альтернативами

htop — стандарт для работы с процессами: дерево, kill, nice, поиск, фильтры. btop — более современная картинка с мышиным управлением, темами и настройкой. bottom (btm) — быстрый инструмент на Rust с гибкой конфигурацией и графиками. glances умеет отдавать метрики по сети и в веб-интерфейс. gtop проигрывает им по функциям, но выигрывает по простоте: одна команда, никакой конфигурации, симпатичная картинка.

Актуальность в 2026 году

Последний выпуск gtop — 1.1.5, опубликованный в 2023 году. Проект не выглядит активно развивающимся, и это главный риск: новые ядра и версии Node.js могут однажды сломать совместимость. На практике пакет остаётся рабочим, потому что зависимости blessed и systeminformation стабильны. Но полагаться на gtop как на единственный инструмент мониторинга на проде не стоит. Если проект всё же понадобился надолго, зафиксируйте версию в локальном package.json и запускайте через npx, либо соберите внутренний образ с уже установленным пакетом — так обновление Node.js не станет сюрпризом.

Когда использовать

  • Быстрый взгляд на сервер сразу после подключения по SSH.
  • Демонстрация нагрузки на слайде или в записи экрана.
  • Постоянный дашборд на неиспользуемом мониторе.
  • Не подходит: разбор инцидентов, охота за утечками, работа с процессами, аудит дискового ввода-вывода.

Чек-лист

  • Node.js установлен, версия не ниже LTS.
  • Терминал не меньше 80 на 24, локаль UTF-8.
  • Для контейнера заданы —pid=host и —net=host.
  • Для точных цифр рядом есть vmstat, iostat, ss.
  • На проде есть альтернатива: btop или htop.

Итог

gtop — симпатичный и предельно простой способ увидеть общую картину нагрузки в терминале. Он не притязает на роль полноценного монитора и не заменяет htop: здесь нет управления процессами, истории и дисковых метрик. Если нужен быстрый визуальный снимок на сервере или красивый дашборд на отдельном экране, gtop справится. Если речь о повседневной работе и разборе проблем, лучше держать под рукой btop и стандартный набор утилит.

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка 0 / 5. Количество оценок: 0

Оценок пока нет. Поставьте оценку первым.

Поделиться: Telegram ВКонтакте