Каждое приложение, которое вы используете, или команда, которую вы запускаете в своей системе Linux, создает процесс или задачу. Как системный администратор, вам нужно будет управлять процессами для обеспечения оптимальной производительности системы.
В этом руководстве мы рассмотрим различные команды Linux, которые вы можете использовать для составления списка текущих запущенных процессов и управления ими.
- Система под управлением Linux
- Учетная запись с привилегиями root или sudo
- Доступ к окну терминала / командной строке
Процессы в Linux
Процессы в Linux запускаются каждый раз, когда вы запускаете приложение или выполняете команду. В то время как каждая команда создает один процесс, приложения создают и запускают несколько процессов для разных задач.
По умолчанию каждый новый процесс запускается как foreground процесс. Это означает, что он должен завершиться, прежде чем можно будет начать новый процесс. Запущенные процессы в background позволяет одновременно выполнять другие задачи.
Примечание: Узнайте больше о завершении процессов Linux в нашем руководстве по уничтожению процессов в Linux.
Список запущенных процессов в Linux
Чтобы перечислить запущенные в данный момент процессы, используйте ps
, top
, htop
, and atop
команды Linux. Вы также можете комбинировать ps
команда с pgrep команда для идентификации отдельных процессов.
Список запущенных процессов в Linux с помощью команды ps
В ps Команда Linux создает снимок запущенных в данный момент процессов. В отличие от других команд в этом списке, ps представляет вывод в виде статического списка, не обновляемого в реальном времени.
В ps команда использует следующий синтаксис:
ps [options]
Часто используемый ps параметры команды включают:
- а : Список всех разрушающих процессов для всех пользователей.
-A, -e;
Список всех процессов в системе.- -а : Список всех процессов, кроме лидеров сеанса (случаи, когда идентификатор процесса совпадает с идентификатором сеанса) и процессов, не связанных с терминалом.
- -d : Перечислить все процессы, кроме лидеров сеанса.
--deselect, -N
: Перечислить все процессы, кроме тех, которые удовлетворяют определенному пользователем условию.f
: Отображает иерархию процессов в виде ASCII-арта.- -j : Отображение вывода в формате заданий.
T
: Список всех процессов, связанных с этим терминалом.r
: Список только запущенных процессов.u
: Разверните вывод, чтобы включить дополнительную информацию, например, об использовании ЦП и памяти.-u
: Определите пользователя, процессы которого вы хотите перечислить.x
: Включить процессы без TTY.
Примечание: Ознакомьтесь с полным списком ps параметры команды с помощью man ps.
Запуск ps
команда без каких-либо параметров дает результат, подобный следующему:
Вывод по умолчанию включает следующие категории:
- PID: Идентификационный номер процесса.
- TTY: Тип терминала, на котором выполняется процесс.
- TIME: Общая загрузка ЦП.
- CMD: Имя команды, запустившей процесс.
Используя комбинацию a
, u
, а также x
options приводит к более подробному выводу:
ps aux
Новые категории расширенного вывода включают:
- USER: Имя пользователя, запустившего процесс.
- %CPU: Процент использования ЦП.
- % MEM: Процент использования памяти.
- VSZ: Общая виртуальная память, используемая процессом, в килобайтах.
- RSS: Размер резидентного набора, часть ОЗУ, занятая процессом.
- STAT: Текущее состояние процесса.
- START: Время начала процесса.
Чтобы отобразить запущенные процессы в иерархическом виде, введите:
ps -axjf
Примечание: При использовании более одного ps
параметр команды, содержащий символ тире («—«), вам нужно использовать только один символ тире, прежде чем перечислять параметры. Например, чтобы использовать ps
команда с -e
а также -f
варианты, тип ps -ef
.
Отфильтруйте список процессов по пользователю с помощью:
ps -U [real user ID or name] -u [effective user ID or name] u
Например, отображение списка процессов, запущенных пользователем с именем phoenixnap:
ps -U phoenixnap -u phoenixnap u
Список запущенных процессов в Linux с помощью команды top
В top
команда отображает список запущенных процессов в порядке уменьшения загрузки ЦП. Это означает, что наиболее ресурсоемкие процессы появляются вверху списка:
Выход top
команды обновляются в реальном времени с трехсекундной частотой обновления по умолчанию. В top
Выходные данные команды содержат следующие категории:
- PID: Идентификационный номер процесса.
- USER: Имя пользователя, запустившего процесс.
- PR: Приоритет планирования для процесса.
- NI: Хорошее значение процесса с отрицательными числами, указывающими на более высокий приоритет.
- VIRT: Объем виртуальной памяти, используемый процессом.
- RES: Объем резидентной (физической) памяти, используемой процессом.
- SHR: Общая общая память, используемая процессом.
- S: Статус процесса — R (запущен) или S (спит).
- %CPU: Процент использования ЦП.
- % MEM: Процент использования памяти.
- TIME++: Общая загрузка ЦП.
- COMMAND: Имя команды, запустившей процесс.
В то время как top
команда запущена, используйте следующие параметры для взаимодействия с ней или изменения формата вывода:
- c: Отображение абсолютного пути процесса.
- d: Изменить частоту обновления выходных данных на заданное пользователем значение (в секундах).
- H: Отобразить окно справки.
- k: Убить процесс, указав PID.
- M: Отсортировать список по использованию памяти.
- N: Сортировать список по PID.
- r: Изменить хорошее значение (приоритет) процесса, указав PID.
- z: Изменить выходной цвет, чтобы выделить запущенные процессы.
- q: Выйти из командного интерфейса.
Примечание: Варианты взаимодействия с top
команда чувствительна к регистру. Убедитесь, что вы сначала отключили Caps Lock.
Список запущенных процессов в Linux с помощью команды htop
В htop команда предлагает тот же результат, что и top
команда, но в более легком для понимания и удобном для пользователя виде.
Поскольку большинство дистрибутивов Linux не включают эту команду, установите ее с помощью:
sudo apt install htop
С помощью htop команда предоставляет следующий вывод:
Используйте следующие клавиши для взаимодействия с htop команда:
- Направленные клавиши: Прокрутка списка процессов по вертикали и горизонтали.
- F1: Открыть окно справки.
- F2: Откройте команду настройки htop.
- F3: Поиск процесса по имени.
- F4: Фильтровать список процессов по имени.
- F5: Переключение между отображением иерархии процессов в виде отсортированного списка или дерева.
- F6: Сортировать процессы по столбцам.
- F7: Уменьшить хорошее значение (повысить приоритет) процесса.
- F8: Увеличить приятное значение (уменьшить приоритет) процесса.
- F9: Убить выбранный процесс.
- F10: Выход из командного интерфейса.
Список запущенных процессов в Linux с помощью команды atop
В atop
команда обеспечивает более полный обзор запущенных процессов по сравнению с Топ команда. Начните с установки atop
команда с:
sudo apt install atop
В atop
команда создает вывод, похожий на:
Раздел заголовка выходных данных команды предоставляет обзор системных ресурсов, включая статистику, связанную с процессами и производительностью, а также использование памяти, диска и сети.
В нижнем разделе перечислены запущенные в данный момент процессы и содержатся следующие категории:
- PID: Идентификационный номер процесса.
- SYSCPU: Использование ЦП процессом при обработке системы.
- USRCPU: Загрузка ЦП процессом во время работы в пользовательском режиме.
- VGROW: Объем виртуальной памяти, занятой процессом с момента последнего обновления выходных данных.
- RGROW: Объем физической памяти, занятой процессом с момента последнего обновления выходных данных.
- RUID: Реальный идентификатор пользователя, запустившего процесс.
- ST: Текущий статус процесса.
- EXC: Код выхода после завершения процесса.
- THR: Количество потоков, используемых процессом.
- S: Текущее состояние основного потока процесса.
- CPUNR: Количество процессоров, используемых процессом.
- CPU: Процент использования ЦП процессом.
- CMD: Имя команды, запустившей процесс.
С помощью atop
команда со следующими параметрами изменяет формат вывода:
- -а : Показать только активные процессы.
- -c : Показать командную строку для каждого процесса.
- -d : Показать информацию о диске.
- -l : Показать общие значения как среднее значение в секунду.
- -m : Показать информацию о памяти.
- -n : Показать информацию о сети.
- -s : Показать информацию о планировании процесса.
- -v : Показать подробный вывод.
- -у : Показать отдельные темы.
Используйте следующие флаги для взаимодействия с atop
команда:
- а: Сортировать по наиболее активным ресурсам.
- c: Сортировать по потреблению ЦП.
- d: Сортировать по активности диска.
- m: Сортировать по использованию памяти.
- n: Сортировать по сетевой активности.
Найдите идентификаторы процессов с помощью команды pgrep
С помощью pgrep команда позволяет искать конкретный процесс. В pgrep команда использует следующий синтаксис:
pgrep [process name]
Например, используйте следующую команду для поиска Firefox процесс:
pgrep firefox
В выводе команды указан PID процесса:
Используя этот PID с ps
команда позволяет получить больше информации о процессе. В этом примере использование PID 1439 предоставляет информацию о Firefox процесс:
ps -e | grep 1439
После прочтения этого руководства вы сможете использовать ps
, top
, htop
, and atop
команды для вывода списка запущенных процессов в Linux и управления ими.
Используйте доступные параметры команды, чтобы настроить вывод и поведение команды.