Просмотреть список процессов linux

Как составить список запущенных процессов в Linux

Каждое приложение, которое вы используете, или команда, которую вы запускаете в своей системе 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 параметры команды включают:

  • а : Список всех разрушающих процессов для всех пользователей.
  • -A, -e; Список всех процессов в системе.
  • : Список всех процессов, кроме лидеров сеанса (случаи, когда идентификатор процесса совпадает с идентификатором сеанса) и процессов, не связанных с терминалом.
  • -d : Перечислить все процессы, кроме лидеров сеанса.
  • —deselect, -N : Перечислить все процессы, кроме тех, которые удовлетворяют определенному пользователем условию.
  • f : Отображает иерархию процессов в виде ASCII-арта.
  • -j : Отображение вывода в формате заданий.
  • T : Список всех процессов, связанных с этим терминалом.
  • r : Список только запущенных процессов.
  • u : Разверните вывод, чтобы включить дополнительную информацию, например, об использовании ЦП и памяти.
  • -u : Определите пользователя, процессы которого вы хотите перечислить.
  • x : Включить процессы без TTY.

Примечание: Ознакомьтесь с полным списком ps параметры команды с помощью man ps.

Читайте также:  Windows phone обновление 2020

Запуск ps команда без каких-либо параметров дает результат, подобный следующему:

Вывод по умолчанию включает следующие категории:

  • PID: Идентификационный номер процесса.
  • TTY: Тип терминала, на котором выполняется процесс.
  • TIME: Общая загрузка ЦП.
  • CMD: Имя команды, запустившей процесс.

Используя комбинацию a , u , а также x options приводит к более подробному выводу:

Новые категории расширенного вывода включают:

  • USER: Имя пользователя, запустившего процесс.
  • %CPU: Процент использования ЦП.
  • % MEM: Процент использования памяти.
  • VSZ: Общая виртуальная память, используемая процессом, в килобайтах.
  • RSS: Размер резидентного набора, часть ОЗУ, занятая процессом.
  • STAT: Текущее состояние процесса.
  • START: Время начала процесса.

Чтобы отобразить запущенные процессы в иерархическом виде, введите:

Примечание: При использовании более одного ps параметр команды, содержащий символ тире (««), вам нужно использовать только один символ тире, прежде чем перечислять параметры. Например, чтобы использовать ps команда с -e а также -f варианты, тип ps -ef .

Отфильтруйте список процессов по пользователю с помощью:

Например, отображение списка процессов, запущенных пользователем с именем phoenixnap:

Список запущенных процессов в 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 не включают эту команду, установите ее с помощью:

С помощью htop команда предоставляет следующий вывод:

Используйте следующие клавиши для взаимодействия с htop команда:

  • Направленные клавиши: Прокрутка списка процессов по вертикали и горизонтали.
  • F1: Открыть окно справки.
  • F2: Откройте команду настройки htop.
  • F3: Поиск процесса по имени.
  • F4: Фильтровать список процессов по имени.
  • F5: Переключение между отображением иерархии процессов в виде отсортированного списка или дерева.
  • F6: Сортировать процессы по столбцам.
  • F7: Уменьшить хорошее значение (повысить приоритет) процесса.
  • F8: Увеличить приятное значение (уменьшить приоритет) процесса.
  • F9: Убить выбранный процесс.
  • F10: Выход из командного интерфейса.
Читайте также:  Удалить все с компьютера линукс

Список запущенных процессов в Linux с помощью команды atop

В atop команда обеспечивает более полный обзор запущенных процессов по сравнению с Топ команда. Начните с установки 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 команда использует следующий синтаксис:

Например, используйте следующую команду для поиска Firefox процесс:

В выводе команды указан PID процесса:

Используя этот PID с ps команда позволяет получить больше информации о процессе. В этом примере использование PID 1439 предоставляет информацию о Firefox процесс:

