Мониторинг процессов Linux — это своего рода вмешательство в работу этой операционной системы. В основном Линуксы в этом не нуждаются, если они работают нормально или вам не нужен от этой ОС нестандартный функционал.
Специфика работы Линукса в том, что он каждую отдельную программу запускает как отдельный процесс. И неважно, программа запускается «руками» или самой системой. Отдельный процесс в Линуксе можно представить как некий контейнер с отдельными инструкциями и информацией о ходе выполнения программы.
Процесс в Linux
Суть в том, что процесс в Линуксе — это и есть отдельная работающая программа в системе. Поэтому каждому рабочему процессу выделяется часть системных ресурсов и присваивается отдельный идентификатор, по которому чаще и проводят мониторинг процессов Linux. Каждому процессу присваивается отдельный PID (идентификатор), и в работающей системе их может насчитываться тысячи. Отсчет начинается с PID1, а далее по возрастанию номер идентификатора увеличивается на единицу больше.
Чтобы провести мониторинг ресурсов системы Linux и проверить все запущенные процессы, обычно используют специальные утилиты. О них мы сегодня немного поговорим.
Как происходит мониторинг процессов Linux
Для того, чтобы провести мониторинг процессов Linux, есть большое количество разнообразных утилит. Есть многофункциональные и простые, ниже мы приведем список самых популярных из них:
-
Top. Это предустановленная утилита во многих системах Линукс, вводится прямо в Консоль и способна вывести информацию о всех запущенных процессах системы.
-
Htop. Используется как альтернатива первой утилиты, также способна показать все работающие процессы.
-
Atop. Его работа нагружает сервер, однако он немного функциональней первых двух утилит.
-
Apachetop. Способна промониторить трафик в онлайн-режиме и показать подробную информацию о трафике ваших веб-сайтов.
-
Ftptop. Покажет все запущенные ftp-соединения.
-
Mytop. Позволяет просмотреть все запросы к SQL.
-
Powertop. Определяет самые энергоемкие программы вашего компьютера на Линуксе.
-
Iotop. Похожа на утилиту top и выводит информацию об обращениях к hard-диску Linux.
-
Ntopng. Анализирует все IP-адреса, которые что-то скачивали с вашего сервера.
-
Iftop. Покажет все активные интернет-соединения, скорость сети, трафик и др.
-
Bandwidthd. Способна проконтролировать трафик пользователей.
-
EtherApe. Выводит сетевой трафик в виде графика: покажет поток, номер порта, активность в сети.
-
Ethtool. Используется для настройки сетевого интерфейса Линукса.
-
NetHogs. Отследит и покажет любую сетевую активность.
-
Iptraf. Отслеживает весь трафик ТСР-соединений.
-
MRTG. Отследит все сетевые соединения и сгенерирует html-страницу с результатами.
-
Traceroute. В случае каких-то сбоев поможет отследить, где возник сбой.
-
IPTState. Покажет все открытые порты и разложит информацию в удобную таблицу.
-
Darkstat. Способна вывести подробные результаты использования сети.
-
Conky. Системный монитор с широким набором функций, выведет все основные показатели работы операционной системы.
-
Glances. Осуществит мониторинг всех процессов Linux в онлайн-режиме, выводит всю информацию на экран.
-
Saidar. Очень легкий инструмент, который выведет только основную информацию об ОС.
-
RRDtool. Это целый набор многофункциональных утилит, которые мониторят, хранят, обрабатывают и отображают любые данные, влияющие на работу системы.
-
Linux Process Explorer. Это графическая программа, которая проводит мониторинг системы Linux.
-
Discus. Покажет наличие свободного места в выбранной системе файлов; если не задать систему, то программа отобразит общую статистику всех систем.
-
XOSView. Классический инструмент для обзора процессов системы.
-
Dstat. Не только проведет качественный мониторинг системы, но и проанализирует производительность, продиагностирует сбои системы в онлайн-режиме.
-
Incron. Определяет все события, которые происходили в операционной системе.
-
Monitorix. Несложная утилита для мониторинга ресурсов системы, покажет все: от температуры процессора до обзора жестких дисков.
-
Gnome System Monitor. Осуществит эффективный мониторинг процессов Linux и выведет нужную информацию в виде простых графиков.
Всевозможных утилит огромное множество, представленные выше — это лишь небольшая часть утилит, которые могут быть использованы, чтобы осуществить полный или частичный мониторинг процессов Linux.