Определение простыми словами
top — это «диспетчер задач» Linux в терминале. Запускаете команду — и видите, какой процесс ест CPU и память прямо сейчас, сколько свободного RAM осталось, как высоко нагружена очередь процессов. Удобно для быстрой диагностики на VPS через SSH, когда непонятно, почему сайт начал тормозить.
Утилита читает данные из /proc, поэтому работает мгновенно и не требует установки на любом дистрибутиве. Есть удобные альтернативы — htop с интерактивным интерфейсом и atop с историей за прошлые часы, но классический top остаётся базовым инструментом сисадмина.
Сравнение с альтернативами
| Утилита | Особенности | Когда использовать |
|---|---|---|
| top | Установлена везде, минимум зависимостей | Быстрая проверка на чужом сервере |
| htop | Цветной UI, прокрутка, сортировка мышью | Постоянная работа, удобный обзор |
| atop | Логирует историю, видно нагрузку за вчера | Расследование инцидентов задним числом |
| btop | Графики CPU, дисков и сети в одном окне | Современный мониторинг в реальном времени |
Кейсы использования
- Сайт начал тормозить — открыли top, увидели процесс PHP-FPM с 200% CPU.
- Поиск утечки памяти: сортировка по столбцу %MEM показывает скрипт, который растёт час от часу.
- Проверка load average: значения выше количества ядер означают очередь задач.
- Контроль за плановыми задачами: видно, что cron запустил бэкап и забил диск операциями ввода-вывода.
- Завершение зависшего процесса прямо из top — клавишей k и указанием PID.
Негативный сценарий: top показывает только моментальный срез. Если пик нагрузки длился 3 секунды и закончился до того, как открыли терминал, top его не покажет. Для разбора прошедших инцидентов нужны atop, sar или внешний мониторинг (Prometheus, Zabbix).
Технические детали
top
top -o %MEM
top -u www-data
top -p $(pgrep -d',' nginx)
top -b -n 1 > top-snapshot.txt
htop
atop -r /var/log/atop/atop_$(date +%Y%m%d)
🔥 Где это применяется
Частые вопросы
Как изменить интервал обновления top?
Запустите top -d 1 для обновления раз в секунду или нажмите d внутри утилиты и введите нужный интервал. Слишком частое обновление само по себе нагружает терминал.
Что такое load average в первой строке?
Три числа — средняя длина очереди задач за 1, 5 и 15 минут. Значение выше количества ядер CPU означает, что процессы ждут своей очереди и сервер перегружен.
Как сохранить вывод top в файл?
Используйте пакетный режим: top -b -n 1 > snapshot.txt. Команда снимет один кадр и запишет в файл — удобно прикладывать к тикетам в техподдержку хостинга.