Найти в Дзене
turn on me

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

Оглавление

В Linux не всегда бывает предустановлена программа, вроде "диспетчер задач" с графическим интерфейсом. Но есть несколько утилит, позволяющих посмотреть запущенные процессы (программы) из терминала, их гораздо больше, чем здесь описано, но те, что здесь описаны обычно идут в комплекте в любом дистрибутиве Linux.

pstree

pstree - часть показанных программой процессов
pstree - часть показанных программой процессов

У утилиты pstree есть опции, вводить их нужно так:
pstree <опции>

Вот основные, часто используемые:
pstree -a показать без потоков
pstree -p показать id процесса (порядковый номер запущенной программы/процесса)
pstree -c отключить компактный показ и показать в развернутом виде компактном виде
pstree <pid> процесс с таким pid и процессы/потоки, отходящие от него
pstree <user> показать процессы указанного пользователя

ps

вывод команды ps -ely
вывод команды ps -ely

ps -ax показать все запущенны процессы с: pid, из какого терминала запущен, команда с помощью которой запускался процесс и его файл
ps -aux показать все запущенные процессы, но с еще большим количеством информации (как ах + пользователь, время старта процесса, потребляемая память и затраты ЦП)
ps -ely покажет помимо pid еще и ppid (родительский процесс) - тот процесс, который запустил данных процесс (программа)

В случае где в столбце TTY (терминал) стоит ? значит, что скорее всего процесс был запущен либо на старте ОС, либо он откреплен от терминала (такие процессы называют демонами да, да :D )

(нужно ли об этом подробнее рассказать?)

У утилиты еще много различных опций, но ими я не пользовался

top и htop

В отличие от ps и pstree, эти утилиты в реальном времени показывают какие процессы выполняются. Можно их назвать консольной альтернативой диспетчера задач в Windows.

утилита top
утилита top

top покажет список процессов запущенных в данные момент с информацией о PID, пользователе, приоритете, потребляемом количестве оперативной памяти и ресурса процессора, название само команды и др.
Вверху будет показана информация об общем количестве запущенных процессов, а также сколько из них находятся в различных состояниях (запущенные, спящие, остановленные, зомби). Также показывается общее, используемое, свободное и буферизованное/кешированное количество памяти.
Для выхода из утилиты нажмите
q

htop показывает почти то же самое, но гораздо в более удобном формате, кроме того, можно легко отфильтровать по определенному свойству процессы (например, по возрастанию PID или по количеству используемой памяти или иное), некоторые колонки свойств можно убрать или наоборот добавить недостающие. А еще наглядно показываются потоки у процессов, если они есть. Вверху есть полосы, показывающие сколько использовано оперативной памяти и ресурсов процессора, в том числе для каждого ядра процессора. Самое приятное, что хоть это и консольная программа, но она цветная, поэтому можно быстро визуально найти нужную информацию.
Внизу показаны подсказки, на какую клавишу нажать, чтобы залезть в настройки.
переключение между режимом просмотра, режимом сортировки процессов по свойствам и режимом настройки утилиты происходит по нажатию
< и > (угловых скобок). А если часть названия процесса не умещается на экран, но понажимайте -> и <- (стрелки).
Для выхода из утилиты нажмите
q

если htop не установлена, выполните:
sudo apt-get install htop

htop, режим просмотра (здесь показывается, как будто бы у меня 1-ядерный процессор. Дело в том, что у меня Linux запущен на виртуальной машине)
htop, режим просмотра (здесь показывается, как будто бы у меня 1-ядерный процессор. Дело в том, что у меня Linux запущен на виртуальной машине)
htop, режим сортировки
htop, режим сортировки
htop, режим настройки
htop, режим настройки
На этом все !