It.notes

ПараметрыParameters

ПараметрParameter ОписаниеDescription
/s компьютера/s Указывает имя или IP-адрес удаленного компьютера (не используйте символы обратной косой черты).Specifies the name or IP address of a remote computer (do not use backslashes). По умолчанию используется локальный компьютер.The default is the local computer.
/u \имя_пользователя>/u \ Выполняет команду с разрешениями учетной записи пользователя, указанного именем пользователя илиименем пользователя домена\.Runs the command with the account permissions of the user who is specified by UserName or Domain\UserName. параметр /u может быть указан только в том случае, если указан параметр /s ./u can be specified only if /s is specified. По умолчанию заданы разрешения пользователя, который в данный момент вошел в систему компьютера, выполняющего команду.The default is the permissions of the user who is currently logged on to the computer that is issuing the command.
/p /p Указывает пароль учетной записи пользователя, указанной в параметре /u .Specifies the password of the user account that is specified in the /u parameter.
/Fi фильтр/fi Применяет фильтр для выбора набора задач.Applies a filter to select a set of tasks. Можно использовать более одного фильтра или использовать подстановочный знак ( \ *) для указания всех задач или имен изображений.You can use more than one filter or use the wildcard character (\*) to specify all tasks or image names. , операторы и значения см. в следующей таблице.See the following , operators, and values.
/PID /pid Указывает идентификатор процесса для завершения процесса.Specifies the process ID of the process to be terminated.
/Im /im Указывает имя образа процесса, который должен быть завершен.Specifies the image name of the process to be terminated. Используйте подстановочный знак ( \ *), чтобы указать все имена изображений.Use the wildcard character (\*) to specify all image names.
/f/f Указывает, что процессы принудительно завершаются.Specifies that processes be forcefully terminated. Этот параметр не учитывается для удаленных процессов; все удаленные процессы принудительно завершаются.This parameter is ignored for remote processes; all remote processes are forcefully terminated.
/t/t Завершает указанный процесс и все его дочерние процессы, запущенные этим процессом.Terminates the specified process and any child processes started by it.

Имена фильтров, операторы и значенияFilter names, operators, and values

Имя фильтраFilter Name Допустимые операторыValid Operators Допустимые значенияValid Value(s)
СОСТОЯНИЕSTATUS eq, neeq, ne ЗАПУСК | НЕ ОТВЕЧАЕТ | — НЕИЗВЕСТНОRUNNING | NOT RESPONDING | UNKNOWN
IMAGENAMEIMAGENAME eq, neeq, ne Имя образаImage name
ИД процессаPID eq, ne, gt, lt, ge, leeq, ne, gt, lt, ge, le Значение PIDPID value
СЕССИИSESSION eq, ne, gt, lt, ge, leeq, ne, gt, lt, ge, le Номер сеансаSession number
CPUtimeCPUtime eq, ne, gt, lt, ge, leeq, ne, gt, lt, ge, le Время ЦП в формате чч мм СС, где mm и SS находятся в диапазоне от 0 до 59, а чч — любое число без знакаCPU time in the format HHMMSS, where MM and SS are between 0 and 59 and HH is any unsigned number
МЕМУСАЖЕMEMUSAGE eq, ne, gt, lt, ge, leeq, ne, gt, lt, ge, le Использование памяти в КБMemory usage in KB
ИМЕНUSERNAME eq, neeq, ne Любое допустимое имя пользователя (пользователя или пользователя домена\ )Any valid user name (User or Domain\User)
ОБСЛУЖИВАНИЕSERVICES eq, neeq, ne Служебное имяService name
WINDOWTITLEWINDOWTITLE eq, neeq, ne Заголовок окнаWindow title
МОДУЛЕMODULES eq, neeq, ne Имя DLLDLL name

Команда смерти, что не стоит выполнять в терминале

Я ранее писал материал о вредных советах, какие команды не стоит выполнять в терминале чтобы не убить систему, но список не совершенен и его можно дополнить еще многими командами, одну с которых вы найдете ниже.

Приведу пример команды смерти:

sudo kill -9 -1

это команда убьет все запущенные на данный момент процессы. Не советовал бы ее выполнять так как последствия могут быть непредсказуемые и вероятней всего придется перезапускать систему без графического интерфейса. На случай вдруг откажет графический интерфейс, тогда открываем терминал с помощью команд CTRL+ALT+F1, каждое новое окно открывается по той же аналогии просто меняется F1 уже на F2 и так далее.

