Что за программа top

Содержание

Программа top для показа процессов Linux в реальном времени

Программа top показывает запущенные в Linux процессы программ и служб.

С помощью top можно наблюдать в реальном времени динамику работающей системы. Программа показывает обобщённую информацию по системе, а также список процессов или потоков, обслуживающихся в настоящее время ядром Linux.

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

Пример интерфейса top после настройки:

1.9 Команда top для управления процессами | Linux для начинающих

Кроме всеобъемлющих возможностей для персональной настройки, программа предоставляет ограниченный интерактивный интерфейс управления процессами.

Кстати, у программы top имеется интересный аналог, подробности о нём смотрите в статье «Инструкция по использованию команды htop для интерактивного просмотра процессов в Linux».

Как увидеть запущенные процессы в Linux (аналог менеджера задач Windows)

Чтобы увидеть, какие процессы запущены, выполните:

Что означают цифры в top (как понимать вывод top)

Начнём с краткой характеристики стандартного интерфейса top. Как уже было сказано, его можно почти полностью сконфигурировать под свои предпочтения.

Верхняя часть программы показывает краткую обобщённую информацию об использовании процессора и оперативной памяти системы.

В самой верхней строке показано: текущее время в системе, аптайм (время работы после загрузки), общее количество пользователей и средняя нагрузка за последние 1, 5 и 15 минут.

Далее идут строки с информацией о:

  • задачах
  • процессоре
  • оперативной памяти
  • разделе подкачки

Далее идёт перечень запущенных процессов. По умолчанию выводиться следующая информация:

PID — уникальный идентификатор процесса

USER — имя пользователя, являющегося владельцем задачи

PR — приоритет задачи в расписании. Если вы в этом поле видите «rt», это означает, что задача запущена в расписании приоритетов в реальном времени (это самый высокий приоритет).

NI — значение nice задачи. Негативное значение означает более высокий приоритет, а положительное значение nice означает более низкий приоритет

VIRT — общее количество используемой задачей виртуальной памяти, включает все коды, данные, совместные библиотеки, плюс страницы, которые были перенесены в раздел подкачки, и страницы, которые были размечены, но не используются

ТЫ БЫ НИКОГДА ТАКОЕ НЕ ЗАГУГЛИЛ #15

RES — используемая оперативная память, является подмножеством VIRT, представляет физическую память, не помещённую в раздел подкачки, которую в текущий момент использует задача. Также является суммой полей RSan, RSfd и Rssh.

SHR — размер совместной памяти, подмножество используемой памяти RES, которая может использоваться другими процессами

S — статус процесса. Может быть:

%CPU — использование центрального процессора, доля задачи в потреблённом процессорном времени с момента последнего обновления экрана, выражается в процентах от общего времени CPU

%MEM — доля задачи в использовании памяти (RES)

TIME+ — общее время центрального процессора, которое использовала задача с момента запуска

COMMAND — Имя команды или Строка команды. Показывает строку команды, используемую для запуска задачи или имя ассоциированной программы

Прокрутка окон top

Вы можете прокручивать список процессов вверх и вниз, а также вправо и влево, используя курсорные клавиши (стрелки).

Показ скрытие общей нагрузки/аптайма

Начнём с совсем простого — вы можете убрать либо вернуть верхнюю строку, показывающую нагрузку и аптайм, для этого нажимайте клавишу l.

Переключение в цветной режим

С помощью кнопки z можно переключаться между монохромным и цветным отображением.

Цветовую схему можно настроить, то есть можно установить свои цвета.

Показ загруженности каждого ядра

С помощью кнопки 1 вы можете переключаться и выводить обобщённую информацию о загрузке процессора в одной строке, либо в нескольких строках по каждому ядру.

Показ гистограммы загрузки процессора

Кнопка t по кругу переключает вид строки обобщённой информации об использовании процессора. Варианты:

1. детальная информация по категориям

2. сокращённая пользователь/система и общий % + гистограмма

3. Сокращённая пользователь/система и общий % + блок-диаграмма

4. отключение отображения статусов задач и CPU

