Linux команды · 4 min read · Sep 20, 2025
Учебник по команде top в Linux для начинающих (8 примеров)

Во время работы в командной строке Linux могут возникнуть моменты, когда вам нужно проверить детали, связанные с процессами, например, какой процесс потребляет больше всего CPU или памяти? Существует команда - названная top - которая позволяет сделать это легко. В этом учебнике мы обсудим этот инструмент, используя несколько простых для понимания примеров.
Но прежде чем мы это сделаем, стоит упомянуть, что все примеры, упомянутые в этой статье, были протестированы на машине с Ubuntu 16.04 LTS.
Команда top в Linux
Команда top отображает список процессов или потоков, которые в настоящее время управляются ядром Linux, вместе с полезной информацией, связанной с ними. Следующий синтаксис инструмента:
top [options]А вот что говорит страница man этого инструмента:
Программа top предоставляет динамический реальный вид работающей
системы. Она может отображать сводную информацию о системе, а также
список процессов или потоков, которые в настоящее время управляются
ядром Linux. Типы сводной информации о системе, которые отображаются,
а также типы, порядок и размер информации, отображаемой для процессов,
все настраиваемо пользователем, и эта конфигурация может быть
сохранена между перезагрузками.
Программа предоставляет ограниченный интерактивный интерфейс для
манипуляции процессами, а также гораздо более обширный интерфейс для
персональной настройки - охватывающий каждый аспект ее работы.Следующие примеры в формате вопрос-ответ должны дать вам хорошее представление о том, как работает команда top.
Вопрос 1. Как использовать top?
Просто выполните команду ‘top’ без каких-либо опций:
topВот вывод, который она произвела на моей системе:

Обратите внимание, что то, что вы видите на скриншоте, является лишь снимком реального времени (который изменяется через фиксированный интервал), который был произведен.
Вопрос 2. Как понять вывод команды top?
Начнем с первой строки. Она содержит записи для (в этом порядке) текущего времени, времени с момента запуска системы, активных пользовательских сессий и средней нагрузки на систему (за последнюю минуту, пять минут и пятнадцать минут соответственно).
Вторая строка содержит информацию (в этом порядке) о общем количестве процессов, количестве работающих процессов, количестве спящих процессов, количестве процессов, которые остановлены, и количестве процессов в состоянии зомби.
Третья строка содержит информацию о загрузке CPU. Следующие детали:
us, user : время работы непривилегированных пользовательских процессов
sy, system : время работы процессов ядра
ni, nice : время работы привилегированных пользовательских процессов
id, idle : время, проведенное в обработчике простоя ядра
wa, IO-wait : время ожидания завершения ввода-вывода
hi : время, затраченное на обслуживание аппаратных прерываний
si : время, затраченное на обслуживание программных прерываний
st : время, украденное у этой виртуальной машины гипервизором Следующие две строки показывают информацию, связанную с использованием RAM и своп-памяти. И, наконец, идет информация, связанная с процессами, которая состоит из (в этом порядке) идентификатора процесса, пользователя, владеющего процессом, приоритета процесса, значения nice процесса, виртуальной, физической и общей памяти, используемой процессом, статуса процесса (Спящий, Запущенный или Зомби), использования CPU и RAM, времени активности и команды, которая инициировала процесс.
Вопрос 3. Как завершить процесс из вывода top?
Это довольно просто - просто нажмите ‘k’, и top спросит вас о PID процесса, который вы хотите завершить. Вы увидите сообщение, похожее на следующее, появляющееся прямо над строкой, содержащей заголовки столбцов процессов:
PID to signal/kill [default pid = 3397]Итак, вы видите, вы можете либо ввести идентификатор процесса, либо по умолчанию top попытается завершить (отправив SIGTERM) первый процесс в списке. Как только сигнал отправлен, появляется сообщение, похожее на следующее.
Send pid 3007 signal [15/sigterm]Вопрос 4. Как изменить приоритет процесса?
Как ‘k’ для завершения, вы можете нажать ‘r’, если хотите изменить приоритет процесса (или хотите изменить его nice значение). Нажатие ‘r’ вызывает сообщение, похожее на следующее:
PID to renice [default pid = 3397] Так что либо введите PID, либо top попытается изменить приоритет первого процесса в списке по умолчанию. Например, я ввел PID, и затем top спросил меня о новом значении nice.
Renice PID 2665 to valueПросто укажите значение и нажмите enter, и вы увидите, что значение nice для рассматриваемого процесса изменится.
Вопрос 5. Как изменить частоту обновления команды top?
По умолчанию top обновляет вывод каждые 3 секунды, но вы можете изменить это, нажав ‘d’. Команда спросит вас о новом значении задержки:
Change delay from 3.0 to Просто введите значение и нажмите enter. Вот и все.
Вопрос 6. Как ограничить вывод команды top для конкретного пользователя?
По умолчанию команда top отображает все процессы. Однако вы можете ограничить вывод для конкретного пользователя, нажав ‘u’.
Which user (blank for all)Просто введите имя пользователя в строке выше и нажмите enter, и вы увидите, что вывод будет содержать только те процессы, которые принадлежат пользователю, имя которого вы ввели.
Например, я ввел ‘root’, и вот вывод:

Вопрос 7. Как заставить top отображать полную команду вместе с аргументами?
Это можно сделать, нажав ‘c’. Вот пример:
Теперь вы можете видеть полный путь команды, а также аргументы командной строки в выводе.
Вопрос 8. Как получить помощь по интерактивным командам top?
Чтобы получить помощь, связанную с интерактивными командами top, нажмите ‘h’. В выводе вы увидите доступные команды и их функции. Например, вот что появилось на моей системе, когда я нажал ‘h’.

Заключение
Мы только коснулись поверхности. Команда top предоставляет гораздо больше функций. Как только вы поймете все, что мы обсудили в этой статье, и закончите практиковаться, перейдите на страницу man top, чтобы узнать больше о ней.
Get new posts in your inbox
No spam. Unsubscribe anytime.