Получить справку по командам которые использовались выше, вы так же можете через терминал выполнив команды:

man ps
man grep
man pidof
man kill
man killall

Завершение процессов

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

Конечно, если не увлечься открыванием новых приложений, то с проблемой зависания компьютера удастся сталкиваться реже. Ну а если вы всё-таки очень увлечённо работали, поэтому сами не заметили, как открыли много окон, запустили на выполнение несколько программных приложений и утилит, то закрыть их простым нажатием на кнопку «Выхода», может не получиться.

Алгоритм действий

Для завершения нежелательных процессов, отказывающихся подчиняться пользователю, нужно воспользоваться помощью «Диспетчера задач». Если у вас установлен Windows 7, достаточно кликнуть правой клавишей мышки по нижней панели задач, выбрать параметр «Запустить Диспетчер задач».

Шаг 1

В открывшемся окне на первой вкладке кликните по той утилите, которая вам уже не нужна, а далее в нижней части окна выберите параметр «Снять задачу». Если процесс не совсем безнадёжен, он остановится.

Шаг 2

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

Отметьте опцию отображения всех процессов пользователей

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

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

Шаг 3

Итак, не произносите фраз типа: «Не могу завершить процесс в Диспетчере задач», а лучше воспользуйтесь уникальными возможностями служебной команды taskkill. Эту команду многие готовы рассматривать в качестве мощнейшего инструмента.

Чтобы запустить такую команду, сначала, конечно же, нужно открыть командную строку, зажав одновременно две клавиши: «Win» и «R». В открывшемся маленьком окошке введите «cmd».

Шаг 4

Теперь вам нужно будет набрать «taskkill» и нажать «Enter». Однако чтобы справиться с неуправляемым процессом к этому слову следует присоединить дополнительную опцию.

В частности, можно завершить процесс при помощи команды taskkill, используя имя приложения, которое отказывается завершаться. Для этого наберите небольшую командную фразу: taskkill / IM «имя приложения». Конечно, вместо словосочетания «имя приложения» вы должны набрать тот процесс, который у вас нет мочи остановить. Например, taskkill / IM excel.exe. Если вы воспользуетесь нашим примером, то в этом случае прекратит работать табличный редактор Excel. Выбирайте ваш процесс, приносящий вам ужасные хлопоты, и прописывайте в команде его имя.

В окне процессы отображаются не только с указанием своего имени, но и идентификатора в том числе. Если вы желаете, вы можете набрать такую командную фразу: taskkill / PID 574, где число 574 будет являться идентификатором проблемного процесса.

Шаг 5

Если на компьютере имеются несколько учётных записей, при этом абсолютно понятно, что зависание возникло именно по причине незавершённых процессов одного из пользователей, можно воспользоваться и такой командной фразой: «taskkill / F / FI «USERNAME eq имя_пользователя». Понятно, что в ней придётся вам самостоятельно изменить непосредственно имя пользователя, по вине которого возникла проблема.

Воспользуйтесь новой командной фразой

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

Команда «taskkill», действительно, является мощнейшим инструментом, которому не могут противостоять даже вирусы и троянцы. Такая команда успешно завершает даже их негативную и упорную «деятельность».

Завершение процессов

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

Иногда надо деактивировать ненужные службы, чтобы чуть-чуть «разгрузить» ПК. Если диск или ЦП используются на 100%, компьютер будет сильно тормозить и очень медленно работать.

  • Откройте Task Manager.
  • Перейдите на вкладку «Процессы».

Вкладка процессы в диспетчере задач

Обратите внимание на столбик «Пользователь».
Если там указано «Система», «Network» или «Local Service», эти службы зарезервированы ОС. Чтобы их увидеть, нажмите на кнопку «Отображать все»

Она в нижней части окна диспетчера задач.
Если там название вашей учётной записи, это запущенные вами сервисы. Их можно отключить.
Перед тем как закрывать службу, прочитайте её название и описание. Вдруг она вам нужна.
При попытке остановить системный процесс, который нужен для работы ОС, появится предупреждение, что после этого будет завершена работа ПК. При повторном включении компьютера этот service вновь появится.
Если после отключения нескольких пользовательских сервисов диск всё равно загружен на 100%, можно убрать некоторые фоновые и системные программы. Например, утилиты Apple и iTunes. Если вы пользуетесь продукцией этого производителя и подключаете её к компьютеру, то Apple-службы добавятся в автозагрузку и будут функционировать в скрытом режиме. Но вы должны быть точно уверенны, что приложения не связаны напрямую с ОС и не повлияют на её работу. Ориентируйтесь на их названия.

