kill Komutu
kill
, Linux işletim sistemi kullanıcılarının bir işlemi sonlandırmalarına veya işlemi belirli bir sinyal ile uyarmalarına olanak tanıyan bir komuttur. Bu sinyaller, genellikle bir işlemi hemen durdurmak yerine, işlemi uyarmak veya bazı kaynaklarını serbest bırakmak için kullanılır.
kill
komutu, bir işlem kimliği (PID) aracılığıyla bir işlemi sonlandırır. İşlem kimliğini öğrenmek için ps
komutunu kullanabilirsiniz:
ps aux | grep <islem_adi>
Yukarıdaki komut, islem_adi
olarak belirtilen isimdeki tüm işlemlerin PID’lerini gösterir.

Sonuçta, işlemi sonlandırmak için aşağıdaki komutu kullanabilirsiniz:
kill <PID>
Yukarıdaki komut, <PID>
yerine öğrendiğiniz işlem kimliğini yazarak işlemi sonlandırır.

Detaylı kullanımı şu şekildedir:
kill [SINYAL] PID
Burada SINYAL
, sonlandırmak için kullanılacak sinyali belirtir. Varsayılan sinyal TERM
sinyalidir. PID
ise az önceki örnekten bildiğiniz üzere sonlandırılacak işlemin PID numarasını belirtir.
kill
komutunun en sık kullanılan sinyalleri şunlardır:
TERM
(15) : İşlemi kibarca sonlandırmak için kullanılır. Bu sinyal, işlemdeki tüm dosyaları kapatır ve ardından işlemi sonlandırır.KILL
(9) : İşlemi hemen sonlandırmak için kullanılır. Bu sinyal, işlemdeki tüm dosyaları kapatmadan önce işlemi sonlandırır. Bu sinyal, bir işlem sonlandırılmak istendiğinde kullanılan en güçlü sinyaldir.STOP
(19) : İşlemi duraklatmak için kullanılır. Bu sinyal, işlemi sonlandırmaz ancak işlem kaynaklarının kullanımını dondurur.CONT
(18) : Duraklatılan bir işlemi devam ettirmek için kullanılır.
kill
komutunun bazı yaygın kullanılan parametreleri şunlardır:
-s
, belirtilen sinyali kullanarak işlemi sonlandırır. Örneğin,-s KILL
komutu KILL sinyalini kullanarak işlemi sonlandırır.-l
, kullanılabilen tüm sinyalleri listeler.-u
, belirtilen kullanıcının tüm işlemlerini sonlandırır.-1
,SIGHUP
sinyalini kullanarak işlemi sonlandırır.-9
,SIGKILL
sinyalini kullanarak işlemi sonlandırır.
pkill Komutu
pkill
, kill
komutuna benzer bir şekilde işlemleri sonlandırmak için kullanılır. Ancak, pkill
komutu bir işlem adı veya argümanı ile eşleşen tüm işlemleri sonlandırır. Örneğin, aşağıdaki komutu kullanarak apache
sunucusu ile ilgili tüm işlemleri sonlandırabilirsiniz:
pkill apache
Yukarıdaki komut, apache
işlem adı ile eşleşen tüm işlemleri sonlandırır.
Detaylı kullanımı şu şekildedir:
pkill [SEÇENEK] [İŞLEM ADI]
Burada SEÇENEK
, kullanılacak parametreleri belirtir. İŞLEM ADI
ise sonlandırılacak işlemlerin adını belirtir.
pkill
komutunun bazı yaygın kullanılan parametreleri şunlardır:
-u
, belirtilen kullanıcının işlemlerini sonlandırır.-f
, tam eşleşmeyi arar ve bulduğunda sonlandırır.-n
, sonlandırılacak işlem sayısını belirler.-x
, tam eşleşmeyi zorlar ve ayrıca yürütülebilir dosya adına bakar.
pkill
komutunun en yaygın kullanılan parametresi -f
dir. -f
parametresi, tam eşleşmeyi arar ve bulduğunda sonlandırır. Bu, işlem adının tam olarak belirtilmediği durumlarda işlemi sonlandırmak için çok yararlıdır.
Ayrıca bir dizi işlemi aynı anda sonlandırmak için de kullanılabilir. Örneğin, pkill httpd
komutu Apache web sunucusunda çalışan tüm işlemleri sonlandırır.
fuser Komutu
fuser
, bir dosyanın kullanımını kontrol etmek için kullanılır. Bir dosyayı açan işlem kimliğini (PID) veya işlem adını gösterir.
fuser <dosya_yolu>
Yukarıdaki komut, <dosya_yolu>
olarak belirtilen dosyanın kullanımda olduğu tüm işlem kimliklerini gösterir. Örneğin, aşağıdaki komutu kullanarak /home/furkan/asilalaybey.py
dosyasını kullanan tüm işlemleri görebilirsiniz:
fuser /home/furkan/asilalaybey.py
fuser
komutunu kullanarak, belirli bir dosyayı kullanımdan kaldırmak isterseniz, -k
bayrağı ile birlikte kullanabilirsiniz:
fuser -k <dosya_yolu>
Yukarıdaki komut, <dosya_yolu>
olarak belirtilen dosyayı kullanan tüm işlemleri sonlandırır.
Detaylı kullanımı şu şekildedir:
fuser [SEÇENEKLER] [DOSYA / DİZİN]
Burada, SEÇENEKLER
, kullanılacak parametreleri belirtir. DOSYA / DİZİN
ise aranacak dosyanın veya dizinin adını belirtir.
fuser
komutunun bazı yaygın kullanılan parametreleri şunlardır:
-v
veya--verbose
, her işlem için ek bilgi sağlar.-m
veya--mount
, bir dosya sistemi bağlantı noktasındaki tüm işlemleri gösterir.-k
veya--kill
, belirtilen dosyaları kullanan tüm işlemleri sonlandırır.
fuser
komutu, özellikle ağ bağlantı noktaları için kullanışlıdır. Örneğin, fuser -n tcp 80
komutu, TCP 80 portunu hangi işlemlerin kullandığını listeler.
Ayrıca bu komut dosyaları kilitleyen işlemleri de belirleyebilir. Örneğin, bir dosya üzerinde çalışan bir işlem kilitlediğinde, başka bir işlem aynı dosyayı açmak veya üzerine yazmak için bekleyebilir. fuser
komutu bu tür durumları tespit etmek için kullanılabilir.
Dikkat Edilmesi Gerekenler
- İşlem sonlandırma işlemi geri alınamaz. İşlem sonlandıktan sonra geri döndürülemez veya kurtarılamaz.
kill
veyapkill
komutunu kullanarak bir işlemi sonlandırdığınızda, işlem hemen durdurulmaz. İşlem sinyali alana kadar çalışmaya devam edebilir.- Bazı işlemler özel izinlere sahip olabilir ve yalnızca belirli kullanıcılar tarafından sonlandırılabilir.
fuser
komutunu kullanarak bir dosyayı kullanımdan kaldırmak isterseniz, o dosyayı kullanmaya devam eden işlemler nedeniyle sorunlar yaşayabilirsiniz.pkill
komutunu kullanarak yanlışlıkla tüm işlemleri sonlandırabilirsiniz. Bu nedenle, özellikle büyük sistemlerde kullanmadan önce dikkatli olmanız gerekir.