У меня на сриншоте вместо гистограмм белые области — просто процессор бездействует, в данный момент мало запущенных задач.

Показ гистограммы загрузки памяти

Переключатель m работает аналогично предыдущему, но для оперативной памяти (физической и виртуальной). Четыре аналогичных режима:

1. подробные проценты по типу памяти

2. сокращённый % используемая/общая доступная + гистограмма

3. сокращённый % используемая/общая доступная + блок-диаграмма

4. выключение показа памяти

Использование полужирного выделения

Некоторые данные, например, задачи, потребляющие много процессорного времени, выделяются полужирным. Это поведение по умолчанию. Его можно отключить/включить командой b.

Подсветка столбца, используемого для сортировки

Список процессов показывается не в случайном порядке — он отсортирован по определённому значению. Можно отсортировать по разным столбцам. И если вы забыли, какой столбец используется для сортировки, то нажмите кнопку x и этот столбец будет выделен полужирным. Нажмите x ещё раз, для возврата в исходное состояние.

Читайте также:
Wombo al что за программа

Показ команды запуска

Вы можете посмотреть строку команды, которой она была запущена (имя программы вместе с опциями командной строки) с помощью кнопки c. Для возврата к показу имени программы, нажмите c ещё раз.

Как посмотреть процессы только определённого пользователя

Используйте кнопку u или U, а затем введите имя пользователя, для которого вы хотите увидеть процессы. Опция -u соответствует только эффективному пользователю, в то время как -U соответствует любому пользователю (реальному, эффективному, сохранённому или файловой системы).

Будут показаны процессы только указанного пользователя или пустой экран — если процессов нет. Перед именем пользователя можно поставить ! (восклицательный знак) и тогда будут показаны процессы для всех пользователей, кроме указанного.

Древовидный вид процессов и дочерних процессов

Используя клавишу V можно переключиться на древовидный вид и обратно. В этом режиме процессы реорганизуются в соответствии с их родителями и столбец COMMAND показывает это дерево.

Большая V означает, что нужно одновременно нажимать Shift+v.

В древовидном виде по-прежнему можно использовать интерактивную команду c для переключения на вид строки команды. Также доступна интерактивная команда H для переключения между процессами и потоками.

Показ только активных процессов

Кнопкой i можно переключаться между всеми или только активными задачами.

Просмотр потоков

По умолчанию top показывает суммарную информацию по всем потокам каждого процесса. Используя H можно переключиться на показ потоков.

Как поменять интервал обновления информации в top

По умолчанию информация обновляется раз в три секунды. Используя интерактивную команду d или s вы можете ввести установить любой другой интервал. После нажатия одной из этих кнопок вам нужно будет ввести значение в секундах. Можно вводить дробные числа, но нельзя вводить отрицательные. Если ввести 0, то программа будет непрерывно обновлять информацию и при этом потреблять много процессорного времени.

Если вы хотите узнать, какое время задержки установлено в текущий момент, нажмите h и во второй строке найдите строку со словом Delay.

Как изменить сортировку процессов / Как отсортировать по используемой памяти

По умолчанию сортировка выполняется по количеству использования центрального процессора — чем больше задача потребляет ресурсов CPU, тем она выше в списке. Если переключиться в режим древовидного просмотра, то это правило не действует. Также можно выполнить сортировку по другим характеристикам процессов. Например, по количеству используемой оперативной памяти.

Для переключения между разными колонками (выбора другой характеристики для сортировки) используйте клавиши и >. Это не символы курсорных клавишей. Это символы на английской раскладке, которые на русской раскладке находятся на буквах «б» и «ю». Чтобы отправить этот символ, нужно нажать Shift.

Как уже говорилось выше, чтобы увидеть, какой именно столбец используется для сортировки, нажмите x.

Как искать в top

Вы можете выполнять поиск процессов и строк, содержащих определённое значение.

Для этого нажмите L (Shift+l), появится приглашение ввести слово для поиска. Поиск чувствителен к регистру. Нет ограничений на содержимое поисковой строки.

Поиски не ограничены значениями из единичного столбца или колонки. Все величины, показываемые в строках задач, разрешены для поиска по ним. Вы можете включать пробелы, цифры, символы.

