Обзор 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.