Како убити процес по имену у Линуку

Присилно прекинути процесе који се лоше понашају користећи ове Линук команде

Објаснити значење „процеса“ најједноставнијим речима јесте да је то покренута инстанца било које апликације или програма на вашем систему. Можда користите више апликација истовремено, као што је прегледање, слушање музике која ради на вашем терминалу, итд. Постоји много позадинских процеса повезаних са овим апликацијама које покреће корисник.

Свака апликација или програм који се покреће на вашем систему ствара више процеса повезаних са вашом појединачном апликацијом. Понекад ово може представљати проблем и отклањање ових процеса је једина опција коју имате.

„Убијање“ процеса је једна корисна опција која вам Линук пружа да зауставите текуће процесе, било да је то процес у првом плану или процес у позадини. У овом чланку ћемо прегледати команде попут убити, пкилл и киллалл да принудно затворите било који процес на систему.

Зашто убити процес?

Разумевање концепта убијања процеса је важно пре него што кренете даље у овом водичу. Убијање може изгледати веома бруталан начин да се изрази концепт, али оно што фигуративно значи је насилно прекинути процес.

Сада, зашто прекинути или прекинути процес који је у току? Када је више процеса покренуто у позадини, сви или неколико њих могу да покваре функционисање и могу довести до лошег понашања вашег система. Ово одлаже ваше текуће задатке јер процес неисправности може да замрзне ваш систем на неко време.

Понекад се чини да је напуштање свих процеса који се лоше понашају једина опција за враћање нормалног система на ваш систем. Линук вам омогућава да убијете процес користећи пид или назив процеса.

Помоћу пгреп команда

Већина корисника Линук-а је упозната са греп команда. Тхе пгреп команда се може користити на сличним линијама греп.

пгреп наредба када се користи, приказује пид текућег процеса како је наведено у команди. Ова команда ће се показати од велике помоћи док користите пкилл команда.

Општа синтакса:

пгреп [опције] [шаблон]

Важне опције доступне са пгреп команда

ОпцијаОпис
листа ИД процеса у власништву одређеног корисника
избројати број подударних процеса
навести само имена процеса
навести пуну путању имена процеса

Хајде да демонстрирамо употребу пгреп команду користећи пример.

пгреп -у гаурав гном

Овде желимо да видимо пидс процесног гнома који је у власништву корисника „гаурав“. Опција омогућава вам да наведете пидс процеса у власништву одређеног корисника. У овом случају, корисник гаурав.

Излаз:

гаурав@убунту:~$ пгреп -у гаурав гноме 1752 1755 1909 1922 2021 2576 4279 гаурав@убунту:~$

Док идемо даље са овим водичем, пгреп команда ће нам помоћи да потврдимо да ли је процес прекинут или још увек ради.

Пређимо сада на пкилл наредбу и њено извршење.

Користећи пкилл команда

Можете користити пкилл команду у Линук-у да убије процес користећи име процеса. Чак и ако не знате пид неког процеса, чак и тада можете убити тај одређени процес користећи пкилл команда.

Процеси се могу навести пуним именом или делимичним именом док се користи пкилл команда. Чак и ако унесете делимично име процеса, пкилл команда ће ускладити све покренуте процесе са одговарајућим именом које сте унели у команду.

Синтакса:

пкилл [опције][узорак_назив_процеса] 

Пример:

Дозволите нам да прикажемо процесе који су тренутно покренути користећи топ команда. Такође можете користити пс наредба за листање процеса.

