logo

Linux'ta Bir Süreç Nasıl Öldürülür?

Bir işletim sisteminde bilgisayarın RAM'inde yer alan birçok program vardır. Bu programlar işletim sisteminin kendisi veya bir kullanıcı tarafından çalıştırılabilir, bu tür programlara denir 'Süreçler .' Genellikle bir sürecin kendi yaşam döngüsü vardır ve tamamlandığında ya da manuel olarak sonlandırıldığında kendi kendine sonlandırılır. Ancak bazen, süreç zamanlamasındaki hata nedeniyle veya çok fazla RAM veya CPU tüketilmesi nedeniyle bir süreç kilitlenebilir. Bu gibi durumlarda makinemizi beklenmeyen kapanmalardan kurtarmak için işlemleri manuel olarak sonlandırmamız gerekir.

Linux çeşitli araçların hatalı bir süreci sonlandırmasına izin verir. Bir süreci öldürmek için aşağıdaki gibi süreç bilgilerine sahip olmalıyız: PID, sinyal ve daha fazlası .

Süreçlerin yerini belirleme

Bir süreci öldürmek için süreç bilgilerine erişmemiz gerekir. Bir işlemi izlemek için çeşitli komutlar vardır. tepe , not , kavramak, Ve pidof.

Linux sistemi bir süreci aşağıdaki gibi çeşitli yollarla öldürmemize olanak tanır: Bir işlemi adına veya işlem kimliğine (PID) göre sonlandırın. Yani yukarıdaki komutları ihtiyacımıza göre kullanacağız.

Süreçleri 'top' komutuyla bulma

tepe komutu bir Linux sisteminde çalışan tüm işlemleri listelemek için kullanılır. PID, kullanıcı adı, CPU kullanımı, zaman, yürütülen komut ve daha fazlası gibi ayrıntılı bilgileri görüntüler.

İşlemleri bulmak için komutu aşağıdaki gibi yürütün:

dize yöntemleri
 top 

Yukarıdaki komut çalışan işlemleri gösterecektir. Aşağıdaki çıktıyı göz önünde bulundurun:

Süreç Linux'u Öldür

Terminalde yukarı aşağı kaydırarak işlemlere göz atabiliriz. Top komutu, işlemleri filtrelemek için işlem adı, işlemci kullanımı ve daha fazlası gibi çeşitli filtreler sağlar. Üst bölümden çıkmak için tuşuna basın. 'Q' tuşuna bastığınızda sizi terminale geri götürecektir. Ancak tuşuna basarak geleneksel çıkış seçeneğini de kullanabiliriz. CTRL+C anahtarlar.

İşlemleri ps ve grep komutuyla bulma

not komut, işlem bilgilerini görüntülemenin başka bir yoludur. ps komutuyla kullanılan birçok seçenek vardır; örneğin ile, bunun anlamı:

A : Tüm kullanıcılar için süreçleri görüntülemek için

içinde : Belirli bir kullanıcı tarafından kullanılan işlemleri görüntülemek için

X : Tüm süreçleri göstermek için. Eğer x seçeneğini belirtmezsek GUI işlemini göstermeyecektir.

Çalışan tüm işlemleri listelemek için aşağıdaki komutu yürütün:

 ps aux 

Aşağıdaki çıktıyı göz önünde bulundurun:

Süreç Linux'u Öldür

ps komutunun çıktısı şuna benzer: tepe emretmek. İlk iki sütunda işlem adı ve PID, en sağdaki sütunda ise işlem adı verilir.

ps komutu top komutundan daha kullanışlıdır. Çıktıyı grep komutuyla filtrelememizi sağlar.

Tüm süreci javatpo+ kullanıcı adıyla filtrelemek istediğimizi varsayalım, komutu aşağıdaki gibi yürütün:

 ps aux | grep javatpo+ 

Yukarıdaki komut, belirtilen tüm işlemleri grep komutuyla filtreleyecektir. Aşağıdaki çıktıyı göz önünde bulundurun:

Süreç Linux'u Öldür

Yukarıdaki çıktı ps komutunun yanı sıra grep komutunun işlevselliğini de bir arada sağlar.

