Перейти к содержанию

11. Мониторинг процессов в Linux

Введение

Мониторинг процессов — одна из ключевых задач системного администратора. От правильного анализа процессов зависит:

  • стабильность работы системы,
  • выявление неэффективных или зависших приложений,
  • контроль потребления ресурсов (CPU, RAM, диск, сеть),
  • диагностика проблем производительности.

Linux предоставляет множество инструментов для анализа процессов, но четыре из них являются основными:

  • ps — статический снимок процессов,
  • top — динамический монитор,
  • htop — улучшенная версия top с удобным интерфейсом,
  • btop — современный визуальный монитор ресурсов.

ps — статический снимок процессов

ps (process status) выводит список процессов в конкретный момент времени. Это не интерактивный инструмент — он просто выводит информацию и завершает работу.

1. Основные возможности

  • просмотр списка процессов;
  • вывод PID, PPID, UID, состояния;
  • фильтрация по пользователям и параметрам;
  • использование в скриптах;
  • комбинации с grep.

2. Основные команды

Посмотреть все процессы:

ps aux

Показать дерево процессов:

ps fax

Показать только определённые поля:

ps -eo pid,ppid,user,stat,cmd

Найти конкретный процесс:

ps aux | grep sshd

3. Когда использовать ps

  • для скриптов автоматизации,
  • для диагностики зависших процессов,
  • для поиска конкретных PID,
  • для анализа краткого состояния системы.

top — базовый интерактивный монитор процессов

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

1. Что показывает top

  • загрузку CPU,
  • использование памяти,
  • Load Average,
  • список процессов в реальном времени,
  • приоритет (PR), nice (NI), время выполнения (TIME+).

2. Основные клавиши управления

  • q — выход,
  • k — убить процесс по PID,
  • h — помощь,
  • 1 — показать загрузку каждого ядра,
  • M — сортировка по памяти,
  • P — сортировка по CPU.

3. Когда использовать top

  • при высокой нагрузке на CPU,
  • чтобы увидеть, какой процесс «съедает» ресурсы,
  • для общего мониторинга сервера.

htop — улучшенный монитор процессов

htop — более удобная и современная альтернатива top.

1. Отличия от top

  • цветовое оформление,
  • полосы загрузки CPU, RAM, Swap,
  • древовидный список процессов (tree mode),
  • можно управлять мышью,
  • удобно завершать процессы.

2. Основные возможности

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

3. Основные клавиши

  • F6 — сортировка,
  • F9 — завершить процесс,
  • F5 — дерево процессов,
  • F2 — настройки.

4. Когда использовать htop

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

btop — современный монитор ресурсов

btop — один из самых мощных инструментов мониторинга в Linux. Объединяет функциональность top/htop с современным визуальным интерфейсом.

1. Основные функции

  • графики загрузки CPU,
  • графики памяти и swap,
  • мониторинг диска и сети,
  • дерево процессов,
  • подробная статистика по каждому процессу.

2. Особенности

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

Запуск:

btop

3. Когда использовать btop

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

Сравнительная таблица инструментов

Инструмент Тип Описание Реальное время Удобство Лучшее применение
ps статический Снимок процессов ⭐⭐ Скрипты, точечный поиск
top интерактивный Базовый монитор ✔️ ⭐⭐⭐ Быстрая диагностика
htop интерактивный Улучшенный топ ✔️ ⭐⭐⭐⭐ Удобный анализ, дерево процессов
btop интерактивный Современный визуальный монитор ✔️ ⭐⭐⭐⭐⭐ Глубокий мониторинг, графики

Заключение

Мониторинг процессов — важнейшая часть работы администратора.

Понимание работы ps, top, htop и btop позволяет:

  • диагностировать проблемы производительности,
  • находить зависшие процессы,
  • контролировать использование CPU и памяти,
  • анализировать состояние сервисов.

Каждый инструмент подходит для своих задач:

  • ps — анализ и скрипты;
  • top — базовый мониторинг;
  • htop — удобный интерфейс и дерево процессов;
  • btop — лучший визуальный анализ ресурсов.