Введение
Добро пожаловать на практическое занятие по команде Linux top. В ходе этой лабораторной работы вы научитесь использовать команду top для мониторинга системных процессов и потребления ресурсов в режиме реального времени. Этот навык является базовым для системных администраторов, разработчиков и всех, кому необходимо понимать и контролировать производительность системы.
Представьте, что вы — младший системный администратор, отвечающий за работу нагруженного веб-сервера. Поступили жалобы на медленную работу сервера, и вам нужно выяснить, какие процессы потребляют больше всего ресурсов. Команда top станет вашим основным инструментом в этом расследовании, позволяя просматривать и анализировать активность системы «на лету».
Базовое использование команды top
Начнем с запуска команды top в ее простейшем виде. Это даст нам динамическое представление о процессах в системе в реальном времени.
Откройте терминал и выполните следующую команду:
top
Вы увидите экран, похожий на этот:
top - 14:30:23 up 5:10, 1 user, load average: 0.15, 0.22, 0.28
Tasks: 213 total, 1 running, 212 sleeping, 0 stopped, 0 zombie
%Cpu(s): 2.0 us, 1.3 system, 0.0 ni, 96.3 id, 0.3 wa, 0.0 hi, 0.0 si, 0.0 st
MiB Mem : 7824.9 total, 2576.8 free, 2935.0 used, 2313.1 buff/cache
MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 4558.1 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1234 user 20 0 3626108 205008 89380 S 2.0 2.6 0:45.85 gnome-shell
5678 user 20 0 859492 51528 38060 S 1.3 0.6 0:10.91 Xorg
9101 user 20 0 722816 36096 29088 S 0.7 0.5 0:05.62 gnome-terminal
Данные на экране постоянно обновляются (по умолчанию каждые 3 секунды). Давайте разберем, что мы видим:
- Первая строка показывает текущее время, время аптайма (работы системы с момента включения), количество пользователей и среднюю нагрузку (load average).
- Вторая строка отображает общее количество задач и их состояния (выполняются, спят, остановлены, зомби).
- Третья строка показывает процент использования ресурсов процессора (CPU).
- Четвертая и пятая строки отображают использование оперативной памяти и раздела подкачки (swap).
- Таблица ниже содержит информацию об отдельных процессах, по умолчанию отсортированных по интенсивности использования CPU.
Чтобы выйти из top, нажмите клавишу 'q'.
Сортировка процессов в top
По умолчанию top сортирует процессы по использованию процессора. Однако вы можете изменить порядок сортировки прямо во время работы программы. Давайте попробуем отсортировать процессы по использованию памяти.
- Запустите команду
top:
top
- Пока
topзапущен, нажмите клавишу 'M' (в верхнем регистре). Это переключит сортировку на использование памяти (размер резидентной части памяти — RES) вместо CPU.
Теперь вы увидите, что список процессов перестроился, и самые «прожорливые» до памяти программы оказались вверху.
Чтобы снова вернуться к сортировке по использованию CPU, нажмите клавишу 'P' (в верхнем регистре).
Для сортировки по идентификатору процесса (PID) нажмите 'N' (в верхнем регистре).
Чтобы инвертировать текущий порядок сортировки (от меньшего к большему и наоборот), нажмите 'R' (в верхнем регистре).
Помните, что вы всегда можете нажать 'h' или '?' во время работы top, чтобы вызвать справку по всем доступным командам.
Завершив изучение, выйдите из программы, нажав 'q'.
Изменение интервала обновления
По умолчанию top обновляет данные каждые 3 секунды. Вы можете изменить этот интервал. Давайте установим обновление каждую секунду для более динамичного наблюдения.
Запустите top с опцией -d:
top -d 1
Теперь данные на экране будут обновляться чаще. Это полезно, когда нужно отследить кратковременные всплески активности или быстро меняющиеся процессы.
Чтобы изменить интервал обновления прямо во время работы top:
- Нажмите 'd' (в нижнем регистре).
- Введите новую задержку в секундах (например, '0.5' для обновления дважды в секунду).
- Нажмите Enter.
Имейте в виду, что слишком короткие интервалы обновления сами по себе могут потреблять заметную часть ресурсов процессора, поэтому используйте их осмотрительно.
Выйдите из top, нажав 'q'.
Отображение процессов конкретного пользователя
Системным администраторам часто требуется следить за процессами определенного пользователя. Команда top позволяет легко это сделать.
Давайте посмотрим на процессы текущего пользователя (в данной среде это 'labex'):
top -u labex
Теперь в списке будут отображаться только те процессы, владельцем которых является пользователь 'labex'.
Эта функция крайне полезна при поиске причин неполадок, связанных с действиями конкретного пользователя, или когда вы хотите сосредоточиться только на своих задачах в многопользовательской системе.
Выйдите из top, нажав 'q'.
Отображение только активных процессов
Иногда бывает удобно скрыть бездействующие процессы и сосредоточиться только на тех, которые реально что-то делают. В top для этого предусмотрена специальная опция.
Запустите top с флагом -i:
top -i
Эта команда отфильтрует список, оставив только активные процессы — те, которые использовали ресурсы процессора с момента последнего обновления.
Это помогает быстро выявить потребителей ресурсов, не отвлекаясь на сотни «спящих» системных служб.
Выйдите из top, нажав 'q'.
Резюме
Поздравляем! Вы завершили лабораторную работу по использованию команды top для мониторинга системы. Давайте вспомним, что вы изучили:
- Базовый запуск команды
topдля просмотра процессов и ресурсов. - Сортировка процессов по различным критериям (CPU, память, PID) внутри интерфейса.
- Настройка интервала обновления данных.
- Мониторинг процессов конкретного пользователя.
- Фильтрация списка для отображения только активных процессов.
эти навыки станут незаменимыми при управлении системными ресурсами, особенно когда нужно найти «узкие места» в производительности или устранить неполадки.
Вот еще несколько опций и интерактивных команд top, которые не вошли в это занятие:
-b: Запуск в пакетном режиме (полезно для перенаправления вывода в файлы или другие программы).-n: Количество итераций обновления перед автоматическим выходом.- 'k': Завершить процесс (kill) по его PID прямо из интерфейса
top. - 'r': Изменить приоритет процесса (renice).
- 'c': Переключить отображение полного пути команды.
- 'V': Показать информацию о версии.
Помните, что эффективный мониторинг — залог стабильности системы. Регулярное использование top поможет вам обнаруживать и предотвращать проблемы с ресурсами до того, как они критически повлияют на работу сервера.