İşlemi pidof ve pgrep komutuyla bulma

pidof komut aynı zamanda işlemi bulmamızı da sağlar. Eğer bir prosesi ismine göre takip etmek istiyorsak pidof komutu çok faydalı olacaktır. İşlem adı ile birlikte kullanıldığında işlemlerin PID'lerini görüntüler.

Bir işlemin PID'sini bulmak için pidof komutunu aşağıdaki gibi yürütün:

 pidof process_name 

Tam adla çalışan bir sürecimiz varsa krom , PID'lerini almak için komutu aşağıdaki gibi yürütün.

 pidof chrome 

aşağıdaki çıktıyı göz önünde bulundurun:

Süreç Linux'u Öldür

Bir Süreci Öldürmek

Artık süreçleri takip ettiğimize göre bir süreci öldürebiliriz. Bir işlemi sonlandırmak için kullanılan çeşitli komutlar vardır. öldürmek , öldürmek , tepe, Ve öldür.

Bir prosesi öldürmeden önce hangi prosesleri öldürebileceğimizi bilmek gerekir. Aşağıda öldürme süreçleriyle ilgili bazı önemli noktalar verilmiştir:

  • Eğer normal bir kullanıcı iseniz o zaman sadece size ait olan işlemleri öldürebilirsiniz. Diğer kullanıcılar tarafından çalıştırılan işlemleri sonlandıramazsınız. tepe Ve PS'ye komutlar kullanıcılara ilgili işlemi görüntüler.
  • Kök kullanıcı tüm işlemleri sonlandırabilir. Ancak root olarak çalıştırmak için herhangi bir komutun önüne sudo da ekleyebiliriz.
  • Linux'ta bir süreç sonlandırıldığında süreçlere özel bir sinyal iletilir. Linux'ta çeşitli sinyal türleri olmasına rağmen, bu durumda Linux aşağıdakilerle ilgilenir: SIGKILL'LER Ve TERİM sinyaller. Varsayılan olarak. Linux, süreci zarif bir şekilde sonlandıran SIGTERM'i gönderir. Bir işlemi zorla sonlandırmak istiyorsanız bunun yerine SIGKILL'i kullanın.
  • Linux, sistemden tamamen kaldırılana kadar işlemlerin durumunu korur. Bu nedenle, bir üst süreç silinene kadar alt süreçler süreç listesinde görüntülenecektir.
  • Bir süreci eğer içindeyse öldüremeyiz 'kesintisiz uyku' .' Bu durum, bir işlem bir giriş/çıkış işlemi gerçekleştirdiğinde ortaya çıkar. Bu durum 8'de görülebilir.busütunu tepe ve komuta ps.

Bir işlemi killall komutuyla sonlandırmak

Killall komutu, işlemin tam adını biliyorsanız, başka bir kullanıcı tarafından çalıştırılmıyorsa ve Z veya D durumunda değilse, bir işlemi sonlandırmanın en kolay tekniğidir. Kill all komutunda işlemi veya PID'yi bulmaya gerek yoktur. Bir işlemi sonlandırmak için komutu şu şekilde yürütün:

 killall firefox 

Yukarıdaki komut işlemi sonlandıracak ve firefox tarayıcısından çıkacaktır. Aşağıdaki çıktıyı göz önünde bulundurun:

Süreç Linux'u Öldür

Komut işlemi başarıyla sonlandırırsa herhangi bir çıktı vermez.

Süreci zorla sonlandırmak için killall komutunu -SIGKILL ile aşağıdaki şekilde yürütün:

 killall -SIGKILL process_name 

-SIGKILL yerine -9 da kullanabiliriz.

Bir işlemi etkileşimli olarak sonlandırmak için komutu şu şekilde yürütün:

 killall -i process_name 

Bir işlemi farklı bir kullanıcı olarak sonlandırmak için komutu aşağıdaki şekilde yürütün:

 sudo killall process_name 

Ayrıca şunu kullanarak bir işlemi sabit bir süre boyunca sonlandırabiliriz: Ve -Ve bayraklar. 20 dakikadan uzun süredir çalışan bir işlemi sonlandırmak için aşağıdaki komutu yürütün: killall -o 20m işlem_adı

