Süreç bilgilerinin alınması
Tepki vermeyen süreci elde etmek, onu öldürmenin ilk adımıdır. İşlem bilgilerini iki komut kullanarak alabiliriz, i.e., üst ve ps. Çalışan işlemlerin bir listesini görmek için komut satırından top yazın:
$ üstVeya
$ ps
Terminalde ilgili bazı detayları bulacaksınız. Örneğin, “Uygulama” ile ilgili sürecin yanıt vermemeye başladığı bir durumu hayal edin. Bizim durumumuzda, üst komut ekranımıza göre, İşlem Kimlikleri (PID) 5441, 3870, 5062 ve 3637, 4233, 770, 3787 ile çalışan dört Uygulama örneği vardır.
Üst kısım son derece kullanışlı olmasına rağmen, bilgi edinmenin her zaman en etkili yolu değildir. Şimdi diyelim ki uygulama işlemlerini öldürmeniz gerekiyor ama top komutundan gerçek zamanlı bilgi almak istemiyorsunuz. bu senaryoda ps komutunu kullanabilirsiniz. Ayrıca, grep komutunu kullanarak çıktıyı filtreleyebiliriz. Yalnızca Uygulama ile ilgili süreçleri listelemekle ilgileniyoruz. Uygulama ile ilgili işlemleri görmek için aşağıdaki komutu kullanın:
$ ps yardımcı | grep uygulamasıBuna karşılık,
a = Kullanıcıyla ilgili tüm süreçleri göster
u = Sürecin sahibi/kullanıcısını göster.
x = Terminal ile ilgili olmayan tüm işlemleri göster
grep, bir desenle eşleşen satırları yazdırırken, ps geçerli bir işlemin anlık görüntüsünü döndürür. ps'yi filtrelemek için grep kullanmanın nedeni basittir: ps'yi tek başına çalıştırırsanız, çalışan tüm işlemlerin anlık görüntüsünü alırsınız.
Sinyallerin listesini göster:
Tüm sinyallerin listesini görüntülemek için kill -l yazın. kill komutu ile çeşitli sinyaller gönderebiliriz.
Verilen sinyaller listesinden herhangi bir sinyali seçebiliriz.
$ öldür -l
Bazı yaygın öldürme sinyalleri vardır:
Sinyal adı Sinyal değeri Etkisi
SIGHUP 1 KapatSIGINT 2 Klavyeden kesinti
SIGKILL 9 Öldürme Sinyali
SIGTERM 15 Sonlandırma sinyali
SIGSTOP 17, 19, 23 İşlemi durdur
Kimliğe göre işlemleri sonlandır:
Öyleyse, Uygulamamızı sonlandırmak için kill komutunu kullanalım. Sözdizimi şöyle olurdu:
Sinyal PID'sini öldür4129 işlemi öldürmek için öldürme sinyalini gönderin:
Öldür -9 4124
5427 işlemlerini kapatmak için sinyali gönderin:
Öldür -1 5427
5250 işlemini kesmek için klavyeden sinyali gönderin:
Öldür -2 5250
İşlemi ada göre öldür:
Uygulamada çalışan tüm işlemleri öldürmek istiyorsanız. killall komutunu kullanın:
$ killall -9 uygulaması
Bir uygulamada çalışan tüm işlemler başarıyla öldürüldü.
Sonuç:
Herhangi bir Linux işlemini öldürmeden önce, işlem kimliğini almak için çalışan tüm işlemlerin listesini görmemiz gerekir. Kill komutuyla birden fazla sinyal kullanabiliriz, oysa her sinyal belirli bir amaç için kullanılır.