Для перехода к следующему совпадению поиска отправьте символ https://zalinux.ru/?p=1811″ target=»_blank»]zalinux.ru[/mask_link]

TOP’ай сюда

Обзор практически всех *top утилит под linux (atop, iotop, htop, foobartop и т.д.).

Все мы знаем top — самую простую и самую распространённую утилиту из этого списка. Показывает примерно то же, что утилита vmstat, плюс рейтинг процессов по потреблению памяти или процессора. Совсем ничего не знает про загрузку сети или дисков. Позволяет минимальный набор операций с процессом: renice, kill (в смысле отправки сигнала, убийство — частный случай). По имени top суффикс «-top» получили и все остальные подобные утилиты в этом обзоре.

atop

Atop имеет два режима работы — сбор статистики и наблюдение за системой в реальном времени. В режиме сбора статистики atop запускается как демон и раз в N времени (обычно 10 мин) скидывает состояние в двоичный журнал. Потом по этому журналу atop’ом же (ключ -r и имя лог-файла) можно бегать вперёд-назад кнопками T и t, наблюдая показания atop’а с усреднением за 10 минут в любой интересный момент времени.

В отличие от top отлично знает про существование блочных устройств и сетевых интерфейса, способен показывать их загрузку в процентах (на 10G, правда, процентов не получается, но хотя бы показывается количество мегабит).

Незаменимое средство для поиска источников лагов на сервере, так как сохраняет не только статистику загрузки системы, но и показатели каждого процесса — то есть «долистав» до нужного момента времени можно увидеть, кто этот счастливый момент с LA > 30 создал. И что именно было причиной — IO программ, своп (нехватка памяти), процесор или что-то ещё. Помимо большего количества информации ещё способен двумя цветами подсказывать, какие параметры выходят за разумные пределы.

htop

В отличие от atop, htop не собирает статистику и просто показывает текущее состояние. Второе яркое отличие — нортоноподобная панелька с подсказками кнопок снизу и возможность «навигации» по списку процессов.

Поддерживает выделение процессов и выполнения над ними групповых операций (впрочем, с форк бомбой им не справиться).

Общей статистике по системе показыват мало (зато с шкалой а-ля прогресс-бар), зато имеет обширнейшие инструменты для анализа процессов, включая баловство с скедулингом (приоритеты, affinity), просмотр списка открытых файлов, strace и массу мелких, но приятных фич, таких как контекстный поиск по имени процесса, режим «слежения» за процессом, быстрые операции с процессом и т.д.

iotop

Специализированная утилита для анализа потребления дисковой полосы. К сожалению, не показывает иопсы (это вообще возможно?) Благодаря показу kernel threads способен указать на kcopy/swapper/kflush как источник хруста винта (чего не может atop). Заодно показывает общую загруженность IO системы в Мб/с (чего так же не может atop). Довольно быстрый.

iftop

Опять же, специализированная утилита, позволяющая наблюдать за трафиком в реальном времени. Требует очень рутовых прав и pcap, т.к. работает почти аналогичо tcpdump’у. Показывает загруженность интерфейса (поддерживается только один интерфейс в одной копии), направления трафика и интенсивность трафика.

Читайте также:
Акробат ридер что это за программа и нужна ли она

На средне-загруженном сервере, который внезапно начал жрать инет позволяет очень быстро найти направление, в которое идёт больше всего трафика (в любую сторону). К сожалению, не показывает распределение трафика по процессам.

powertop

Специализированная (ага, снова) утилита от intel для мониторинга потребления мощности (электрической мощности!) разными процессами. В реальности никаких ваттов не показывает, а показывает время, затраченное на обслуживание процессором. Уникальна тем, что показывает прерывания и прочие события ядра на одном уровне с процессами (что позволяет находить нетривиальные ситуации перегрузки сервера и даже определять, от какой железки это исходит). При равной нагрузке позволяет оценить, чей драйвер шустрее работает.

Кроме того, во вкладке device stats позволяет оценить степень загруженности устройства (точнее, драйвера устройства). Для сетевых карт (включая виртуальные, типа tun) показывает pps (packets per seconds).

