Android

Paano pumatay ng isang proseso sa linux

Paano maka Connect sa Wifi kahit Hindi mo Alam Password

Paano maka Connect sa Wifi kahit Hindi mo Alam Password

Talaan ng mga Nilalaman:

Anonim

Naranasan mo na ba ang sitwasyon kung saan naglulunsad ka ng isang application, at biglang habang ginagamit mo ang application, nagiging hindi responsable at hindi inaasahang pag-crash? Sinusubukan mong simulan muli ang application, ngunit walang nangyari dahil ang orihinal na proseso ng aplikasyon ay hindi tunay na nag-o-down na ganap.

Sa totoo lang, nangyari ito sa ating lahat, hindi ba? Ang solusyon ay upang wakasan o patayin ang proseso ng aplikasyon. Pero paano?

Sa kabutihang palad, maraming mga utility sa Linux na nagbibigay-daan sa iyo upang patayin ang mga maling proseso., ipapakita namin sa iyo kung paano gamitin ang kill , killall , at mga utos ng pkill upang wakasan ang isang proseso sa Linux.

Ang pangunahing pagkakaiba sa pagitan ng mga tool na ito ay ang kill pagtatapos ng mga proseso batay sa numero ng Proseso ng ID (PID), habang ang mga utos ng killall at pkill nagtatapos sa mga proseso ng pagtakbo batay sa kanilang mga pangalan at iba pang mga katangian.

Ang mga regular na gumagamit ay maaaring pumatay ng kanilang sariling mga proseso, ngunit hindi yaong kabilang sa iba pang mga gumagamit, habang ang root user ay maaaring pumatay sa lahat ng mga proseso.

System Kill Signals

kill , kill , at pkill magpadala ng isang ibinigay na signal sa tinukoy na mga proseso o proseso ng mga grupo. Kung walang tinukoy na signal, ang bawat tool ay nagpapadala ng 15 ( TERM ).

Ang pinaka-karaniwang ginagamit na signal ay:

  • 1 (-HUP): upang mai-reload ang isang proseso. 9 (-KILL): upang patayin ang isang proseso. 15 (-TERM): upang marunong itigil ang isang proseso.

Ang mga signal ay maaaring tinukoy sa tatlong magkakaibang paraan:

  • gamit ang numero (hal., -1) kasama ang "SIG" prefix (hal., -SIGHUP) nang walang "SIG" prefix (hal., -HUP).

Gamitin ang pagpipilian na -l upang ilista ang lahat ng magagamit na mga signal:

kill -l # or killall -l

Ang mga hakbang na nakabalangkas sa ibaba ay gagana sa lahat ng mga pamamahagi ng Linux.

Pagtatapos ng Mga Proseso Gamit ang Utos ng kill

Upang wakasan ang isang proseso kasama ang utos ng kill , kailangan mo munang mahanap ang proseso ng PID. Maaari mong gawin ito gamit ang iba't ibang mga utos tulad ng top , ps , pidof at pgrep .

Sabihin natin na ang browser ng Firefox ay naging hindi responsable, at kailangan mong patayin ang proseso ng Firefox. Upang mahanap ang proseso ng ID, gamitin ang utos ng pidof :

pidof firefox

Ang utos ay i-print ang lahat ng mga proseso ng Firefox:

2551 2514 1963 1856 1771

Kapag alam mo na ang Firefox ay nagpoproseso ng mga PID upang wakasan ang lahat ng mga ito ipadala ang signal ng TERM :

kill -9 2551 2514 1963 1856 1771

Pagwawakas ng Mga Proseso Gamit ang killall Command

Ang killall nagtatapos sa lahat ng mga programa na tumutugma sa isang tinukoy na pangalan.

Gamit ang parehong senaryo tulad ng dati, maaari mong patayin ang proseso ng Firefox sa pamamagitan ng pag-type:

killall -9 firefox

Tumatanggap ang killall maraming mga pagpipilian tulad ng pagpapadala ng mga signal sa mga proseso na pag-aari ng isang ibinigay na gumagamit, pagtutugma ng mga pangalan ng mga proseso laban sa mga regular na expression, at oras ng paglikha. Maaari kang makakuha ng isang listahan ng lahat ng mga pagpipilian sa pamamagitan ng pag-type ng killall (nang walang anumang mga argumento) sa iyong terminal.

Halimbawa, upang wakasan ang lahat ng mga proseso na tumatakbo bilang isang "sara" ng gumagamit, tatakbo mo ang sumusunod na utos:

sudo killall -u sara

Pagwawakas ng Mga Proseso Gamit ang pkill Command

pkill proseso na tumutugma sa pattern na ibinigay sa linya ng utos:

pkill -9 firefox

Ang pangalan ng proseso ay hindi kailangang maging isang eksaktong tugma.

Sa pkill maaari ka ring magpadala ng isang signal sa mga proseso na pagmamay-ari ng isang ibinigay na gumagamit. Upang patayin lamang ang mga proseso ng firefox na pag-aari ng gumagamit na "sara", mai-type mo:

pkill -9 -u sara firefox

Konklusyon

Ang pagtatapos ng mga unresponsive na programa gamit ang kill , killall at pkill utos ay isang madaling gawain. Kailangan mo lamang malaman ang pangalan ng proseso o PID.

pumatay ng terminal