После прочтения этого руководства вы сможете использовать ps , top , htop , and atop команды для вывода списка запущенных процессов в Linux и управления ими.

Используйте доступные параметры команды, чтобы настроить вывод и поведение команды.

Источник

Запущенные процессы в Linux

Как узнать список запущенных процессов в Linux?

Процесс — это программа выполняющаяся в системе.

Читайте также:  Windows 10 health dashboard что это

1) В большинстве случаев для исследования процессов в Linux используется команда «ps» , которая может выполняться как в текстовом режиме так и иметь графическую оболочку.

#ps ax — отображает полную информацию о процессах

PID TTY STAT TIME COMMAND
1 ? Ss 0:03 /sbin/init
17676 ? Ss 0:00 /usr/sbin/pptpd

По хорошему эта команда, наверное, нам нужна для отслеживания процессов и убития зависших, как по нажатию сочетания клавиш ctrl+alt+delete мы попадаем в диспетчер задав в Виндовсе и можем остановить зависший процесс.

Ее можно применить вместе с grep , для более быстрого поиска нужного нам процесса
# ps ax | grep pptp
2036 pts/0 S+ 0:00 grep pptp
17676 ? Ss 0:00 /usr/sbin/pptpd
Здесь он нам нашел наш поиск и сам процесс под номером 17676

А можем воспользоваться уже готовой утилитой поиска процесса
# pgrep -l pp
2111 pptpd

2) Убить процесс нам поможет команда:
# kill 17676 — которая принудительно прекратит его выполнение
# killall pptpd — останавливает процесс по имени

3) Если вам нужно древовидное отображение процессов, то на помощь придет утилита:
# pstree
init —acpid
—apache2—5*[apache2]
—atd
—cron
—dd
—freshclam
—6*[getty]
—klogd
—miniserv.pl
—named—3*[]
—nmbd
—pptpd
—slapd—2*[]
—smbd—smbd
—sshd—sshd—bash—pstree
—syslogd
—udevd
—xinetd

Здесь, соответственно, видна зависимость процессов друг от друга в древовидном виде.
А более подробную зависимость можно посмотреть если добавить ключ -a
# pstree -a
4) Еще одна очень полезная утилита.
# top — отображение процессов в реальном времени

Tasks: 52 total, 1 running, 51 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.3%us, 0.7%sy, 0.0%ni, 99.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 247780k total, 242104k used, 5676k free, 64152k buffers
Swap: 465844k total, 184k used, 465660k free, 127556k cached
PID USER PR NI VIRT SHR S %CPU RES %MEM TIME+ COMMAND
2094 root 18 0 2304 852 R 0.3 1064 0.4 0:01.05 top
5549 syslog 15 0 1932 528 S 0.3 680 0.3 49:43.08 syslogd
5571 root 15 0 1868 440 S 0.3 532 0.2 72:10.96 dd
1 root 15 0 2840 540 S 0.0 1684 0.7 0:03.12 init
2 root 12 -5 0 0 S 0.0 0 0.0 0:00.00 kthreadd
Здесь отображается используемая память и процессор, приостановленные и рабочие процессы . Отсюда можно произвести изменение приоритета процесса или удалить его. Просмотреть состояние процесса (простой, остановленный, зависший и др.)

# gtop — может применяться в графическом режиме.

Так, что бы стало понятно зачем и как можно применять команды в Linux. продемонстирую небольшой скрипт Bash.
Данный скрипт проверяет имеется ли процесс c именем smb и в том случае если его нет происходит его старт.
grep -v grep необходим, что бы исключить сам процесс поиска smb

#!/bin/bash
ps ax | grep -v grep | grep smb
if [ $? -ne 0 ]
then
/etc/init.d/smb start
else
echo «демон работает» > /dev/null
fi

Количество просмотров: 25412

Комментарии к статье:

Автор комментария: guest
Дата: 2017-04-02

Источник

Оцените статью