Чтобы посмотреть, какие программы запускают те или иные сервисы.

  1. Кликните правой кнопкой мыши на процесс.
  2. В появившемся списке выберите «Место хранения файла».
  3. Откроется папка утилиты, которая отвечает за службу. Если это установленное лично вами приложение, и оно в данный момент не нужна, можете её отключить.

Если процесс перезапускается сам

Некоторые service так просто не убрать из диспетчера задач. Потому что их автоматически запускают службы. Процесс будет сам появляться в списке ДЗ после того, как вы его завершите. Если диск перегружен на 100% именно из-за такого сервиса, его можно убрать.

В Task Manager кликните по нему правой кнопкой мыши и выберите «Перейти к службам».
Нажмите кнопку «Службы» внизу.
Найдите ту, которая ответственна за запуск нежелательного приложения. Ориентируйтесь на имя и производителя.
Дважды кликните по ней. Откроется окно свойств.
В выпадающем списке «Тип запуска» выберите «Вручную» или «Отключена». Процесс перестанет включаться сам

И диск не будет загружен на 100%.
Если вы сделаете это с важной системной службой, придётся восстанавливать ОС. Так как она автоматически не запустится при загрузке Windows

И компьютер просто не включится. Поэтому не убирайте сервисы, о которых ничего не знаете.

ЗАКРЫТЬ ПРОЦЕСС ЧЕРЕЗ КОМАНДНУЮ СТРОКУ WINDOWS

В некоторых случаях «Диспетчер задач» при попытке принудительного завершения работы процесса может выдавать ошибку, связанную с отсутствием доступа. Если завершаемый процесс является системным, то подобная ошибка — нормальное явление. В остальных же случаях принудительно закрыть программу можно попробовать (способ не является действенным на 100%) при помощи командной строки Windows.

Первое, что нужно сделать — запустить командную строку от имени администратора. В случае с ОС Windows 10 здесь все просто:

  • Кликните правой кнопкой мыши по значку «Пуск» либо нажмите на клавиатуре комбинацию клавиш «Win + X».
  • В левом нижнем углу экрана отобразится меню, выберите в нем пункт «Командная строка (администратор)».

Другой способ запуска командной строки от имени администратора (сработает в любых версиях ОС Windows, начина с Vista):

  • Запустите «Проводник», затем откройте системный диск, в корне которого расположена папка «Windows» (обычно — «Локальный диск С:»).
  • Перейдите в папку «Windows», а оттуда — в папку «System32».
  • Найдите файл «cmd.exe» (может просто называться «cmd»).
  • Кликните по файлу правой кнопкой мыши, выберите из выпадающего контекстного меню пункт «Запуск от имени администратора».

Далее в окно командной строки впишите команду tasklist. Она выведет на экран список всех запущенных процессов:

Для принудительного завершения работы программы используется другая команда — taskkill. Для ее выполнения требуется знать имя файла или идентификационный номер процесса (PID), который можно получить из списка выше. Для примера применим команду taskkill к процессу «notepad.exe» по его идентификационному номеру (в нашем случае PID — 2280). Для этого в командную строку следует вписать команду: taskkill /pid 2280.

Об успешности завершения процесса будет свидетельствовать сообщение об успехе:

11

Способ 2. Tasklist

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

Для выгрузки приложения с помощью консольной утилиты Taskkill нужно запустить командную строку от имени администратора, ввести «tasklist» и нажать ввод.

После этого на экран выведется список всех запущенных процессов. Чтобы «убить» любой из них нужно ввести «taskkill /IM имя_процесса /F». Например, для остановки блокнота нужно написать «taskkill /IM notepad.exe /F».

Также программу можно выгрузить по числовому идентификатору. Для этого нужно ввести «taskkill /PID номер_идентификатора /F».

Чтобы одновременно завершить сразу несколько процессов, потребуется ввести «taskkill /PID номер_идентификатора_1 /PID номер_идентификатора_2 /PID номер_идентификатора_3 /F». Например, «taskkill /PID 8684 /PID 8260 /F».

Теперь, если всё было сделано правильно, зависший процесс будет закрыт и перестанет загружать процессор.

Как видно из статьи, завершить даже зависший процесс не составит труда и можно сделать даже стандартными способами. Для этого не придется перезагружать компьютер и несохранённые данные не будут потеряны.