топ
врх - 14:24:02 горе 3:12, 1 корисник, просек оптерећења: 0,29, 0,48, 0,58 Задаци: укупно 221, 1 трчање, 172 спавање, 0 заустављен, 1 зомби %Цпу(с): 5,6 ус, 1,0 си , 0.0 ни, 92.9 ид, 0.4 ва, 0.0 хи, 0.1 си, 0.0 ст КиБ Мем : 3928240 укупно, 610456 бесплатно, 2233152 коришћено, 1084632 буфф/цацхе КиБ Свап7, 780 укупно, коришћено: 780, укупно 480. 1187268 корист Мем Нови ПИД КОРИСНИК ПР Ни ВИРТ ОИЕ СХР-М% процесора% МЕР ВРЕМЕ + Цомманд 4077 Гаурав 20 0 3312128 673480 118360 М 19.6 17.1 15: 13.23 веб садржаја 3712 Гаурав 20 0 3953008 453544 116476 С 4.0 11.5 9: 28.39 МаинТхреад 2010 Гаурав 20 0 4084232 111096 45024 С 1.7 2.8 3: 14.85 гноме-схелл 1197 роот 20 0 1039612 33704 22988 С 1.0 0.9 3: 04.42 Ксорг 1426 цоуцхдб 20 0 3772396 16908 2520 С 0,7 0,4 1: 50.83 беам.смп 3288 гаурав 20 0 722480 25048 18272 С 0,7 0,6 0: 06.84 гноме-терминал- 3915 гаурав 20 0 2804900 231524 111228 С 0.7 5.9 0: 54.42 Веб Цонтент 4146 гаурав 20 0 3017924 245304 120604 С 0.7 6.2 2: 01.21 Веб Цонтент 4417 гаурав 20 0 2964208 234396 119160 С 0.7 6.0 0 :59.90 Веб садржај 4860 гаурав 20 0 3066800 372920 132544 С 0.7 9.5 0:48.20 Веб садржај 16007 гаурав 20 0 41944 3780 0.716 врх 0.70 Р . 

Користећи топ команда ће приказати више процеса на вашем терминалу. Хајде да покушамо да прикажемо процес са одређеним именом. Користићемо греп команду за приказ процеса чије име одговара стрингу „монго“.

врх | греп -и монго

Белешка: Овде сам користио опцију -и да учиним претрагу неосетљивом на велика и мала слова.

Излаз ове команде ће приказати процесе који одговарају имену 'монго'

 1158 монгодб 20 0 288564 4848 1320 С 0.7 0.1 1: 03.22 монгод 1158 монгодб 20 0 288564 4848 1320 С 1.0 0.1 1: 03.25 монгод 1158 монгодб 20 0 288564 4848 1320 С 0.7 0.1 1: 03.27 монгод 1158 МонгоДБ 20 0 288564 4848 1320 С 0.7 0.1 1: 03.29 монгод 1158 монгодб 20 0 288564 4848 1320 С 0.7 0.1 1: 03.31 монгод 1158 монгодб 20 0 288564 4848 1320 С 0.7 0.1 1: 03.33 монгод 1158 монгодб 20 0 288564 4848 1320 С 1.0 0.1 1: 03.36 монгод 1158 МонгоДБ 20 0 288564 4848 1320 С 0.7 0.1 1: 03.38 монгод 1158 монгодб 20 0 288564 4848 1320 С 0.7 0.1 1: 03.40 монгод 1158 монгодб 20 0 288564 4848 1320 С 1.0 0.1 1: 03.43 монгод 1158 монгодб 20 0 288564 4848 1320 С 0.7 0.1 1: 03.45 монгод 1158 монгодб 20 0 288564 4848 1320 С 1.0 0.1 1: 03.48 монгод 1158 монгодб 20 0 288564 4848 1320 С 0.3 0.1 1: 03.49 монгод 1158 монгодб 20 0 288564 4848 1320 С 1.0 0.1 1: 03.52 монгод 1158 монгодб 20 0 288564 4848 1320 С 0,7 0,1 1:03,54 монгод 1158 монгодб 20 0 288564 4848 1320 С 1,0 0,1 1:03,57 монгод

Сада ћемо користити пкилл команду за убијање процеса под називом 'монго'.

пкилл монго

Ова команда ће сада убити процес монго. Можемо потврдити да ли је процес био приморан да се прекине коришћењем пгреп команда која приказује пид текућег процеса према критеријумима које је одредио корисник.

