Ero sivun ”Kill” versioiden välillä
Ei muokkausyhteenvetoa |
(zombien tappaminen) |
||
Rivi 19: | Rivi 19: | ||
kill -9 6584 | kill -9 6584 | ||
Signaalia 9 saattaa tarvita silloin, kun prosessi ei suostu kuuntelemaan oletussignaalia ja sulkemaan itseään hyvässä järjestyksessä. Muissa tapauksissa signaalin 9 käyttöä tulee välttää. Edes SIGKILL ei tapa [[zombie]]-prosessia ja SIGKILL saattaa muuttaa prosessin zombieksi, jos se on jumissa järjestelmäkutsun jumiutumisen takia. | Signaalia 9 saattaa tarvita silloin, kun prosessi ei suostu kuuntelemaan oletussignaalia ja sulkemaan itseään hyvässä järjestyksessä. Muissa tapauksissa signaalin 9 käyttöä tulee välttää. Edes SIGKILL ei tapa [[zombie]]-prosessia ja SIGKILL saattaa muuttaa prosessin zombieksi, jos se on jumissa järjestelmäkutsun jumiutumisen takia. | ||
Voit tappaa a [[zombie]]-prosessin seuraavalla komentorivikomennolla, mikäli sitä ei muuten saa poistettua. | |||
kill -HUP $(ps -A -ostat,ppid | grep -e '[zZ]'| awk '{ print $2 }') | |||
== Katso myös == | == Katso myös == |
Versio 31. maaliskuuta 2015 kello 02.40
Komentorivikomennon kill avulla prosesseille (ohjelmille) voidaan lähettää monia niiden toimintaan vaikuttavia signaaleja. Yleisin käyttökohde on huonosti käyttäytyvien ohjelmien sulkeminen.
Käyttö
Komennon syntaksi on
kill <signaalin numero tai nimi> <prosessin pid>
Mikäli mitään signaalinnimeä tai -numeroa ei ole määritelty, lähetetään signaali 15 (SIGTERM), joka pyytää prosessia sulkemaan itsensä. Listan käytettävissä olevista signaaleista saa komennolla
kill -l
Toimenpiteen kohteena oleva prosessi määritellään sen pid-numeron mukaan. Pid-numeron saa selville esimerkiksi komennolla
ps -A
tai joissakin järjestelmissä myös komennolla
pidof ohjelmannimi
Mikäli et halua erikseen etsiä prosessin pid-numeroa, voit käyttää komentoa killall tai pkill.
Esimerkkejä
Suljetaan prosessi 36987 lähettämällä sille signaali 15 (SIGTERM):
kill 36987
Lähetetään prosessille 6584 signaali 9 (SIGKILL), mikä lopettaa prosessin suorituksen välittömästi:
kill -9 6584
Signaalia 9 saattaa tarvita silloin, kun prosessi ei suostu kuuntelemaan oletussignaalia ja sulkemaan itseään hyvässä järjestyksessä. Muissa tapauksissa signaalin 9 käyttöä tulee välttää. Edes SIGKILL ei tapa zombie-prosessia ja SIGKILL saattaa muuttaa prosessin zombieksi, jos se on jumissa järjestelmäkutsun jumiutumisen takia.
Voit tappaa a zombie-prosessin seuraavalla komentorivikomennolla, mikäli sitä ei muuten saa poistettua.
kill -HUP $(ps -A -ostat,ppid | grep -e '[zZ]'| awk '{ print $2 }')