Синтаксис

Чтобы передать предварительно выбранный сигнал определенному процессу в Linux, рекомендуется воспользоваться специальной утилитой kill. Она имеет весьма простой синтаксис:

Здесь можно использовать любой сигнал, который представлен в вышеописанном списке. Если данный параметр не задать в команде, «по умолчанию» будет использован SIGTERM. Именно он практически моментально завершит выбранную вами программу.

К примеру, в операционной системе подключенный по ssh пользователь «ya». Нам необходимо завершить этот процесс, тем самым закрыть подключение по ssh с использованием утилиты kill. Первоначально требуется определить ее идентификатор с помощью команды «ps».

На экране вашего монитора появится окно, где в первом столбце прописано имя пользователя, во втором тот самый pid, который нужен для завершения процесса.

Как видно на скриншоте, pid который нам нужен 2590. Завершим подключение пользователя «ya» с помощью сигнала SIGTERM.

Бывают различные ситуации. В некоторых случаях после введения вышеописанной программы процесс продолжает висеть в ОС «Линукс». Проверить его наличие можно также с помощью утилиты «ps» (процесс ее запуска описан выше). В данном случае можно воспользоваться более действенным сигналом SIGKILL, где запрос идет непосредственно через ядро всей системы. Необходимо ввести – kill -KILL 20445.

После ведения такой команды рекомендуется снова запустить утилиту «ps». Если вы обнаружите, что процесс запущен от имени пользователя, которого завершали прцесс ( в нашем случае это ya), потребуется дополнительное использование утилиты «sudo».

Особенности завершения процесса с использованием команды «pkill»

Главная отличительная особенность данной утилиты – вместо идентификатора процесса требуется ввести имя программы. Синтаксис и поведение будет аналогичным.

Утилита «pkill» отсканирует директорию и самостоятельно найдет ID с аналогичным именем. Только после этого будет подан сигнал SIGTERM. Например, закроем программу mc.

Особенности завершения процесса с использованием команды «killall»

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

При использовании утилит важно понимать, что к постановке задач требуется отнестись максимально ответственно. Если сделать что-то не правильно, могут возникнуть сбои в работе ОС «Линукс»

Почему зависают процессы на компьютере?

Если приложение на компьютере зависло, произошло это из-за конфликтного состояния на уровне «железа» или программного обеспечения. Перезапуск программы часто помогает вернуть ее в работоспособное состояние, но он не устраняет саму причину зависания приложения, и это может повторить снова.

Можно выделить следующие основные причины зависания программ на Windows:

Неисправна или загружена оперативная память. Современные программы требуют все больше ресурсов компьютера, и особенно данное утверждение актуально в отношении оперативной памяти. Десяток вкладок браузера, несколько документов, пара «фоновых» приложений, и оперативная память уже может быть забита. Если приложение зависает по причине загруженности оперативной памяти, следует закрыть некоторые процессы и максимально ее освободить для запуска программы.

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

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

Несогласованно работает BIOS и компьютерное «железо»

Настройкам BIOS стоит уделять внимание сразу после приобретения компьютера или замены элементов в нем. Многие пользователи не обращают внимания на параметры, выставленные в BIOS, тогда как из-за их неверного подбора потенциал «железа» может использоваться не до конца, что приведет к зависанию программ.

На компьютере вирусы

Часто программы зависают из-за вредоносных программ, находящихся на компьютере. Они могут отнимать грузить оперативную память или жесткий диск, как вирусы svchost, или просто препятствовать запуску приложений (всех или определенных). Чтобы в подобном случае решить проблему с зависанием программ в Windows, необходимо провести очистку компьютера от вирусов.

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

Как происходит завершение процесса?

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

Необходимо завершить дочерние процессы, удалить временные файлы, сокеты и так далее. Но в зависимости от сложности ситуации процесс может реагировать не на все сигналы. Рассмотрим основные сигналы, которые используются для завершения процесса:

  • SIGINT — самый безобидный сигнал завершения, означает Interrupt. Он отправляется процессу, запущенному из терминала с помощью сочетания клавиш Ctrl+C. Процесс правильно завершает все свои действия и возвращает управление;
  • SIGQUIT — это еще один сигнал, который отправляется с помощью сочетания клавиш, программе, запущенной в терминале. Он сообщает ей что нужно завершиться и программа может выполнить корректное завершение или проигнорировать сигнал. В отличие от предыдущего, она генерирует дамп памяти. Сочетание клавиш Ctrl+/;
  • SIGHUP — сообщает процессу, что соединение с управляющим терминалом разорвано, отправляется, в основном, системой при разрыве соединения с интернетом;
  • SIGTERM — немедленно завершает процесс, но обрабатывается программой, поэтому позволяет ей завершить дочерние процессы и освободить все ресурсы;
  • SIGKILL — тоже немедленно завершает процесс, но, в отличие от предыдущего варианта, он не передается самому процессу, а обрабатывается ядром. Поэтому ресурсы и дочерние процессы остаются запущенными.

