Hurriyet

24 Ağustos 2013 Cumartesi

Linux / Unix Komutu: Kill - Process Kill - Process Durdurmak, Kill Etmek

Bir Process Neden Kill Edilmek İstenir?

Linux ve Unix'te kill komutu durmuş ve duraklamış cevap vermeyen process'ler için kullanılır. Windows'ta task manager gibi çalışır ve process'lere sinyal göndererek onları kapatır. Eğer herhangi bir sinyal ifade edilmediyse default olarak SIGTERM sinyalini kullanır.

Kill Komutuyla Neler Kill Edilebilinir?

Kill komutuyla sadece kendi processlerimizi kill edebiliriz. Root kullanıcısıyla sistem seviyesindekileri kill edebiliriz. Root kullanıcısıyla diğer kullanıcıların process'lerini de kill edebiliriz.

Bir Process Nasıl Kill Edilir?

Linux'ta bir process'i durdurmak için ilk önce kill etmek istediğimiz process'i ve PID'sini bulmalıyız.  Process'i bulmak için  önce aşağıdaki gibi "ps aux" komutunu kullanırız.

ps aux | grep oracle  


Komutun çıktısında 2. sütundaki değerler bizim process'lerimizin PID'sini temsil etmektedir. Buradaki PID'yi aldıktan sonra komutumuzu çalıştırabiliriz. Standart KILL SIGNAL değerimiz 15'tir(SIGTERM); ancak zorla öldürmek istiyorsak 9 sinyalini kullanırız. Diğer kill sinyalleri aşağıda sıralanmıştır. 





kill -s 15   
kill -s 15 2500



Birden Fazla Process Nasıl Kill Edilir?

Kill  komutu yanına birden fazla process koyularak birden fazla process kill edilebilinir.

kill -9 3521 1523 2555  

Pkill Komutu:

pkill komutu process'leri isim vererek kill etmemizi sağlar. Örneğin yukarıdaki örnek için pkill komutunu kullanırsak şöyle kullanmamız gerekir. 

 pkill -9 -u oracle vim 

Buradaki  "-u oracle" parametresi oracle kullanıcısını belirtirken "vim" parametresi ise process'in adını belirtir.

Killall Komutu:

Killall komutu her process'e kill komutunu gönderiri. Özel olarak öldürmek istediğimiz bir process ailesi varsa aşağıdaki gibi bir komut kullanabiliriz. Örneğin bütün apache process'leri kill etmek için: 

 killall -9 apache



Hiç yorum yok:

Yorum Gönder