Процесс — запущенный экземпляр программы. В Linux процессы могут создаваться другими процессами, называемыми родительскими. Каждый процесс имеет собственный уникальный идентификатор (PID) и идентификатор PPID, указывающего на родительский процесс. PID и PPID помогают операционной системе формировать иерархическую структуру процессов.
В этой статье мы расскажем, как узнать PPID процессов в Linux.
Содержание:
- Поиск идентификатора процесса (PID)
- Поиск идентификатора родительского процесса (PPID)
- Вывод на экран последовательности запуска родительских процессов
- Получение PPID оболочки командной строки
- Выводы
Поиск идентификатора процесса (PID)
Чтобы найти идентификатор родительского процесса PPID, сначала нужно узнать PID процесса. Для этого можно воспользоваться встроенной командой ps. Допустим, Вы хотите вывести на экран номер процесса Apache. Чтобы решить данную задачу, выполните в терминале:
Также Вы можете применить встроенную утилиту pgrep, чтобы определить идентификатор процесса по его названию. Например:
Читайте также: Поиск процесса по названию в Linux.
На скриншоте выше видно, что в операционной системе запущено несколько процессов Apache. Среди них есть как дочерние, так и один родительский процесс. Чаще всего родительский процесс отображается первым в списке. В нашем случае его PID — 1354, а значит PPID дочерних процессов также равен 1354.
Поиск идентификатора родительского процесса (PPID)
Однако, не всегда утилита ps выводит на экран родительский и дочерние процессы одновременно. Зная PID процесса, Вы можете определить идентификатор PPID. Для этого также воспользуйтесь командой ps:
После трехкратного выполнения предыдущей команды с идентификаторами различных дочерних процессов Apache мы убедились, что их PPID равен 1354.
Также найти PPID конкретного процесса можно с помощью команды ps и ее опции j, в качестве аргумента которой следует передать идентификатор процесса. Например:
На скриншоте показано, что команда отобразила таблицу с различной информацией о процессе. Его PPID записан в первой колонке.
Читайте также: 30 полезных команд ps для мониторинга процессов Linux.
Вывод на экран последовательности запуска родительских процессов
В сложной иерархии процессов часто бывает так, что у родительских процессов тоже есть свои родительские процессы. Чтобы проследить всю родословную процесса до корневой службы systemd, используйте команду pstree с опциями -s и -g. В качестве аргумента укажите идентификатор процесса (PID):
Получение PPID оболочки командной строки
Текущий shell-процесс в операционной системе — интерпретатор командной строки, который в данный момент активен и обрабатывает команды пользователя. Чтобы определить идентификатор родительского процесса командной оболочки, выполните в терминале:
Читайте также: Как использовать команду tree в Linux.
Выводы
Теперь Вы знаете, как вывести на экран PPID процессов в Linux. Мы также показали Вам, как проследить родословную процессов с помощью утилиты pstree.
Спасибо за время, уделенное прочтению статьи!
Если возникли вопросы — задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet / DevOps (программируемые системы) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.




