Важно понимать, что нужно дать процессу возможность завершиться корректно. Желательно, чтобы порты и сокеты были освобождены, закрыты и удаленны временные файлы

Поэтому никогда не передавайте сразу SIGKILL. Передавайте сигналы завершения в последовательности, как они перечислены выше.

Сначала Ctrl+C, если это возможно, затем SIGTERM — он хоть и завершает процесс, но делает эту культурно, и только в крайнем случае SIGKILL. А теперь рассмотрим как убить процесс по pid Linux на практике. Если вы всегда используете SIGKILL, тогда на ум приходит такая картинка:

Основные сигналы

Следующие сигналы являются частью стандарта POSIX. Каждый сигнал макрос, определенный в Файл заголовка системы. Они, как правило, сокращенны, без их SIG- префикса; например SIGHUP часто называют просто как HUP.

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

SIGKILL –  сигнал SIGKILL заставляет процесс прекратить выполнение своей работы немедленно. Программа не может игнорировать этот сигнал. Несохраненный прогресс будет потерян.

Синтаксис для  «kill».

Синтаксис команды такой:

# kill  PID(s)

или

# kill   %pid

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

# kill SIGKILL PID

Или

# kill -9 PID

где «-9» — это флаг относится к сигналу SIGKILL.

Если вы не знаете какой нужно использовать PID приложения которого следует избавиться, то запустите команду:

$ ps -aux

А если знаете конкретное приложение (например apache), то можно отсеять ненужное и вывести все процессы по данной службе:

$ ps -aux | grep apache

И это отобразит все запущенные приложения вместе с его PID-ом(ами).

Например, чтобы убить приложение, я выполните следующую команду:

# kill -9 3629

Стоит также отметить, что вы можете использовать несколько процессов одновременно чтобы их можно было » убить»:

# kill -9 PID1 PID2 PID 3

Перезагурзить конфигурационные файлы или перезапуск утилит:

# kill -1 number_of_PID

Особенно полезными сигналы включают HUP, INT, kill, STOP, CONT, и 0.

Варианты таковы:

-s signal_name
Символическое имя сигнала, задающее сигнал для отправки сигнала не по умолчанию.

-l
Если операнд не указан,  то показать имена сигналов; В противном случае, написать название сигнала, соответствующего exit_status.

-signal_name
Символическое имя сигнала, задающее сигнал для отправки в TERM по умолчанию.

-signal_number
Неотрицательное десятичное целое, задающее сигнал для отправки в TERM по умолчанию.

Следующие PID-ы, имеют особое значение:-1 Если суперпользователь, то транслирует сигнал всем процессам;  в противном случае вещает на все процессыbelong-
ing для пользователя.

Некоторые из наиболее часто используемых сигналов:

  • 1 HUP (hang up) — повесить.
  • 2 INT (interrupt) — прерывание.
  • 3 QUIT (quit) — выход.
  • 6 ABRT (abort) — прерывания.
  • 9 KILL (non-catchable, non-ignorable kill)
  • 14 ALRM (alarm clock) — будильник.
  • 15 TERM (software termination signal) — Программное обеспечение для прекращения сигнала.

PKill

Команда «pkill» позволяет использовать расширенные шаблоны регулярных выражений и других критериев соответствия. Вместо того чтобы использовать PID, теперь вы можете убить приложение, введя имя процесса. Например, чтобы убитьбраузер Firefox , просто запустите команду:

# pkill Firefox

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

# pkill fire

Чтобы избежать «убийства» неправильных процессов, вы можете сделать «pgrep -l » в список подходящих процессов.

Pkill команда имеет гораздо больше вариантов, например если указать опцию «-u», то она позволит вам указать имя пользователя или ID. В этом примере мы посылаем сигнал TERM всем процессам, принадлежащие пользователю ‘nobody’:

