Pridobivanje informacij o procesih
Dobivanje neodzivnega postopka je prvi korak pri njegovem ubijanju. Informacije o postopku lahko dobimo z uporabo dveh ukazov, tj.e., vrh in ps. Če si želite ogledati seznam izvajanih procesov, v ukazno vrstico vnesite top:
$ vrhAli
$ ps
Na terminalu boste našli nekaj ustreznih podrobnosti. Na primer, predstavljajte si situacijo, ko se postopek, povezan z aplikacijo, ne odziva. V našem primeru obstajajo štirje primeri aplikacij, ki se izvajajo z ID-ji procesov (PID) 5441, 3870, 5062 in 3637, 4233, 770, 3787, v skladu z našim zgornjim prikazom ukazov.
Čeprav je vrh izjemno uporaben, ni vedno najučinkovitejši način za pridobivanje informacij. Zdaj recimo, da morate ubiti procese aplikacij, vendar informacij iz sprotnega časa ne želite dobiti v zgornjem ukazu. v tem primeru lahko uporabite ukaz ps. Poleg tega lahko izhod filtriramo z ukazom grep. Zanima nas samo seznam postopkov, povezanih z aplikacijo. S spodnjim ukazom si oglejte procese, povezane z aplikacijo:
$ ps pomožno | prijava grepKer,
a = Prikaži vse uporabniške procese
u = Pokaži lastnika / uporabnika postopka.
x = Prikaži vse procese, ki niso povezani s terminali
Grep natisne vrstice, ki se ujemajo z vzorcem, medtem ko ps vrne posnetek trenutnega procesa. Razlog za uporabo grepa za filtriranje ps je preprost: če ps zaženete samostojno, boste dobili posnetek vseh zagnanih procesov.
Prikaži seznam signalov:
Za prikaz seznama vseh signalov vnesite kill -l. Z ukazom kill lahko pošiljamo različne signale.
Na seznamu podanih signalov lahko izberemo kateri koli signal.
$ kill -l
Obstaja nekaj pogostih signalov o ubijanju:
Ime signalov Vrednost signala Učinek
VZDIH 1 OdložiteZNAK 2 Prekinitev s tipkovnice
SIGKILL 9 Kill Signal
SIGTERM 15 Končni signal
SIGSTOP 17, 19, 23 Ustavite postopek
Ubijanje procesov po ID-ju:
Torej, uporabimo ukaz kill za zaključek naše aplikacije. Sintaksa bi bila taka:
Ubiti signal PIDPošljite signal za ubijanje, da ubijete 4129 procesov:
Ubij -9 4124
Pošljite signal, da prekinete 5427 procesov:
Ubij -1 5427
Pošljite signal, da prekinete postopek 5250 s tipkovnice:
Ubij -2 5250
Postopek ubijanja po imenu:
Če želite ubiti vse procese, ki se izvajajo v aplikaciji. Uporabite ukaz killall:
$ killall -9 aplikacija
Vsi procesi, ki se izvajajo v aplikaciji, so bili uspešno ubiti.
Zaključek:
Preden ubijemo kateri koli proces Linux, moramo najprej videti seznam vseh delujočih procesov, da dobimo ID procesa. Z ukazom kill lahko uporabimo več signalov, medtem ko se vsak signal uporablja za določen namen.