Gotop: Терминальный мониторинг системы с блэкджеком и графиками
Знакомо чувство, когда хочется быстро проверить нагрузку на сервер, но неохота разбираться с тяжеловесными графическими интерфейсами? Или когда нужно оперативно диагностировать проблему на удалённой машине по SSH? Вот тут-то и пригодится gotop — лёгкий, но мощный инструмент для мониторинга системы прямо в терминале.
Что такое gotop?
Gotop — это терминальный мониторинг ресурсов, написанный на Go. Проект вдохновлён такими инструментами как gtop и vtop, но предлагает свою уникальную реализацию. Главное преимущество — он работает везде, где есть терминал: Linux, macOS, FreeBSD и даже Windows (с некоторыми ограничениями).

Почему стоит попробовать gotop?
- Минимализм и скорость — не требует графической среды, работает даже на медленных соединениях
- Гибкость — поддерживает различные layouts (раскладки) и цветовые схемы
- Расширяемость — есть поддержка NVIDIA GPU через nvidia-smi и мониторинг удалённых машин
- Интерактивность — управление с клавиатуры и мыши (да, в терминале!)
Установка — проще некуда
В зависимости от вашей системы:
# Для Arch Linux (через AUR)
yay -S gotop-bin
# Для macOS
brew install gotop
# Для Windows
scoop install gotop
# Универсальный способ (требует Go 1.16+)
go install github.com/xxxserxxx/gotop/v4/cmd/gotop@latest
Полный список вариантов установки можно найти в официальном репозитории.
Ключевые возможности
1. Различные режимы отображения
Gotop поддерживает несколько предустановленных layouts:
- kitchensink — все метрики сразу (по умолчанию)
- minimal — только самое необходимое
- battery — акцент на мониторинг батареи (актуально для ноутбуков)

2. Мониторинг процессов
В отличие от стандартного top, gotop предоставляет:
- Графики использования CPU и памяти для каждого процесса
- Возможность сортировки по различным параметрам
- Удобное управление мышью (выбор, скроллинг)
3. Поддержка NVIDIA GPU
Для владельцев видеокарт NVIDIA есть специальная опция:
gotop --nvidia
Правда, потребуется установленный nvidia-smi.
4. Удалённый мониторинг
Gotop умеет собирать метрики с других машин, на которых также запущен gotop. Это особенно полезно для мониторинга кластеров или удалённых серверов.
Под капотом
Проект написан на Go и использует следующие ключевые библиотеки:
- termui для построения интерфейса
- gopsutil для сбора системных метрик
- termbox-go для работы с терминалом
Интересно, что проект изначально был создан Caleb Bassi, но затем форкнут и продолжен сообществом после того, как автор переключился на Rust-версию (ytop).
Альтернативы
Конечно, gotop — не единственный инструмент в своём роде. Вот несколько альтернатив:
- htop — классика жанра
- bashtop/bpytop — красивые решения на bash и Python соответственно
- ytop — Rust-версия от оригинального автора gotop
Но gotop выгодно отличается:
- Лёгкостью установки (один бинарный файл)
- Поддержкой мыши в терминале
- Возможностью кастомизации
Личный опыт
Я использую gotop уже около года для мониторинга нескольких серверов. Особенно ценю возможность быстро оценить состояние системы одним взглядом. А недавно обнаружил, что gotop отлично работает и через мобильное приложение Termux на Android — настоящая находка для экстренных случаев!
Gotop — это тот случай, когда простой инструмент делает одну вещь, но делает её хорошо. Если вы:
- Администрируете серверы
- Работаете в терминале
- Любите минималистичные и эффективные инструменты
— обязательно попробуйте gotop. Возможно, он станет таким же must-have в вашей работе, как и в моей.
А вы уже используете gotop или подобные инструменты? Делитесь опытом в комментариях!