Во вкладке idle status показывает распределение состояний процессора (C1, C2, C3), что весьма полезно при выяснении «батарейка дохлая или что-то не так с системой?» на ноутбуках.

itop

Ну очень специализированная утилита для мониторинга прерываний (настоящих прерываний, идентификацией их по номеру).

kerneltop

Наверное, должен показывать что-то интересное про ядро. У меня дома ему не понравился System.map, а на сервере — отсутствие /proc/profile.

dnstop

Специализированный анализатор DNS-трафика на интерфейсе. Наверное, был бы очень полезен при починке DNS на контроллере домена, к сожалению, Active Directory на линуксе работает не очень хорошо.

Безусловно полезно для нахождения засранца, загоняющего бинд в неприличный LA.

jnettop

Почти клон iftop, однако имеет забавный режим, когда может слушать соседей и показывать top по их трафику. Не очень работает в эпоху коммутаторов.

Ещё умеет агрегацию адресов (так, чтобы показывать их трафик одной строкой).

sntop

Замечательная штука для скринсейвера или публичного монитора — по конфигу рассылает пинги и показывает, если какой-то хост лёг. В принципе, в рабочих условиях при настроенном конфиге позволяет быстро оценить состояние не очень большого парка серверов (запустили — и сразу красным видно, кто лежит).

latencytop

Я бы с интересом на него посмотрел, но оно требует особого конфига ядра…

xrestop

Монитор потребления ресурсов X-сервера разными приложениями, которые к нему подключились. (Обнаружил, что хром жрёт ресурсов х-сервера много больше, чем опера).

slabtop

Специализируется на структурах данных SLAB ядра, фактически, показывает использование памяти в более тонких категориях, чем «свободно/занято/кеш». View only, несколько режимов сортировки.

Software specific

apachetop

Не столь полезен, как хотелось бы, показывает статистику ответов на запросы. Никакой магии, просто читает логи апача.

sqtop

Топ по логам сквида. С учётом скорости их роста, сначала генерирует промежуточную статистику, а потом уже даёт по ней шариться.

pg_top

Пакет в debian почему-то называется ptop. Мониторит загрузку postgresql.

mytop

Мониторит mysql. Есть альтернативный mtop, делает примерно то же, но заброшен и (в дебиане) выпилен в районе lenny -> squeeze.

xentop

Мониториг доменов xen’а. Интересен тем, что показывает не только память-процессор, но и дисковые операции с сетью. К сожалению, никакого управления, view only. Единственный из всех top’ов, не влазящий в 80 столбцов при выводе.

Список топов, которые я глазами не посмотрел:

hatop — мониторинг haproxy
virt-top — мониторинг за работой libvirt
mctop — мониторинг состояния memcached
perf-top — нашёл документацию, самого perf-top в виде тарбола или пакета не нашёл.

offTOP

Сначала ложные топы кратко:
gkrelmtop — плагин под gkrelm (монитор производительности в гуе) — оффтопик.
ntop — нарушает text-based традицию интерактивных программ и ставится как сайт для апача.
libgtop — библиотека для мониторигна производительности
nload — консольный монитор сетевой активности, в отличие от обычных top’ов не выводит рейтинг, а рисует текстовый график.

А потом настоящие топы без уважительного суффикса ‘top’ в названии.

nethogs

Отображает сетевой трафик от конкретных приложений.

iptstate

Источник: habr.com

КОМАНДА TOP В LINUX

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

В этой статье мы разберемся как пользоваться утилитой top, рассмотрим опции её запуска, а также интерактивные команды, которые вы можете использовать во время работы программы. Кроме того, разберем несколько примеров.

  • 1 КОМАНДА TOP В LINUX
  • 1.1 1. ОПЦИИ И КОМАНДЫ TOP
  • 1.2 2. ЗАПУСК ПРОГРАММЫ
  • 1.3 3. СОРТИРОВКА ПРОЦЕССОВ
  • 1.4 4. НАСТРОЙКА ПОЛЕЙ
  • 1.5 5. ВИРТУАЛЬНЫЕ ОКНА
  • 1.6 7. ЦВЕТНОЙ ВЫВОД
  • 1.7 8. СОХРАНЕНИЕ НАСТРОЕК
  • 1.8 9. ФИЛЬТРАЦИЯ ПРОЦЕССОВ
  • 1.9 10. ЗАВЕРШЕНИЕ ПРОЦЕССОВ
  • 1.10 11. ИНСПЕКТИРОВАНИЕ ПРОЦЕССОВ

