Главная > Управление пакетами и системой > top

Руководство по команде top: мониторинг системных процессов в реальном времени

Команда top (таблица процессов) является инструментом, используемым в операционных системах Linux и Unix для мониторинга активности процессов системы в реальном времени. Она предоставляет динамический обзор текущего состояния системы, включая использование CPU, объем памяти, список запущенных процессов и т. д., что необходимо для диагностики проблем производительности и понимания использования системных ресурсов. В этом руководстве вы научитесь основным способам использования и взаимодействия с командой top.

Обзор top

Команда `top` периодически обновляет и отображает использование ресурсов системы (CPU, память, swap) и подробную информацию о каждом процессе. Это позволяет легко определить, какие процессы используют много системных ресурсов, а также мониторить общее состояние здоровья системы.

Основная роль top

Команда top в основном используется для следующих целей:

Основные области применения

  • {'key': 'Мониторинг системы', 'value': 'Проверка использования CPU, памяти и пространства swap в реальном времени.'}
  • {'key': 'Управление процессами', 'value': 'Определение состояния запущенных процессов и при необходимости их завершение или изменение приоритетов.'}
  • {'key': 'Диагностика проблем с производительностью', 'value': 'Анализ причин замедления системы или отсутствия ответа.'}
  • {'key': 'Оптимизация использования ресурсов', 'value': 'Идентификация процессов, использующих чрезмерные ресурсы, и принятие мер.'}

Структура вывода top

Команда top делит информацию на две основные части:

Сводная информация в верхней части

Показывает общее состояние системы.

  • uptime: Время, прошедшее с момента загрузки системы
  • load average: Средняя нагрузка на систему за последние 1, 5 и 15 минут (количество процессов в очереди на выполнение)
  • Tasks: Общее количество процессов, запущенных, находящихся в спящем состоянии, остановленных и зомби
  • %Cpu(s): Использование CPU (us: пользовательский, sy: системный, ni: nice, id: свободный, wa: ожидание I/O и т. д.)
  • MiB Mem: Объем физической памяти (RAM): всего, использовано, свободно, использование буферов/кэша
  • MiB Swap: Объем swap-памяти: всего, использовано, свободно

Список процессов в нижней части

Показывает подробную информацию о каждом запущенном процессе. Этот список по умолчанию сортируется по использованию CPU (%).

  • PID: Идентификатор процесса
  • USER: Пользователь, запустивший процесс
  • PR: Приоритет (Priority)
  • NI: Значение Nice (используется для регулировки приоритета)
  • VIRT: Объем виртуальной памяти, используемой процессом
  • RES: Объем фактической физической памяти (RAM), используемой процессом (Resident Memory)
  • SHR: Объем памяти, который процесс использует совместно (Shared Memory)
  • S: Состояние процесса (R: выполняется, S: спит, Z: зомби, T: остановлен и т. д.)
  • %CPU: Использование CPU процессом (в реальном времени)
  • %MEM: Использование памяти процессом (в реальном времени)
  • TIME+: Общее время CPU, использованное процессом
  • COMMAND: Команда, запустившая процесс

top против htop

htop является улучшенной версией top, предлагающей более удобный интерфейс (цвет, поддержка мыши) и функции (прокрутка, поиск, прямое завершение). В большинстве случаев htop более удобен. Если htop не установлен, его можно установить через менеджер пакетов (например, sudo apt install htop).

Опции и взаимодействие команды top

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

1. Опции запуска командной строки

2. Взаимодействие с top во время выполнения

Сгенерированная команда:

Комбинируйте команды.

Описание:

`top` Запускает команду.

Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.

Примеры использования

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

Запуск базового мониторинга системы

top

Запуск команды `top`, которая обновляет текущее состояние системы и список процессов каждые 3 секунды.

Проверка 5 процессов с наибольшим использованием CPU (с интервалом 1 секунда)

top -d 1 -n 5

После выполнения `top`, обновляет 5 раз с интервалом 1 секунда и завершает работу. Это полезно для быстрого выявления причин нагрузки на CPU в определенный момент времени.

Мониторинг только процессов определенного пользователя (root)

top -u root

Фильтрует и показывает только процессы, запущенные всеми пользователями `root`. Полезно для отслеживания использования ресурсов системными демонами или службами.

Мониторинг только определенного идентификатора процесса (PID)

top -p 12345

Мониторинг информации только о процессе с идентификатором `12345` в реальном времени. Полезно для точного отслеживания потребления ресурсов определенным приложением.

Сортировка по использованию памяти (взаимодействие во время выполнения)

top # затем нажмите Shift + m

Во время выполнения `top`, нажмите клавишу `Shift + m`, чтобы отсортировать список процессов по убыванию использования памяти. (это нельзя указать напрямую в командной строке)

Завершение определенного процесса (взаимодействие во время выполнения)

top # затем нажмите 'k', введите PID, затем опционально '9' для SIGKILL

Во время выполнения `top`, нажав клавишу `k`, появится приглашение ввести PID процесса для завершения. Введите PID и нажмите `Enter`, чтобы по умолчанию отправить сигнал SIGTERM. Чтобы завершить принудительно, введите номер сигнала 9.



Те же команды в категории