ХайБлог
  • Домашняя страница
FA
EN
RU
Язык:
FA
EN
RU
Статистика статьи
Н/Д
Категория
Ali Ghanimati
Автор
13 октября 2025
Дата выпуска
126
Просмотры
FA
EN
RU
Языки
Обучение остановке процесса или Kill Process в Linux

Обучение остановке процесса или Kill Process в Linux

Содержание

Статистика статьи
  1. Как найти Process ID или Process Name
  2. Как завершить процесс (kill)

Когда процесс в операционной системе Linux не отвечает или потребляет слишком много аппаратных ресурсов нашей системы, единственным вариантом может быть его остановка или, как говорят, «убийство». Многие процессы имеют свой собственный способ остановки. К сожалению, процессы могут давать сбои, и может потребоваться ввод команды вручную, чтобы их остановить.

В этом руководстве мы познакомимся с тем, как остановить процесс или Kill Process в Linux.

Как найти Process ID или Process Name

Прежде чем остановить процесс, необходимо найти его местоположение. Это можно сделать, найдя имя запущенного процесса (Process Name) или его соответствующий ID (Process ID или PID).

Существует несколько способов найти процесс в Linux:

  • С помощью команды ps
  • С помощью команд pgrep или pidof
  • Или с помощью команд top в Linux

Поиск процесса с помощью команды ps

Команда ps отображает полный список запущенных процессов, в зависимости от опции, которую мы указываем.

ps [option]

Каждая опция имеет определенную функцию и выполняет определенную задачу при вводе. Опции, которые мы можем ввести для команды ps, следующие:

  • Опция -a. Отображение всех процессов, относящихся ко всем пользователям системы.
  • Опция -u. Предоставление подробной информации о каждом процессе в системе.
  • Опция -x. Предоставление процессов, которые контролируются демонами (программами, которые запускаются с момента загрузки системы и не контролируются пользователем), а не пользователями системы.

Например, команда ps -aux отправляет полный список всех процессов с подробной информацией о них:

Поиск Process ID или PID с использованием команд pgrep или pidof

В Linux команда pgrep представляет собой более сложный способ поиска процесса. Команда pgrep возвращает процессы на основе определенного критерия выбора, называемого шаблоном (pattern). Шаблон (pattern) — это, по сути, регулярное выражение. Например, в шаблоне a* символ * означает что угодно вместо любого количества символов.


pgrep [options] [pattern]

Опции команды pgrep:

  • Опция -l. Предоставляет список имен процессов и их PID.
  • Опция -n. Отображает самый новый процесс.
  • Опция -o. Отображает самый старый процесс.
  • Опция -u. Отображает процессы, принадлежащие определенному пользователю в системе.
  • Опция -x. Отображает процессы, которые полностью совпадают с заданным шаблоном.

Например, команда pgrep -l -u root отображает имена процессов и PID, принадлежащие пользователю root в системе:

Команда pidof используется для поиска идентификатора процесса (PID), передавая ей имя процесса.


pidof [options] [program]

Вот некоторые из опций команды pidof:

  • Опция -o. Исключить PID.
  • Опция -s. Отображать только один PID.
  • Опция -x. Отображать PID скриптов, которые выполняются системными интерпретаторами.

Например, чтобы получить PID процесса sshd, выполните команду pidof sshd:

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

Команда top — это самый простой способ получить полную информацию о запущенных процессах. Чтобы просмотреть полный список запущенных процессов, используйте эту команду:


top

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

Чтобы выйти из среды команды top, используйте клавишу q.

Как завершить процесс (kill)

Фактически, завершение (kill) процесса означает его завершение в системе. Для этого сначала получите необходимые права доступа и убедитесь, что ваша учетная запись пользователя может это сделать.
Пользователь root может завершить все процессы. Используйте команду sudo перед выполнением любой команды для завершения процесса, чтобы выполнить эту команду от имени пользователя root, или войдите в оболочку от имени пользователя root перед выполнением команд.

Завершение (kill) процесса отправляет сообщение целевому процессу с инструкцией о его завершении. Эти сообщения называются сообщениями о завершении (termination). Существует несколько различных типов сообщений о завершении:

  • Сообщение SIGKILL. Отличный способ дать команду на завершение процесса. В этом случае процесс завершается внезапно и с сообщением об ошибке. SIGKILL — это способ, который всегда должен работать. Если SIGKILL не работает, это означает, что в операционной системе есть ошибка и проблема.
  • Сообщение SIGTERM. В отличие от SIGKILL, это сообщение может быть заблокировано или как-то иначе обработано. Это сообщение используется для завершения процесса в системе и является относительно более спокойным способом сделать это.

