Перейти к основному содержимому
Модуль 5 · Урок 1 из 210/11 в курсе~12 min
Уроки модуля (1/2)

Управление процессами (ps и kill)

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


Процессы мониторинга: ps

Команда ps (состояние процесса) отображает снимок текущих процессов. По умолчанию здесь перечислены только процессы, связанные с текущим пользователем и текущим окном терминала.

Для полного просмотра всех процессов, запущенных в системе, обычно используется комбинация опций BSD aux:

  • a: отображает процессы для всех пользователей.
  • u: отображает владельца процесса и использование ресурсов ЦП/памяти.
  • x: список процессов, не связанных с каким-либо терминалом (например, фоновые службы).
Bash
ps aux

Выходные данные ps aux представляют собой структурированную таблицу, показывающую важные столбцы, такие как USER, PID, %CPU, %MEM и COMMAND (команда, запустившая процесс).


Завершающие процессы: kill и killall

Если процесс перестает отвечать или потребляет слишком много ресурсов, мы можем завершить его, отправив сигнал.

Команда kill

Команда kill отправляет сигнал процессу, указанному его PID:

Bash
kill 2048       # Sends the SIGTERM (15) signal, requesting a clean shutdown
kill -9 2048    # Sends the SIGKILL (9) signal, forcing immediate termination

[!ВНИМАНИЕ] Используйте kill -9 только в крайнем случае, поскольку он не позволяет программе сохранять данные или корректно закрывать открытые файлы.

Команда killall

Если вы не знаете PID или хотите завершить все процессы программы по имени, вы можете использовать killall:

Bash
killall python  # Terminates all processes named 'python'

Попробуйте сами

Упражнение 1. Перечислите все процессы

Упражнение#linux.m5.l1.e1
Попыток: 0Загрузка…

Отобразите полный список всех запущенных процессов в системе, используя опцию «aux».

Загрузка редактора…
Показать подсказку

Используйте команду «ps», а затем опцию «aux».

Решение доступно после 3 попыток

Упражнение 2. Завершить процесс по PID

Упражнение#linux.m5.l1.e2
Попыток: 0Загрузка…

Завершите процесс Python с PID 2048, используя команду kill.

Загрузка редактора…
Показать подсказку

Используйте «kill», за которым следует PID процесса (2048).

Решение доступно после 3 попыток

Упражнение 3. Завершите все процессы по имени

Упражнение#linux.m5.l1.e3
Попыток: 0Загрузка…

Завершите все запущенные процессы, связанные с программой Python, с помощью команды killall.

Загрузка редактора…
Показать подсказку

Используйте «killall», а затем имя программы, в данном случае «python».

Решение доступно после 3 попыток