Her Linux işletim sistemi bir kill komutuyla gelir. Bu aracın tek amacı, hedef süreci sonlandırmaktır. Özellikle büyük bir değişikliğin/güncellemenin makine tamamen yeniden başlatılmadan yürürlüğe girebileceği sunucu ve kurumsal alanlarda Linux’u çok yönlü kılan güçlü bir araçtır. Bu yazıda, kullanarak bir işlemi nasıl öldüreceğinizi göstereceğim. öldürmeVe pkill e Hepsini öldür.
öldürme süreci
Süreci sonlandırmak için birkaç araç kullanacağız: öldürmeVe pkillBeşinci Hepsini öldür. Hepsi temelde aynı şeyi yapıyor.
Bu araçlar işlemin kendisini tamamlamaz. Bunun yerine, hedef sürece veya süreç grubuna belirli bir sinyal gönderirler. Belirli bir sinyal belirtmezseniz, SIGTERM varsayılan sinyal olarak gönderilecektir. Ancak, SIGKILL, SIGHUP, vb. gibi bir dizi desteklenen sinyal vardır.
İşte temel komut yapısı öldürmeVe pkill e Hepsini öldür.
$ öldürme<sinyal_veya_seçenekler><PID(s)>
$pkill <sinyal_veya_seçenekler><İşlem adı>
$ Hepsini öldür<Salatalık><İşlem adı>
Mümkün olduğu kadar kullanılması tavsiye edilir. öldürme.
öldürmeVe pkill e Hepsini öldür turistik yerler
Kill, işlemi sonlandırmak için varsayılan komuttur.
/usr/bin dizininden çalışır.
Avantajı, öldürmeye benzer başka bir komut olan pkill’e erişime de izin vermesidir ve adı gereği işlemin sonlandırılmasına izin verir.
Bazı uygulamalar, aynı yürütülebilir dosya için birden çok işlem çalıştırır. Aynı ada sahip bir grup işlemi sonlandırmak istiyorsanız, killall aracını kullanın.
$ Hepsini öldür–Yardım Edin
Çalışan tüm işlemleri listele
İlk görev, sonlandırmak istediğiniz işlemin PID’sini (İşlem Tanımlayıcı Numarası) ve/veya adını belirtmektir. Bu örnekte, sonlandırma için hedef işlem olarak Firefox’u kullanacağım. Sistemde çalışan tüm işlemleri listelemek için aşağıdaki komutu çalıştırın.
Çoğu görev için, hedef sürecin pid’ini bilmemiz gerekir. Ancak bazı durumlarda işlem adının kullanılması daha uygundur.
Hedef işlemin tam adını biliyorsanız, doğrudan PID’yi kullanarak alabilirsiniz. Bedov.
Hedef süreç hakkında bilgi almak için bir başka ilginç araç da pgrep’tir. Bu amaç için özel olarak tasarlanmıştır.
$ kontrol <Salatalık><İşlem adı>
öldürme sinyalleri
Araçların desteğini öldüren sinyallere bir göz atalım. Bu çok büyük bir liste. Tabii ki, hepsi her durum için gerekli değildir. Aslında, çoğu durumda yalnızca birkaç ipucu gerekir.
İlk olarak, öldürme araçları listesine bir göz atalım.
Göndermek istediğiniz sinyali seçmenin iki yolu vardır. Tam etiket adını veya eşdeğer bir değeri kullanabilirsiniz.
$ öldürme –<sinyal><PID>
veya,
$ öldürme –<işaret_değeri><PID>
En yaygın sinyaller SIGHUP (1), SIGKILL (9) ve SIGTERM’dir (15). Genel olarak SIGTERM, bir hedef süreci sonlandırmanın varsayılan ve en güvenli yoludur.
pkill durumunda, desteklenen sinyal Kill ile aynıdır. Ancak killall durumunda, desteklenen sinyallerin sayısı ve sinyallerin adları farklıdır.
öldürme süreci
Bir süreci öldürmek için, o hedef sürecin PID’sine ihtiyacımız var. Bir PID’niz olduğunu varsayarak, onu öldürmek için aşağıdaki komutu çalıştırın.
$ öldürme<Salatalık><PID>
Burada kill, varsayılan SIGTERM sinyalini PID’lere gönderecektir. Birden çok işlemi sonlandırmak istiyorsanız, tüm PID’leri bir boşlukla ayırarak listeleyin.
$ öldürme<Salatalık><PID_1><PID_2>
Hedefe göndermek istediğiniz sinyali tanımlayalım.
Bir işlemi yalnızca adını kullanarak öldürmek mi istiyorsunuz? pkill’i kullanın.
$ pkill <Salatalık><İşlem adı>
Bazı durumlarda, belirli bir uygulamada çalışan çok fazla işlem olabilir. Tüm bu PID’leri yazmak zaman alıcı ve sıkıcıdır. Bu tür senaryolarda killall aracını kullanacağız. Öldürmeye çok benzer, ancak işlem adı ile çalışır.
$ Hepsini öldür<Salatalık><İşlem adı>
Örneğin, Firefox çalışırken epeyce işlem başlatır. Hepsini aynı anda öldürmek için bu komutu çalıştırın.
$ Hepsini öldür Ateş Tilkisi
Belirli bir kullanıcı altında çalışan tüm işlemleri sonlandırmak mı istiyorsunuz? Killall işi yapabilir, sorun değil. Bunu çalıştırırken dikkatli olun çünkü sisteminizi tuğlalayabilir ve başka sorunlar yaratabilir. Daha yüksek ayrıcalıklara sahip farklı bir kullanıcı altında çalışan işlemleri öldürmeye çalışıyorsanız, çalışmaz.
$ Hepsini öldür-u<kullanıcı>
İzin çakışması
Linux kullanıcı hiyerarşisinde bulunan özellikler, bir uygulama sonlandırılmak üzereyken de geçerlidir. Kullanıcı, daha yüksek ayrıcalıklarla çalışan işlemleri sonlandıramaz, yalnızca eşit/düşük ayrıcalıklara sahip işlemleri öldürür. Ayrıca kullanıcı, farklı bir kullanıcı altında çalışan işlemleri değiştiremez.
Örneğin evet komutunu alın. Geçerli kullanıcının adını almışsa, kill kullanılarak kolayca sonlandırılabilir.
Şimdi, evet Evet altında koşuyordu mutfak? Mevcut kullanıcı olarak, öldürme çağrısı çalışmayacaktır.
Aynı şekilde başka bir kullanıcının gözetiminde çalışan bir işlemi farklı bir kullanıcı hesabından sonlandıramazsınız.
Son düşünceler
Bu makale, bu komutların temellerini ve yaygın kullanımlarını az önce sundu. Bu öldürme araçları bundan daha fazlasını yapabilir. Herhangi bir aracın yetenekleri hakkında derinlemesine bilgi edinmek için, onun kılavuz sayfasına göz atmanızı tavsiye ederim.
Zevk almak!
Diğer gönderilerimize göz at
[wpcin-random-posts]
İlk Yorumu Siz Yapın