1. kill ve killall Komutları Nedir?
Linux’ta kill ve killall komutları, çalışan işlemleri (process) sinyaller göndererek sonlandırmak, durdurmak veya kontrol etmek için kullanılan araçlardır.
- kill → İşlemleri PID (Process ID) numarasına göre sonlandırır.
- killall → İşlemleri isimlerine göre sonlandırır.
Her iki komut da sinyaller (signals) gönderir. Varsayılan sinyal SIGTERM (15) olup, işlemi düzgün şekilde sonlandırmaya çalışır.
2. Temel Kullanım
kill <PID>
killall <process_name>
Örnek:
kill 1234. # PID'si 1234 olan süreci sonlandır
killall firefox # Tüm Firefox süreçlerini sonlandır
3. Sinyaller ve Anlamları
kill ve killall komutlarında en çok kullanılan sinyaller:
Sinyal | Numara | Açıklama |
---|---|---|
SIGTERM | 15 | Süreci nazikçe sonlandırır (varsayılan) |
SIGKILL | 9 | Süreci zorla sonlandırır (geri dönüşü yok) |
SIGHUP | 1 | Terminal bağlantısı kesildi uyarısı gönderir, genelde yeniden başlatma için kullanılır |
SIGSTOP | 19 | Süreci duraklatır |
SIGCONT | 18 | Durdurulmuş süreci devam ettirir |
4. kill Komutu Argümanları
Argüman | Açıklama |
---|---|
-l | Tüm sinyalleri listeler |
-s <signal> | Belirtilen sinyali gönderir |
-<signal> | Sinyali numara veya isim olarak gönderir |
–help | Yardım metnini gösterir |
kill Komutu Örnekleri
4.1. PID ile Süreç Sonlandırma
kill 4567
Açıklama: PID’si 4567 olan sürece varsayılan SIGTERM sinyali gönderir.
4.2. Zorla Süreç Sonlandırma
kill -9 4567
Açıklama: PID’si 4567 olan süreci SIGKILL ile hemen sonlandırır.
4.3. Belirli Sinyali Gönderme
kill -s HUP 4567
Açıklama: SIGHUP sinyalini gönderir.
4.4. Tüm Sinyalleri Listeleme
kill -l
Açıklama: Mevcut tüm sinyalleri listeler.
5. killall Komutu Argümanları
Argüman | Açıklama |
---|---|
-i | Onay isteyerek sonlandırır |
-q | Sessiz mod, işlem bulunamazsa hata vermez |
-r | Düzenli ifade (regex) ile eşleşen süreçleri sonlandırır |
-s <signal> | Belirtilen sinyali gönderir |
-u <kullanıcı> | Belirli bir kullanıcıya ait süreçleri sonlandırır |
6. killall Komutu Örnekleri
5.1. Süreç İsmi ile Sonlandırma
killall firefox
Açıklama: Çalışan tüm Firefox süreçlerini SIGTERM ile sonlandırır.
5.2. Zorla Süreç Sonlandırma
killall -9 chrome
Açıklama: Çalışan tüm Chrome süreçlerini SIGKILL ile sonlandırır.
5.3. Kullanıcıya Ait Tüm Süreçleri Sonlandırma
killall -u ekrem
Açıklama: ekrem kullanıcısına ait tüm süreçleri sonlandırır.
5.4. Düzenli İfade ile Süreç Sonlandırma
killall -r 'fire.*'
Açıklama: İsmi fire ile başlayan tüm süreçleri sonlandırır.
6. İpuçları
- kill -9 ve killall -9 komutlarını dikkatli kullan; bu sinyal süreçlerin kapanmadan önce veriyi kaydetmesine izin vermez.
- ps aux | grep <process> komutuyla PID’leri bulabilir, ardından kill ile sonlandırabilirsin.
- pkill komutu da killall’a benzer şekilde isimle süreç sonlandırır ve regex destekler.