КОМАНДА TOP В LINUX

1. ОПЦИИ И КОМАНДЫ TOP

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

  • -v — вывести версию программы;
  • -b — режим только для вывода данных, программа не воспринимает интерактивных команд и выполняется пока не будет завершена вручную;
  • -c — отображать полный путь к исполняемым файлам команд;
  • -d — интервал обновления информации;
  • -H — включает вывод потоков процессов;
  • -i — не отображать процессы, которые не используют ресурсы процессора;
  • -n — количество циклов обновления данных, после которых надо закрыть программу;
  • -o — поле, по которому надо выполнять сортировку;
  • -O — вывести все доступные поля для сортировки;
  • -p — отслеживать только указанные по PID процессы, можно указать несколько PID;
  • -u — выводить только процессы, запущенные от имени указанного пользователя.

С опциями запуска всё, теперь давайте поговорим про интерактивные команды, которые вы можете выполнять во время работы программы.

  • h — вывод справки по утилите;
  • q или Esc — выход из top;
  • A — выбор цветовой схемы;
  • d или s — изменить интервал обновления информации;
  • H — выводить потоки процессов;
  • k — послать сигнал завершения процессу;
  • W — записать текущие настройки программы в конфигурационный файл;
  • Y — посмотреть дополнительные сведения о процессе, открытые файлы, порты, логи и т д;
  • Z — изменить цветовую схему;
  • l — скрыть или вывести информацию о средней нагрузке на систему;
  • m — выключить или переключить режим отображения информации о памяти;
  • x — выделять жирным колонку, по которой выполняется сортировка;
  • y — выделять жирным процессы, которые выполняются в данный момент;
  • z — переключение между цветным и одноцветным режимами;
  • c — переключение режима вывода команды, доступен полный путь и только команда;
  • F — настройка полей с информацией о процессах;
  • o — фильтрация процессов по произвольному условию;
  • u — фильтрация процессов по имени пользователя;
  • V — отображение процессов в виде дерева;
  • i — переключение режима отображения процессов, которые сейчас не используют ресурсы процессора;
  • n — максимальное количество процессов, для отображения в программе;
  • L — поиск по слову;
  • <> — перемещение поля сортировки вправо и влево;
Читайте также:
Интернет Edge что это за программа

Это далеко не все команды top, но их будет вполне достаточно для начала работы, а остальные вы сможете найти в официальной документации по утилите.

2. ЗАПУСК ПРОГРАММЫ

Утилита не всегда установлена по умолчанию, для её установки в Ubuntu используйте команду:

sudo apt install top

Затем для запуска просто выполните в терминале:

Окно можно условно разделить на две части. В верхней части находится информация о системе, общем использовании ресурсов процессора и памяти, раздела подкачки, и так далее. В нижней части окна расположен список запущенных процессов с информацией, отсортированных по определённому полю.

Если все процессы не помещаются на одном экране, их можно листать с помощью стрелок вверх и вниз. Если не помещаются все колонки — с помощью стрелок вправо и влево:

Если вы хотите отображать только те процессы, которые используют ресурсы процессора используйте команду i:

3. СОРТИРОВКА ПРОЦЕССОВ

Чтобы выделить поле, по которому сейчас выполняется сортировка нажмите клавишу y. После этого вся колонка будет выделена жирным:

4. НАСТРОЙКА ПОЛЕЙ

По умолчанию выводятся далеко не все поля, а только те, что чаще всего используются. Но вы можете включить вывод других полей, отключить не нужные, а также изменить порядок их расположения. Для этого введите команду F:

