top 

В администрировании Linux жизненно важно понимать, что происходит внутри системы. Какие процессы потребляют больше всего ресурсов? Почему сервер “подвисает”? На эти вопросы отвечают две ключевые утилиты для мониторинга в реальном времени: top и его более современный аналог htop.

Что такое top?

top (table of processes) — это стандартная консольная команда, встроенная почти во все дистрибутивы Linux. Она выводит динамическое представление о работающей системе в виде таблицы процессов, а также сводную информацию об использовании процессора (CPU), оперативной памяти (RAM), свопа (swap) и загрузке системы.

Запуск и базовое использование

Запустить top очень просто. Достаточно ввести в терминале:

Bash
top

После запуска вы увидите два основных блока:

  1. Верхняя сводка (header): Общая информация о системе.
  2. Таблица процессов (process list): Динамически обновляющийся список процессов, отсортированный по потреблению CPU по умолчанию.

Расшифровка верхней сводки top

top - 10:30:25 up 15 days,  3:15,  1 user,  load average: 0.05, 0.10, 0.15
Tasks: 250 total,   1 running, 249 sleeping,   0 stopped,   0 zombie
%Cpu(s):  2.5 us,  0.5 sy,  0.0 ni, 97.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   7824.4 total,    125.8 free,   5120.2 used,   2578.4 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   2450.2 avail Mem
  • load average: Средняя нагрузка на систему за 1, 5 и 15 минут. Показывает количество процессов, ожидающих выполнения. Значение > числа ядер CPU — сигнал о перегрузке.
  • %Cpu(s):
    • us (user) — время работы пользовательских процессов.
    • sy (system) — время работы системных процессов.
    • id (idle) — время простоя процессора.
    • wa (I/O wait) — время ожидания I/O операций. Высокое значение указывает на проблемы с диском.
  • Mem / Swap: Использование оперативной памяти и области свопинга.

Клавиши управления внутри top

Одна из сильных сторон top — управление с помощью “горячих” клавиш без выхода из утилиты.

  • P (Shift + p) — сортировка по потреблению CPU (по умолчанию).
  • M (Shift + m) — сортировка по использованию памяти (RAM).
  • N (Shift + n) — сортировка по PID (идентификатору процесса).
  • k — завершить процесс (kill). Запроссит PID и сигнал (по умолчанию SIGTERM).
  • r — изменить приоритет процесса (renice).
  • z — включить цветное отображение.
  • 1 — развернуть информацию по всем ядрам процессора.
  • h — вызвать справку по всем командам.
  • q — выйти из top.

Пример завершения процесса:

  1. Нажимаем k.
  2. Вводим PID процесса, который нужно завершить (например, 1234).
  3. Выбираем сигнал (например, 15 для SIGTERM или 9 для SIGKILL) или просто жмем Enter для сигнала по умолчанию.

Что такое htop и чем он лучше?

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

Установка htop

Во многих современных дистрибутивах htop установлен по умолчанию. Если его нет, установите с помощью пакетного менеджера:

Ubuntu/Debian:

Bash
sudo apt install htop

CentOS/RHEL/Fedora:

Bash
# CentOS/RHEL (с включенным EPEL)
sudo yum install htop

# Fedora
sudo dnf install htop

Запуск htop

Запуск аналогичен top:

Bash
htop

Ключевые преимущества htop

  1. Наглядность: Цветные индикаторы и полосы прогресса делают оценку нагрузки мгновенной.
  2. Управление мышью: Можно выбирать процессы, сортировать колонки щелчком мыши.
  3. Прокрутка списков: Можно прокручивать список процессов и колонки по горизонтали.
  4. Удобное управление процессами: Для завершения процесса (F9), изменения приоритета (F7/F8) не нужно запоминать PID, достаточно выбрать процесс курсором.
  5. Поиск процессов: Быстрый поиск по имени клавишей F3.

Управление в htop (основные клавиши F-ряда)

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

Сравнительная таблица: top vs htop

Критерийtophtop
ИнтерфейсТекстовый, монохромныйЦветной, наглядный
Управление мышьюНетДа
Горизонтальная прокруткаНетДа
Древовидное отображениеНет (только с ключом -H)Да (F5)
Простота управленияТребует запоминания клавишИнтуитивное меню (F-keys)
Наличие по умолчаниюПочти вездеТребует установки

Заключение: что выбрать?

  • Используйте top, если вы работаете на незнакомом сервере, где нельзя ничего устанавливать. Это надежный и универсальный инструмент, который всегда под рукой.
  • Установите и используйте htop везде, где это возможно. Его наглядность и удобство экономят время и снижают вероятность ошибки, особенно при активной работе с процессами.

Обе утилиты незаменимы для любого системного администратора или разработчика, который хочет глубоко понимать работу своей Linux-системы.