20 dakikadan daha az süredir çalışan bir işlemi sonlandırmak için aşağıdaki komutu yürütün:

 killall -y 20m process_name 

Zaman diliminin kullanımına ilişkin kısaltmalar aşağıdaki gibidir:

saniye: sn

dakika: dk

saat: sa

günler: d

haftalar: w

ay: M

yıl: e

Bir işlemi pkill komutuyla sonlandırın

Bazen sürecin tam adını bilmiyoruz; böyle bir durumda pkill komutu bir süreci sonlandırmak için en kullanışlı yardımcı program olacaktır. Sürecin eşleşen adını girerek bir süreci sonlandırmamızı sağlar. Örneğin, Java adı ile eşleşen tüm işlemleri öldürmek istiyoruz, komutu aşağıdaki gibi yürütün:

 pkill java 

Java adını içeren tüm işlemleri kapatacaktır. Benzer şekilde bir firefox işlemini sonlandırmak için komutu aşağıdaki gibi yürütün:

 pkill fire 

Aşağıdaki çıktıyı göz önünde bulundurun:

Süreç Linux'u Öldür

pkill komutu başarılı bir şekilde yürütülürse herhangi bir çıktı görüntülemez.

Bir işlemi pkill komutuyla zorla sonlandırmak için işlemi aşağıdaki şekilde yürütün:

 pkill -SIGKILL process_name<p></p> <p>we can also use -9 instead of -SIGKILL. </p>

Kill komutuyla bir Süreci sonlandır

Kill komutu, bir süreci sonlandırmak için kullanılan en basit yardımcı programdır; Tek ihtiyacımız olan bir sürecin PID'si. Sürecin PID'sini aldığımızda, bu doğrudan bir süreçtir. Bir işlemi sonlandırmak için kill komutunu ve ardından PID'yi yürütün. Bir işlemin PID'sini bulmak için yukarıda açıklandığı gibi top veya ps aux komutunu kullanın.

PID 5296'ya sahip bir işlemi sonlandırmak için komutu aşağıdaki gibi yürütün:

 kill 5296 

Bir işlemi zorla sonlandırmak için -SIGKILL veya -9 seçeneğini kullanın:

 kill -SIGKILL 5296 

Yukarıdaki komut PID 5296'ya sahip işlemi sonlandıracaktır.

Bir Süreci üst komutla sonlandır

top komutu süreci bulmamızı ve sonlandırmamızı sağlar. Top komutunu kullanarak bir işlemi sonlandırmak basit bir işlemdir. Öncelikle işlemi bulmak için top komutunu çalıştırın ve tuşuna basın. anahtar' Komut çalışırken tuşuna basın. Sizi süreç öldürme moduna sokacak, öldürmek istediğiniz sürecin PID'sini girecektir. Aşağıdaki çıktıyı göz önünde bulundurun:

Süreç Linux'u Öldür

Yukarıdaki çıktıdan görebileceğimiz gibi, bir seçenek var ' Sinyal vermek/öldürmek için PID' işlemi yukarıdaki işlem listesinden öldürmek için. İşlemin PID'sini yazın ve tuşuna basın GİRMEK anahtar.

PID’yi boş bırakırsak en üstteki işlemi sonlandıracaktır.

Sistem Monitörü ile Bir İşlemi Sonlandırın

Linux'un sistem monitörü adı verilen grafik ortamıyla da bir işlemi sonlandırabiliriz. Bir işlemi sistem monitörü aracılığıyla sonlandırmak için aşağıdaki adımları izleyin:

Aşama 1: Sistem monitörünü arayın veya göz atın, açmak için enter tuşuna basın.

Adım 2: Linux sisteminizde çalışan tüm işlemleri listeleyecektir. Aşağıdaki görüntüyü göz önünde bulundurun:

Süreç Linux'u Öldür

Aşama 3: Sürece göz atın ve sonlandırmak istediğiniz işleme sağ tıklayın.

Adım4: Öldür seçeneğini seçin. Ayrıca şunları kullanabiliriz: CTRL+K onu öldürmek için anahtarlar.