# pkill -u nobody

Killall

Killall использует имя процесса, а вместо PID, и он «убивает» все экземпляры процесса с тем же именем. Например, если вы используете несколько экземпляров браузера Firefox, вы можете убить их всех с помощью команды:

# killall firefox

В Gnome, вы можете перезапустить Nautilus с помощью команды:

# killall nautilus

xkill

Xkill является графическим способом «убить» приложение. При вводе «XKill» в терминале, курсор мыши будет немедленно стать «крест». Все, что вам нужно сделать, это нажать «крест» на провинившихся приложение и он убьет приложение мгновенно. Если вы заинтересованы, вы можете добавить сочетание клавиш для включения функции XKill.

Процессы в Linux

Вам будет интересно:Чистка ПК от мусора: программы, инструкция и рекомендации

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

Все процессы, работающие в Linux, имеют такие атрибуты:

PID — уникальный для каждого процесса идентификатор.
PPID — идентификатор родительского процесса.
Идентификатор пользователя, запустившего процесс.
Приоритет.
Состояние процесса.

Каждый запущенный процесс находится в одном из состояний:

  • «Выполняется». Для обозначения этого состояния используется буква R.
  • Процесс, который запустил системную операцию, например ввод или вывод данных, и ждет когда завершится ее выполнение, называется «Ожидание». Обозначается буквой S.
  • Процесс, который остановлен пользователем или ОС Linux, находится в состоянии «Остановлен». Это состояние обозначается символом Т.
  • «Зомби» — процессы, которые больше не выполняются, но потребляют ресурсы операционной системы. Обозначаются буквой Z.
  • Непрерывный процесс нельзя завершить, пока не закончится операция прямого доступа в память. Обозначается процесс символом D.

Завершаем процессы в Linux

Существуют разные системные средства, позволяющие «убить» какой-либо процесс. Иногда для этого приходится узнавать его идентификатор, а в других ситуациях достаточно только названия. Далее мы предлагаем детально изучить все представленные методы, чтобы найти оптимальный для себя и выполнять его при необходимости, учитывая описанные ранее сигналы.

Способ 1: «Системный монитор»

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

  1. Перейдите в меню «Показать приложения», где отыщите «Системный монитор» и запустите его, кликнув по значку левой кнопкой мыши.

В появившемся окне вы увидите список процессов. Найдите имя необходимой для завершения задачи.

Дополнительно вы можете переместиться в свойства объекта через контекстное меню, чтобы посмотреть всю информацию о нем.

Щелкните правой кнопкой мыши по строке и выберите пункт «Завершить». Это же действие выполняется через горячую клавиш Ctrl + E. Еще внизу имеется кнопка, позволяющая завершить процесс без вызова контекстного меню.

Если же операция не завершилась по каким-либо причинам, задействуйте опцию «Убить».

Ознакомьтесь с информацией в предупреждении и подтвердите свои намерения.

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

Способ 2: Команда kill

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

Подробнее: Просмотр списка процессов в Linux

Далее остается только запустить «Терминал» и задействовать упомянутую команду. Для начала изучите ее простой синтаксис: . Теперь давайте рассмотрим пример «убийства».

  1. Откройте меню приложений и запустите «Терминал».

Введите простую команду для получения информации об указанном процессе, где name — имя желаемой программы.

В отобразившемся результате отыщите главный PID и запомните его.

Введите для завершения процесса через сигнал SIGTERM. Вместо PID вам нужно написать определенный ранее номер идентификатора.

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

То же самое действие по «убийству» осуществляется и через другой аргумент путем ввода .

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

Учтите, что некоторые процессы запускаются от имени суперпользователя, соответственно, для их завершения требуются привилегии. Если при попытке ввода kill вы получаете информацию «Отказано в доступе», вводите перед основной командой sudo, чтобы получилось .

Способ 3: Команда pkill

Следующая консольная утилита называется pkill и является модернизированной версией предыдущей команды. Здесь все реализовано точно по такому же образу, но вместо PID от пользователя требуется вводить название процесса.

  1. Для отправки сигнала SIGTERM используйте .

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

Задайте вручную тип сигнала, введя такую форму , где -TERM — необходимый сигнал.

Используйте для определения того, что процесс больше не выполняется, если вы не хотите задействовать ps

Способ 4: Команда killall

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

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

Опишите, что у вас не получилось.
Наши специалисты постараются ответить максимально быстро.

Ссылка на основную публикацию