Linux operativni sustav nudi nekoliko načina za zaustavljanje procesa operativnog sustava Linux. Očiti način zaustavljanja programa je klikom na gumb X u gornjem lijevom ili desnom kutu. Ali postoji bezbroj drugih načina za ubijanje procesa; ovdje smo kako bismo razgovarali o drugim učinkovitim načinima.
Načini ubijanja procesa u Linuxu
Slijed kontrole
Drugi očigledan način da se ubije postupak koji je upravo pokrenut je da se u naredbeni redak upiše Ctrl-C. Kontrolni slijed Ctrl-C općenito je siguran za upotrebu iako je moguć gubitak podataka.
Slijed Ctrl-Z obustavit će pokrenuti postupak. Šalje SIGTSP signal procesu čija je zadana radnja obustavljanje procesa.
ubiti naredbe
Linux operativni sustav dolazi s naredbom kill kojom možete prekinuti postupak kada prestanu reagirati ili ako troši previše resursa. Proces u Linuxu je instanca programa.
Jedinstveni PID automatski se generira za taj postupak kad se program pokrene. Init postupak je prvi postupak koji započinje kada se Linux sustav pokrene i dodijeli mu vrijednost '1'.
Init je glavni postupak i ne može se ubiti pomoću naredbe kill. Naredba kill u procesu pokretanja samo je zahtjev za isključivanje sustava.
Ovaj vodič provest će vas kroz korake i nekoliko načina za zaustavljanje tekućeg postupka pomoću Linux terminala.
Korijenski korisnik ima sva dopuštenja potrebna za ubijanje svih procesa. Korijensku ljusku možete dobiti naredbom su ili dodati sudo prije naredbe i pokrenuti je.
Zadani signal koji šalje naredba kill
Ubijanjem postupka navedenom će se procesu poslati poruka o prekidu. Dvije glavne vrste poruka o raskidu uključuju:
• SIGTERM - naredba kill će prema zadanim postavkama poslati signal SIGTERM. Trebao bi omogućiti da se postupak završi svojim uobičajenim postupcima isključivanja. To je nježniji način pokušaja okončanja postupka i može biti blokiran.
• SIGKILL - Uvijek će proces naglo ubiti. Ako SIGKILL ne radi, operativni sustav nije uspio. To je najbrža i najučinkovitija metoda za ubijanje procesa.
Navedite pokrenute procese
Naredba top, ps naredba i naredba pidof su najjednostavniji načini pregleda izvršenih procesa u Linux sustavu.
Sintaksa:
ps -e | grep naziv-procesa
Snimka zaslona u nastavku pokazuje kako pomoću naredbe ps provjeriti radi li MySQL na sustavu. Daje nam PID MySQL demona, koji je1162.
Uobičajene opcije za dodavanje naredbi ps
• -a: pregledajte procese svih korisnika.
• -u: pregledajte detaljne informacije o svakom procesu.
• -x: prikaz svih procesa kojima upravljaju demoni.
ps -e
Sintaksa:
vrh
Naredba top prikazat će vam PID, korisnika, ime resursa i koliko sistemskih resursa koristi svaki proces. Oni su korisni ako odlučite prekinuti bilo koji postupak.
Upotreba naredbe pgrep također je vrlo učinkovita u dobivanju odgovarajućeg ID-a procesa.
Uobičajene opcije za dodavanje u naredbu pgrep.
• -l: navedite imena procesa i PID-ove.
• -n: Vrati najnoviji postupak.
• -o: Vrati najstariji postupak.
• -u: pronađite procese koji pripadaju određenom korisniku.
• -x: Pronađite postupak koji se točno podudara s danim uzorkom.
Naredba pidof koristi se za pronalaženje IP procesa ako znate njegovo ime.
Sintaksa:
pidof
Opcije:
• -c: Vraća PID-ove unutar jednog korijenskog direktorija.
• -o: Izostavit će određene PID-ove.
• -s: Vrati jedan PID.
• -x: Vraća PID-ove ljuski koje izvode skripte.
Proces u Linuxu možete ubiti različitim metodama, ovisno o tome znate li PID procesa, naziv procesa ili vrijeme izvođenja procesa.
naredba killall
Naredba killall koristi se za ubijanje procesa po imenu. Jednom naredbom može ubiti više procesa i prema zadanim postavkama šalje signal SIGTERM.
Sintaksa:
killall
Opcije dostupne s naredbom killall:
• -e: Vratite točno podudaranje imena procesa.
• -I: Naredba će zanemariti slučaj prilikom pronalaska naziva procesa.
• -i: Tražit će dodatne informacije kada ubija postupak po imenu.
• -u: Ubit će procese u vlasništvu određenog korisnika sustava.
• -v: Pružit će povratne informacije o tome je li postupak ubijanja uspješno izveden.
Naredba killall također može završiti procese u Linux sustavu na temelju vremena izvođenja procesa.
• -o: Ova će opcija uništiti sve procese duže od navedenog vremena.
• -y: Ova će opcija ubiti sve procese koji se izvode kraće od navedenog vremena.
Primjer:
• killall -o 20m: naredba će ubiti sve procese starije od 20 minuta.
• Killall -y 20m: naredba će ubiti sve procese koji se izvode manje od 15 minuta.
naredba kill
Naredba kill ubit će proces ako poznajete IP procesa.
Sintaksa:
ubiti
Naredba kill ubija jedan proces s danim ID-om procesa. Naredba će poslati signal SIGTERM da se zaustavi i pričeka da postupak podvrgne svojim rutinskim postupcima isključivanja.
Kill -9 naredba
Naredba kill -9 koristi se za završavanje neodgovarajućih procesa ili usluga.
Sintaksa:
ubiti -9
ili
ubiti -POTPISATI
Naredba kill -9 poslat će signal SIGKILL da se postupak odmah isključi. Naredba kill -9 zaobići će standardnu rutinu isključivanja i svi nespremljeni podaci bit će izgubljeni.
Programi koji ne reagiraju ignorirat će naredbu kill, ali će se prekinuti kad god se izda naredba kill -9.
Ostale često korištene opcije ubijanja uključuju:
• -1 (HUP): Ovo je opcija "spusti slušalicu" i općenito je vrlo sigurna.
• -2 (SIGINT): Ovo je isti signal kao i Ctrl-C i smatra se sigurnom alternativom za ubijanje programa.
• -15 (-TERM): ovo je zadani signal prekida i općenito je vrlo siguran.
Potpuni popis svih dostupnih signala možete dobiti pomoću naredbe kill -l.
naredba pkill
Naredba pkill će ubiti proces kad znate njegovo ime. Prema zadanim postavkama, pkill će poslati signal SIGTERM da završi postupak.
Sintaksa:
pkill
pkill opcije:
• -n: Ova naredba će ubiti najnovije procese.
• -o: Ova naredba će ubiti najstarije procese.
• -u: Ova naredba će ubiti procese na temelju odabranog korisnika.
• -x: Ova naredba će ubiti procese koji se podudaraju s uzorkom.
• -signal: šalje zadani signal koji nije zadani signal SIGTERM.
xkill
Naredba xkill zatvorit će vezu poslužitelja s klijentima.
xkill
Naredba xkill zaustavit će neželjene poslužiteljske procese.
gornja naredba
Naredba top pruža sučelje putem kojeg korisnik može odrediti postupak prekida.
Sintaksa:
vrh
Da biste PID-om ubili proces, umetnite k sa sučelja i zatim unesite navedeni ID procesa.
Rekapitulacija
• Morate imati sudo dozvole za ubijanje procesa kroz naredbeni redak.
• Kad god generirate signal pomoću naredbe kill, Linux sustav prekida normalan tijek izvršenja ciljnog procesa.
• Da biste pronašli pokrenut postupak, možete koristiti naredbe ps, top, pgrep ili pidof.
• Proces možete ubiti imenom ili ID-om procesa pomoću naredbi kilall, pkill, kill, xkill ili top.
• Proces ubijanja poslat će signal prekida SIGTERM, SIGHUP ILI SIGKILL.
• Možete koristiti System Monitor kako biste ubili Linux proces. Može se naći u sistemskim alatima i pruža nekoliko opcija poput procesa na vrhu, završetka ili ubijanja procesa.
• Naredbu kill i njezine inačice prilično je jednostavno razumjeti i koristiti.
U ovom smo vodiču istaknuli razne načine za ubijanje procesa u Linuxu. Postoji lagana krivulja učenja u pogledu popisa opcija signala koje nudi, što je neophodno za pravilno administriranje Linuxa. Ako želite saznati više, predlažem da pogledate njihove odgovarajuće stranice s uputama.