Откроется новое окно в псевдоинтерфейсе программы, в котором будут выведены все поля. Я не буду описывать поля в этой статье, поскольку я это сделал в статье про команду ps:

Поля, которые сейчас отображаются выделены жирным и отмечены звездочкой. Вы можете перемещаться по ним с помощью стрелок вверх или вниз. Для того чтобы добавить или убрать поле нажмите на нём d или пробел.

Для того чтобы переместить поле, нажмите на нём Enter, а затем стрелку вправо. После этого поле будет захвачено и вы сможете двигать его вверх или вниз. Затем надо отпустить поле на нужном месте с помощью клавиши Enter.

После завершения настройки можно вернуться обратно в интерфейс программы с помощью клавиши q.

5. ВИРТУАЛЬНЫЕ ОКНА

Программа имеет четыре окна для вывода данных. Так они называются в документации, но мне больше нравится название формат отображения. Это def, job, mem и usr. Каждое окно выделяется другим цветом в цветном режиме, а также содержит разный набор колонок. Для просмотра всех окон используйте команду A, а для переключения между ними — a:

Текущее окно отображается в левом верхнем углу.

Когда выберите нужное окно снова нажмите A, чтобы вернуться в обычный режим.

7. ЦВЕТНОЙ ВЫВОД

По умолчанию команда top выводит всё в чёрно-белом цвете, однако вы можете включить цветной вывод. Для этого нажмите клавишу z:

Как я уже говорил, у каждого окна данных есть своя цветовая схема, вы можете настроить их под себя. Для этого надо использовать команду Z:

Здесь каждому элементу цветовой схемы отведена своя буква в верхнем регистре, а цвету — в нижнем. Сначала надо выбрать элемент, затем цвет для него. Когда завершите нажмите w для сохранения и редактирования цветовой схемы следующего окна или Enter для сохранения и выхода.

8. СОХРАНЕНИЕ НАСТРОЕК

Все эти настройки не имели бы смысла, если бы их нельзя было сохранить для восстановления при следующем запуске. Для сохранения текущих настроек программы используйте команду W.

Она записывает все внесённые настройки в файл ~/.toprc и при следующем запуске они будут восстановлены.

9. ФИЛЬТРАЦИЯ ПРОЦЕССОВ

Чтобы отфильтровать процессы, запущенные от имени определённого пользователя используйте команду u:

После ввода команды она попросит ввести имя пользователя или его UID. Также можно фильтровать процессы по любому другому полю. Для этого нажмите клавишу o, затем введите условие фильтра в виде:

ИМЯ_ПОЛЯ=значение

Если вы выполните команду o ещё раз, то программа предложит создать ещё один фильтр. Чтобы сбросить фильтры используйте команду =.

10. ЗАВЕРШЕНИЕ ПРОЦЕССОВ

Чтобы завершить процесс используйте команду k. После ввода команды утилита попросит набрать PID идентификатор процесса, который надо завершить:

Затем программа спросит какой сигнал процессу надо отправить:

Можно оставить по умолчанию, тогда будет отправлен SIGTERM или же ввести любой другой код, например 9 для SIGKILL.

11. ИНСПЕКТИРОВАНИЕ ПРОЦЕССОВ

Ещё одна интересная возможность команды top — это инспектирование процессов. Для того чтобы эта функция заработала надо сначала открыть файл ~/.toprc и добавить в конец такие строки:

pipe Open Files lsof — P — p % d 2 > br >file NUMA Info / proc / % d / numa_maps < br >pipe Log tail — n200 / var / log / syslog | sort — Mr

После этого перезапустите top и нажмите сочетание клавиш Shift+y.

Утилита попросит ввести PID процесса, который надо инспектировать. После этого откроется новое псевдоокно в котором можно выбрать три вкладки:

Для выбора вкладки нажмите Enter. Затем можете просматривать нужные данные, чтобы вернуться обратно ещё раз нажмите Enter.

ВЫВОДЫ

Из этой статьи вы узнали что из себя представляет команда top Linux. Как видите, утилита довольно мощная, хотя при первом запуске сложно подумать что она столько всего может и будет выглядеть настолько красиво если её настроить.

Источник: darksf.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru