- Использование команды top в ОС Linux
- Введение
- Работа с командой top
- Использование top в фоновом режиме
- Параметры команды top
- Отображение текущей версии
- Определение задержки между обновлениями экрана
- Получение списка столбцов, поддерживающих сортировку
- Сортировка вывода команды top по имени столбца
- Отображение процессов определённого пользователя
- Отображение дополнительных столбцов в таблице top
- Переключение режимов
- Смена цветов
- Резюме
- Команда top в Linux
- Запуск команды top и расшифровка таблицы
- Расшифровка данных перед таблицей
- Добавление столбцов и сортировка таблицы top
- Консольная команда TOP в системах Linux
- Некоторые полезные сочетания клавиш и функций
- Расшифровка значений индикаторов команды top
- Читайте также
- Контроль нагрузки и процессов: top, htop, atop
- Сведения о системе
- Сведения о процессах
- Управление
Использование команды top в ОС Linux
Введение
Команда top используется в операционной системе Linux для отображения всех активных процессов внутри неё. Данная статья рассказывает о работе с командой top, предоставляя обзор её параметров и отображаемой информации.
Работа с командой top
В простейшем случае, для того, чтобы отобразить активные процессы, нужно просто ввести в терминале Linux следующее:
При этом отображается следующая информация:
В первой строке отображается:
- Время
- Время работы компьютера
- Число пользователей
- Средняя нагрузка (за последний час, полчаса и 15 минут)
Во второй строке отображается:
- Общее число задач
- Количество активных задач
- Количество отложенных задач
- Количество приостановленных задач
- Количество задач-зомби
В третьей строке в процентах отображается:
- Загрузка ЦП задачами пользователя
- Загрузка ЦП системой
- Загрузка ЦП процессами с низким приоритетом
- Время бездействия ЦП
- Загрузка ЦП операциями ввода/вывода
- Загрузка ЦП обработкой аппаратных прерываний
- Загрузка ЦП обработкой программных прерываний
- Время, “украденное” гипервизором
В третьей строке отображается:
- Общий объём доступной системе памяти
- Объём свободной памяти
- Объём используемой памяти
- Объём буферного кэша
В четвёртой строке показан:
- Общий объём SWAP (раздела подкачки)
- Объём свободной памяти в SWAP
- Объём использованной памяти в SWAP
- Объём доступной памяти.
В основной таблице отображается:
- ID процесса
- Уровень пользовательского приоритета
- Уровень “вежливости”
- Объём виртуальной памяти, используемой процессом
- Объем физической памяти, используемый процессом
- Объём совместно используемой памяти
- Коэффициент загрузки ЦП процессом, %
- Коэффициент загрузки памяти процессом, %
- Время работы процесса
- Команда
Использование top в фоновом режиме
Получить доступ к команде top и при этом не вводить её каждый раз в терминал весьма просто.
Для того, чтобы приостановить top и продолжить пользоваться терминалом, достаточно нажать Ctrl+Z.
Вернуть top на первый план можно командой fg.
Параметры команды top
-h – отображает текущую версию
-c – переключает столбец command между отображением команды и имени программы
-d – устанавливает задержку между обновлениями экрана
-o – выполняет сортировку по имени
-p – показывает только процессы с заданными ID
-u – показывает только процессы определенного пользователя
Отображение текущей версии
Для того, чтобы получить информацию о версии top, введите следующее:
Вывод при этом имеет следующий вид:
Определение задержки между обновлениями экрана
Для того чтобы задать задержку между обновления экрана во время использования top, наберите следующее:
Например, чтобы обновлять содержимое каждые 5 секунд, введите top -d 5
Получение списка столбцов, поддерживающих сортировку
Для того чтобы получить список столбцов, по которым можно выполнить сортировку, введите следующее:
Команда top выводит множество столбцов, и вы, вероятно, захотите перенаправить вывод и отобразить его при помощи less. Для этого введите:
Сортировка вывода команды top по имени столбца
Чтобы выбрать столбец, по которому можно выполнить сортировку, воспользуйтесь алгоритмом из предыдущего раздела, затем выполните сортировку используя следующий синтаксис:
Например, сортировку по столбцу %CPU можно выполнить при помощи этой команды:
Отображение процессов определённого пользователя
Для того чтобы показать процессы, запущенные определённым пользователем, используйте команду следующего вида:
Например, для того, чтобы отобразить все процессы пользователя gary, введите следующее:
Отображение дополнительных столбцов в таблице top
Во время работы top нажмите клавишу “F” чтобы увидеть список полей, которые можно отобразить в таблице.
Навигация по списку полей осуществляется с помощью клавиш-стрелок.
Чтобы отобразить определённое поле, нажмите клавишу “D”. Чтобы скрыть поле, нажмите “D” ещё раз. Рядом с отображаемыми полями появляется символ звёздочка (*).
Вы можете активировать сортировку таблицы по определенному параметру, просто выделив его и нажав клавишу “S”.
Для того, чтобы изменения вступили в силу, нажмите клавишу “Enter”. Выйти из меню можно при помощи клавиши “Q”.
Переключение режимов
Во время работы top вы можете нажать клавишу “A”, чтобы переходить между стандартным и альтернативным представлением.
Смена цветов
Для того, чтобы изменить цвет значений, отображаемых в top, нажмите клавишу “Z”.
Смена цвета осуществляется в три стадии:
- Нажмите “S” для того, чтобы изменить цвет общих данных, “M” – сообщений, “H” – заголовков столбцов, “T” – информации о задачах.
- Выберите желаемый цвет для выбранного участка. 0 – черный, 1 – красный, 2 – зеленый, 3 – желтый, 4 – синий, 5 – пурпурный, 6 – голубой, 7 – белый.
- Подтвердите свой выбор нажатием клавиши “Enter”. С помощью клавиши “B” можно применить полужирное начертание текста.
Резюме
Команда top имеет множество параметров, для более подробной справки введите в терминале следующую команду:
Источник
Команда top в Linux
Любой сервер, каким бы мощным он ни был, имеет ограниченный объем ресурсов. Каждая программа, работающая в активном или фоновом режиме, использует определенное количество виртуальной и физической памяти, процессорного времени и т.д. Иными словами, создает определенную нагрузку на сервер. Чтобы посмотреть, насколько система загружена в данный момент времени, используют консольную команду top.
Команда top в Linux системах позволяет вывести в виде таблицы перечень запущенных процессов и оценить, какой объем ресурсов они потребляют, т.е., какую нагрузку создают на сервер и дисковую подсистему. Такая информация помогает в дальнейшем оптимизировать работу системы.
Запуск команды top и расшифровка таблицы
Подключитесь к серверу по SSH и введите в консоли top — Enter и вы увидите таблицу, в которой выведен список запущенных процессов. Изначально перечень составлен в порядке убывания нагрузки, приходящейся на процессор.
О том, как сортировать данные по критерию, который нужен вам, поговорим дальше. А сейчас давайте рассмотрим, как расшифровать столбцы в таблице и о чем свидетельствуют значения в каждом из них.
Первые два столбика — номер процесса (PID) и имя пользователя, его запустившего (USER).
Следующие 2 столбца показывают, какой приоритет имеет процесс в данный момент (PR) и приоритет, присвоенный ему командой NICE (NI).
Информация, содержащаяся в других колонках, характеризует непосредственно уровень потребления ресурсов. Расшифровываются они следующим образом:
**VIRT — виртуальная память, которую использует процесс
**RES — физическая память, занятая данным процессом
**SHR — общий объем памяти, которую данный процесс делит с другими
**S — текущий статус процесса: R — running; S — sleeping, Z — zombie
**%CPU — процент используемого времени центрального процессора
**%MEM — процент ОЗУ, используемой процессом
**TIME+ — продолжительность работы процесса с момента запуска
**COMMAND — название команды (программы), которая инициировала процесс.
Расшифровка данных перед таблицей
Полезная информация об использовании ресурсов содержится не только в самой таблице, но и в пяти строках, которые ей предшествуют. Они являются своего рода summary по всем процессам.
Первая строчка (top) дает нам общее представление о загрузке системы. Здесь указано:
** текущее время
** up — продолжительность работы системы с момента запуска
** user — текущее количество пользователей системы
** load average — средняя загруженность системы одну минуту назад, пять и 15 соответственно.
Считается, что в норме данный показатель не должен превышать 1 для одноядерных процессоров. Соответственно, значение load average, равное количеству ядер, является предельным.
Вторая строка данных дает информацию об общем количестве процессов в системе, а также об их статусе: выполняемые (running), в ожидании (sleeping), приостановленные (stopped), zombie.
Далее идет информация о состоянии процессора (%Cpu), ОЗУ (Mem), SWAP.
Добавление столбцов и сортировка таблицы top
Теперь вы знаете, какая информация зашифрована в каждом столбце таблицы top. Как было отмечено в начале, базовая сортировка данных осуществляется по уровню использования времени ЦПУ, оно же %CPU. Чтобы выполнить в top сортировку по памяти (%MEM), достаточно ввести Shift+M в режиме работы команды top. Если интересует, какой из процессов дольше всего работает, нажмите Shift+T, и увидите интересующую информацию в колонке TIME+. Можно отсортировать процессы по их номеру (PID), набрав на клавиатуре Shift+N.
Чтобы вернуться к режиму сортировки по уровню потребления ресурсов процессора, воспользуйтесь комбинацией Shift+P.
Далеко не все способы сортировки можно задать с помощью «горячих клавиш». Например, для определения процессов, которые больше всего потребляют SWAP, используйте меню выбора полей, которое вызывается комбинацией Shift+F.
С помощью клавиш навигации находим SWAP (или любой другой нужный параметр), клавишей «d» закрепляем его добавление в общую таблицу команды top (в качестве подтверждения вашего выбора рядом появится символ «*»). Чтобы задать сортировку по SWAP, здесь же нажимаем «s» и выходим из меню (ESC). Готово!
Убедиться, что сортировка работает по заданному признаку, можно нажав «x». Колонка с соответствующим признаком будет подсвечена (выделена жирным шрифтом).
Теперь вы не только знаете, как расшифровать содержащуюся в таблице информацию, но и умеете добавлять в нее необходимые параметры, работать с фильтрами. Благодаря команде top вы легко найдете процессы, которые потребляют наибольшее количество ресурсов и/или работают без надобности.
Теперь оптимизировать работу сервера гораздо проще!
Источник
Консольная команда TOP в системах Linux
Top (table of processes) — команда предназначена для вывода списка работающих процессов в системе и информацию о них.
По умолчанию команда Top в реальном времени сортирует работающие процессы по нагрузке на процессор системы.
Некоторые полезные сочетания клавиш и функций
Для вызова справки по всем сочетаниям клавиш – нажать «h» на клавиатуре.
Сортировка по объёму памяти:
Сортировка по времени
Cортировка в одну или в другую сторону (использовать, чтобы больший параметр был вверху)
Другие клавиши, по которым можно сортировать каждую из колонок:
Сортировка по CPU:
Чтобы убить процесс нужно нажать k и ввести номер PID.
Расшифровка значений индикаторов команды top
Нагрузка на процессор (CPU) это первые два значения:
Кнопка «1» выведет нагрузку по каждому из процессоров.
S — состояние процесса:
Клавиша «С» отобразит в строке COMMAND ключи с которыми запущены процессы.
Клавиша «Q» — выйти из команды Top.
Читайте также
Кстати, на сайте нет рекламы. У сайта нет цели самоокупаться, но если вам пригодилась информация можете задонатить мне на чашечку кофе в макдаке. Лайкнуть страницу или просто поблагодарить. Карма вам зачтется.
Источник
Контроль нагрузки и процессов: top, htop, atop
Каждый запущенный на сервере процесс оказывает нагрузку, и если ресурсов сервера становится недостаточно, могут возникать проблемы: медленная работа сайта, задержки в выполнении скриптов и так далее.
Проанализировать, что именно нагружает сервер, можно с помощью специальных утилит. Их довольно много; в статье мы рассмотрим три из них:
В целом они довольно похожи; работа с htop может быть немного удобнее за счет интерактивности; при этом top предустановлена во всех дистрибутивах Linux и не требует отдельной установки; atop отличается возможностью ведения логов.
При медленной работе сайта дополнительно рекомендуем воспользоваться сервисом PageSpeed Insights от Google, который анализирует скорость загрузки страниц и сообщает, каким образом можно оптимизировать работу сайта. Также можно попытаться оптимизировать работу сайта за счет переноса каталога временных файлов MySQL в tmpfs.
Как было сказано выше, утилита top предустановлена в UNIX-системах, поэтому для запуска вам достаточно подключиться к серверу по SSH и выполнить команду top.
Вывод утилиты выглядит следующим образом:
В верхней части выводится информация о системе, ниже — список процессов. Вывод обновляется каждые 2 секунды. Самые «жадные» до ресурсов процессы, оказывающие самую большую нагрузку на процессор, будут выведены вверху списка.
Сведения о системе
Слева вверху указано текущее время системы, далее:
Up — время работы системы с последнего запуска.
User — количество текущих пользователей.
Load average — средняя нагрузка на сервер: отображаются значения за одну, пять и 15 минут назад.
Tasks — общее количество запущенных процессов в разных статусах (running — выполняемые; sleeping — в ожидании; stopped — остановленные; zombie — «зомби», дочерние процессы, ожидающие завершения родительского процесса).
Cpu(s) — процент времени процессора, затраченного на выполнение процессов, в том числе:
us — пользовательские процессы (высокое значение данного показателя может указывать, в том числе, на проблемы в коде сайта, необходимость его оптимизации);
sy — процессы ядра;
id — неиспользуемые ресурсы (чем выше этот показатель, тем лучше);
wa — операции ввода/вывода, т.е. дисковые операции.
Mem, Swap — сведения об использовании оперативной памяти (total — общий объем, free — объем свободной памяти, used — объем использованной памяти).
Сведения о процессах
По умолчанию процессы выстроены в таблице по размеру нагрузки на процессор, от большего значения к меньшему.
PID — идентификатор процесса;
USER — пользователь, запустивший процесс;
PR — приоритет процесса;
NI — измененный приоритет (присвоенный пользователем с помощью команды nice);
VIRT — объем используемой виртуальной памяти (здесь выводится тот объем памяти, который был запрошен процессом, даже если фактически используется меньше);
RES — объем используемой оперативной памяти (в данном случае, если процесс запросил 50Мб памяти, а использует 10Мб, будет выведено 10Мб);
SHR — объем памяти, разделяемой с другими процессами (т.е. память, которая может быть использована другими процессами);
S — статус процесса (running — запущен; sleeping — в ожидании; zombie — процесс-«зомби»);
%CPU — процент использования процессорного времени;
%MEM — процент использования оперативной памяти;
TIME — общее время работы процесса;
COMMAND — имя процесса (команда, которой был запущен процесс).
Управление
Для работы с утилитой top используются следующие клавиши:
Пробел — обновить вывод
M — сортировка по используемой памяти
P — сортировка по нагрузке на процессор (используется по умолчанию)
T — сортировка по времени работы процесса
A — сортировка по максимальному потреблению различных ресурсов
u — сортировка по имени пользователя (потребуется ввести имя пользователя)
k — завершить процесс (потребуется указать его идентификатор, PID)
n — изменить количество процессов в выводе (потребуется указать нужное количество)
c — вывести полный путь запущенного процесса (столбец COMMAND)
h — вывод справки
q — выход из программы
В отличие от top, утилиту htop сначала необходимо установить на сервер:
Ubuntu / Debian:
CentOS:
И после запустить:
Вывод команды выглядит следующим образом:
Аналогично выводу top, в верхней части представлена информация о системе, ниже — список процессов. Значения столбцов в htop те же, что в top (они описаны выше).
Сверху слева вы можете видеть данные о нагрузке каждого ядра процессора, объем занятой памяти, сведения о количестве процессов, значения load avearage (средней нагрузки) за последние 1, 5 и 15 минут и аптайм системы.
По умолчанию процессы отсортированы по уровню нагрузки на процессор, от большего к меньшему.
Чтобы отсортировать их по занятой памяти (или любому другому параметру), просто кликните на название нужного столбца, например MEM. Для обратной сортировки (от меньшего к большему) достаточно кликнуть на тот же столбец еще раз. Также для управления сортировкой можно использовать клавиши M (сортировка по памяти), P (по процессору), T (по времени), аналогично утилите top.
Пробел — отметить процесс (таким образом можно помечать процессы для групповой операции с ними, например, завершения).
u — вывести процессы конкретного пользователя.
Для управления используются клавиши F1 — F10:
F1 — вывод справки
F2 — настройка вывода (добавление, удаление столбцов, отображение расширенной информации в верхнем блоке и пр.)
F3 — поиск процессов
F4 — фильтрация процессов (вывод процессов, имеющих в названии указанное слово)
F5 — вывод дерева процессов (родительские и дочерние процессы)
F6 — изменить тип сортировки
F7 / F8 — повышение / понижение приоритета
F9 — завершение процесса (в отличие от top, не требуется указание PID — просто выделите с помощью мыши или клавиатуры нужный процесс и нажмите F9. Для подтверждения завершения процесса нажмите Enter, для отмены — Esc).
F10 — выход из программы
Функции для каждой клавиши могут изменяться, в зависимости от того, в каком меню программы вы находитесь, при этом доступные действия по соответствующим клавишам будут отображаться внизу окна, что упрощает работу с утилитой.
Основным преимуществом утилиты atop является функция ведения логов. Благодаря этому можно не только контролировать нагрузку в текущий момент, но и отслеживать работу процессов за прошедшие дни, чтобы диагностировать плавающие ошибки, которые сложно «поймать» при мониторинге в реальном времени.
Утилиту необходимо установить на сервер:
Ubuntu / Debian:
CentOS:
Также рекомендуем добавить atop в автозагрузку:
Ubuntu / Debian / CentOS 7:
Источник