Для большинства применений SIGKILL является более практичным и быстрым способом завершения процесса.

Команда killall

Команда killall завершает процесс, получив его имя, или, как говорят, «убивает» его. По умолчанию эта команда отправляет сообщение SIGTERM для выполнения этой задачи. Кроме того, killall может завершать несколько процессов одновременно с помощью одной команды.


killall [process]

Команда killall включает в себя несколько различных опций:

  • Опция -e. Останавливает процессы с тем же именем, в дополнение к указанному процессу.
  • Опция -I. Имена процессов рассматриваются без учета регистра (не case sensitive) и процесс завершается.
  • Опция -i. Перед завершением процесса запрашивает у пользователя подтверждение. После подтверждения пользователя команда выполняется.
  • Опция -u. Завершает только процессы, принадлежащие указанному пользователю.
  • Опция -v. После завершения процесса возвращает сообщение об успешном завершении операции.

Помимо возможности завершения процессов по имени, команда killall также позволяет завершать процессы на основе их возраста.

  • Опция -o. Завершает все процессы, время начала которых больше указанного значения.
  • Опция -y. Завершает все процессы, время начала которых меньше указанного значения.

Например, команда killall -o 15m завершит все процессы, время работы которых превышает 15 минут, а команда killall -y 15m завершит все процессы, время работы которых меньше 15 минут.

Команда pkill

Команда pkill аналогична команде pgrep, которая завершает процесс, используя его имя. По умолчанию команда pkill отправляет сообщение SIGTERM:
pkill [options] [pattern]

Опции команды pkill:

  • Опция -n. Завершает только самый новый процесс.
  • Опция -o. Завершает только самый старый процесс.
  • Опция -u. Завершает только процесс, принадлежащий указанному пользователю.
  • Опция -x. Завершает только процесс, который имеет точно такое же имя, как и шаблон.
  • Опция -signal. Отправляет указанный сигнал процессу вместо сигнала SIGTERM по умолчанию.

Например, эта команда завершает самый новый процесс, созданный пользователем root:


pkill -n -u root

Команда xkill

Команда xkill — это специальная команда для разрыва соединения между сервером и его пользователями.

xkill [resource]

В случае возникновения нежелательных процессов на сервере, мы можем остановить их с помощью xkill.
Также, если мы выполним команду xkill без каких-либо входных данных, откроется новый интерфейс для пользователя, чтобы он мог завершить нужные процессы.

Команда top

Как мы объяснили, команда top открывает интерфейс с информацией о запущенных процессах для пользователя.

top

Эта команда также имеет возможность завершить процесс. После выполнения команды top, нажав клавишу k и введя PID соответствующего процесса, мы можем его завершить.

Поделиться
hidata.org/ru/blog/how-to-kill-a-process-in-linux/
Копировать
В социальных сетях

Добавить комментарий

Вы отвечаете на
captcha
Веб-хостинг
  • Professional cPanel Hosting
  • High-Traffic cPanel Hosting
  • File Hosting
Выделенный сервер
  • Europe Dedicated Server
О HiData
ХайДата
HiData
С апреля 2014 года HiData обслуживает тысячи онлайн‑бизнесов, опираясь на мощную и дорогостоящую инфраструктуру в ведущих дата‑центрах Ирана и мира. Используя серверы нового поколения с высокопроизводительными процессорами, сеть большой пропускной способности и строгую политику безопасности данных, мы удовлетворяем ваши потребности в хостинге на высочайшем уровне. Наша служба поддержки работает 24/7 и всегда доступна по тикет‑системе и телефону. Скорость, стабильность и спокойствие — не лозунг, а сущность HiData.
Виртуальный сервер
  • Germany NVMe VPS
  • Russia NVMe VPS
  • Turkey SSD VPS
  • Germany SATA VPS
  • Storage VPS
  • Cloud VPS
Другие услуги
  • Domain Services
  • Licensing System
  • Reseller
Телефон 1: +98-90009019
ХайТьюб ХайКэдеми ХайКаст ХайБлог
Адрес
штаб-квартиры: Офис 8, 2‑й этаж, торговый центр «Тала», ул. Имама Хомейни, г. Абхар
Контактные телефоны
+98-90009019
Круглосуточная поддержка
Электронная почта: info@hidata.org
© 2025 HiData
All rights reserved for hidata.org
Физическое хранилище HiServer
Самые разумные цены на ведущие мировые бренды