гаурав@убунту:~$ пгреп монго гаурав@убунту:~$

Ова команда неће вратити никакву вредност. Ово потврђује да је процес 'монго' сада уништен коришћењем пкилл команда.

Опције које се често користе са пкилл команда

Док користите пкилл команде биће нам потребне поменуте опције за правилно и једноставно коришћење пкилл команда.

ОпцијеОпис
подударање са пуним аргументима укључујући размаке, наводнике, специјалне знакове
да обавести процес пкилл да одговара процесу који покреће наведени корисник
-1поново учитава процес
-9убија процес
-15грациозно прекида процес

Хајде да видимо још један пример пкилл команду користећи опција.

Постоје две команде које се тренутно извршавају на терминалу као што је приказано испод.

пинг ббц.цом пинг иоутубе.цом

Оба процеса покрећу пинг команда. Сада, претпоставимо да желимо да прекинемо само један процес „пинг иоутубе.цом“ онда морамо да користимо опција са пкилл наредба која убија процес са одређеним именом укључујући размаке и наводнике из имена процеса.

Цомманд:

гаурав@убунту:~$ пкилл -ф "пинг иоутубе.цом" гаурав@убунту:~$ 

резултат:

гаурав@убунту:~$ пинг иоутубе.цом ПИНГ иоутубе.цом (142.250.67.206) 56(84) бајтова података. 64 бајта са бом12с08-ин-ф14.1е100.нет (142.250.67.206): ицмп_сек=1 ттл=117 тиме=30,9 мс 64 бајта из бом12с08-ин-ф14.1е100.нет: 1467.кмпсе=225ттл (1467.кмпсе) =117 тиме=121 мс 64 бајта од бом12с08-ин-ф14.1е100.нет (142.250.67.206): ицмп_сек=206 ттл=117 тиме=86,5 мс 64 бајта од бом12с08-ин-ф14.1е100.нет (142.250.67.206): ицмп_сек=206 ттл=117 тиме=86.5 мс 64 бајта из бом12с08-ин-ф12.06.75 ( ): ицмп_сек=207 ттл=117 тиме=105 мс Завршено гаурав@убунту:~$ 

Овде, „пинг иоутубе.цом“ процес је сада прекинут и “пинг ббц.цом” још увек ради на терминалу.

У случају да смо користили пкилл пинг команду, то би убило оба пинг процеса, што је непожељно.

Сигнали који се користе са пкилл команда

пкилл приморава процес да прекине слањем одређеног сигнала том процесу. Постоје три могућа сигнала који пкилл команда може послати процесу у зависности од команде коју корисник даје.

Следи листа доступних сигнала.

СигналСпецификација
1(ХУП)поново учитава наведени процес
9 (КИЛЛ)убија наведени процес
15 (ТЕРМ)нежно зауставља или прекида наведени процес

За овај водич ћемо се у великој мери ослањати на КИЛЛ сигнал. Хајде да прођемо кроз неколико примера да бисмо то боље разумели.

Помоћу пгреп команду за добијање пид подударање са именом апацхе.

гаурав@убунту:~$ пгреп апацхе 1218 10402 10403 гаурав@убунту:~$
пкилл -КИлл апацхе

ИЛИ такође можете користити команду са бројевима (нпр. 1, 9, 15)

пкилл -9 апацхе

Обе команде приказане изнад ће убити процес Апацхе. Потврђујући са пгреп поново заповедати.

гаурав@убунту:~$ пгреп апацхе гаурав@убунту:~$

Као што је пгреп команда не враћа излаз, доказује да је процес апацхе убијен.

Закључак

У овом туторијалу научили смо о пкилл команду и како се користи за убијање процеса користећи директно име процеса. Такође смо сазнали за пгреп наредба која се користи за преузимање ИД-а процеса процеса који покреће било који одређени корисник. Тхе пгреп команда нам омогућава да унакрсно проверимо да ли је процес прекинут.