Obținerea informațiilor despre procese
Obținerea procesului care nu răspunde este primul pas în uciderea acestuia. Putem obține informații despre proces utilizând două comenzi, i.e., top și ps. Pentru a vedea o listă a proceselor dvs. care rulează, tastați top din linia de comandă:
$ topSau
$ ps
Veți găsi câteva detalii relevante pe terminal. De exemplu, imaginați-vă o situație în care procesul legat de „Aplicație” nu mai răspunde. În cazul nostru, există patru cazuri de aplicații care rulează cu ID-uri de proces (PID) 5441, 3870, 5062 și 3637, 4233, 770, 3787, conform afișajului de comandă de sus.
Deși partea de sus este extrem de utilă, nu este întotdeauna cea mai eficientă modalitate de a obține informații. Acum, să spunem că trebuie să eliminați procesele de aplicare, dar nu doriți să obțineți informații în timp real din comanda de sus. în acest scenariu, puteți utiliza comanda ps. Mai mult, putem filtra ieșirea folosind comanda grep. Suntem interesați doar să enumerăm procesele legate de aplicație. Utilizați comanda dată mai jos pentru a vedea procesele legate de aplicație:
$ ps aux | aplicație grepÎntrucât,
a = Afișați toate procesele legate de utilizator
u = Afișați proprietarul / utilizatorul procesului.
x = Afișați toate procesele care nu sunt legate de terminal
Grep tipărește linii care se potrivesc cu un model, în timp ce ps returnează un instantaneu al unui proces curent. Motivul utilizării grep pentru a filtra ps este simplu: dacă rulați ps de unul singur, veți obține un instantaneu al tuturor proceselor care rulează.
Afișați lista de semnale:
Tastați kill -l pentru a afișa lista tuturor semnalelor. Putem trimite diverse semnale cu comanda kill.
Putem alege orice semnal din lista semnalelor date.
$ ucide -l
Există câteva semnale comune de ucidere:
Numele semnalelor Valoarea semnalului Efect
SIGHUP 1 ÎnchideSIGINT 2 Întrerupeți de la tastatură
SIGKILL 9 Kill Signal
SIGTERM 15 Semnal de terminare
SIGSTOP 17, 19, 23 Opriți procesul
Ucideți procesele după ID:
Deci, să folosim comanda kill pentru a termina aplicația noastră. Sintaxa ar fi astfel:
Semnal de ucidere PIDTrimiteți semnalul de ucidere pentru a ucide 4129 procese:
Ucide -9 4124
Trimiteți semnalul pentru a închide cele 5427 de procese:
Ucide -1 5427
Trimiteți semnalul pentru a întrerupe procesul 5250 de la tastatură:
Ucide -2 5250
Procesul de ucidere după nume:
Dacă doriți să eliminați toate procesele care rulează în aplicație. Utilizați comanda killall:
Aplicația $ killall -9
Toate procesele care rulează într-o aplicație au fost eliminate cu succes.
Concluzie:
Înainte de a ucide orice proces Linux, mai întâi, trebuie să vedem lista tuturor proceselor care rulează pentru a obține ID-ul procesului. Putem folosi mai multe semnale cu comanda kill, în timp ce fiecare semnal este utilizat într-un scop specific.