Ders 9.3: Sinyaller: kill, killall ve pkill
Sinyalin ne olduğu, önemlileri (SIGTERM, SIGKILL, SIGINT, SIGHUP, SIGSTOP, SIGCONT) ve numaraları, bir süreci kill ile kibarca ve kill -9 ile zorla sonlandırmak, bazı süreçlerin SIGTERM'i neden yok saydığı, başka kullanıcıların süreçlerine sinyal gönderirken izinler, killall ve pkill ile adıyla sonlandırmak ve SIGHUP ile bir hizmet programına yapılandırmasını yeniden okutmak.
20 dk
Bu derste öğreneceklerin
- Sinyalin ne olduğunu açıklamak ve yaygın olanları saymak
- Bir süreci SIGTERM ile, yalnızca gerekirse SIGKILL ile sonlandırmak
- SIGKILL'in neden son çare olduğunu açıklamak
- Başka kullanıcıların süreçlerine sudo ile sinyal göndermek
- killall ve pkill ile süreçleri adıyla sonlandırmak
- SIGHUP ile bir hizmet programını yeniden yüklemek
Temel terimler
- Sinyal
- Çekirdeğin bir sürece ilettiği küçük, numaralı mesaj. Süreç bunun için bir işleyici çalıştırabilir, onu yok sayabilir ya da varsayılan eylemi uygular (genelde: sonlanmak).
- SIGTERM (15)
- 'Lütfen sonlan.' kill'in varsayılanı. Yakalanabilir; böylece programlar durumlarını kaydedip düzgünce çıkabilir.
- SIGKILL (9)
- 'Hemen dur.' Yakalanamaz ve yok sayılamaz; çekirdek süreci hemen kaldırır. Son çare.
- SIGINT (2)
- Kesme (interrupt): Ctrl+C'nin ön plandaki programa gönderdiği sinyal.
- SIGHUP (1)
- 'Hattı kapat': aslında terminal hattının kesildiğini bildirirdi. Hizmet programları onu 'yapılandırmanı yeniden yükle' olarak kullanır.
- SIGSTOP (19) ve SIGCONT (18)
- Bir süreci duraklatır (SIGKILL gibi yakalanamaz) ve devam ettirir. Ctrl+Z yakalanabilen SIGTSTP'yi (20) gönderir.
- kill, killall, pkill
- kill PID'lere, killall tam adı eşleşen süreçlere, pkill bir kalıba uyan süreçlere sinyal gönderir. Adlarına rağmen hepsi her sinyali gönderebilir.
← Sistemi izlemek: top, uptime ve free · Tüm dersler · Ön plan ve arka plan işleri →