Linux Süreç İzleme için 30 Faydalı 'ps Komutu' Örneği


ps (işlem durumu), bir sistem üzerinde çalışan çeşitli işlemlerle ilgili bilgileri görüntülemek için kullanılan yerel bir Unix/Linux yardımcı programıdır: bu bilgiyi/dosyasındaki sanal dosyalardan okur. proc dosya sistemi. Bir Linux sisteminde neler olup bittiğini anlamanıza yardımcı olmak için, özellikle süreç izleme kapsamında sistem yönetimi için önemli yardımcı programlardan biridir.

Çıktısını değiştirmek için çok sayıda seçeneğe sahiptir, ancak bunların az bir kısmının günlük kullanım için pratik olarak yararlı olduğunu göreceksiniz.

Ayrıca Okuyun: Linux'taki Süreçler Hakkında Bilmeniz Gereken Her Şey [Kapsamlı Kılavuz]

Bu makalede, bir Linux sisteminde aktif çalışan süreçleri izlemek için ps komutlarının 30 faydalı örneğine bakacağız.

ps'in, her bilgi sütununun anlamını temsil eden bir başlık satırıyla birlikte çıktı ürettiğini unutmayın; tüm etiketlerin anlamını ps man sayfasında bulabilirsiniz.

Mevcut Kabuktaki Tüm İşlemleri Listele

1. ps komutunu herhangi bir bağımsız değişken olmadan çalıştırırsanız, geçerli kabuk için işlemler görüntülenir.

ps 

Tüm İşlemleri Farklı Formatlarda Yazdırın

2. Bir Linux sistemindeki her etkin işlemi genel (Unix/Linux) biçimde görüntüleyin.

ps -A
OR
ps -e

3. Tüm işlemleri BSD biçiminde görüntüleyin.

ps au
OR
ps axu

4. Tam formatlı bir listeleme gerçekleştirmek için -f veya -F işaretini ekleyin.

ps -ef
OR
ps -eF

Kullanıcının Çalıştırdığı İşlemleri Görüntüle

5. Size ait olan tüm işlemleri seçebilirsiniz (ps komutunun çalıştırıcısı, bu durumda kök), şunu yazın:

ps -x 

6. Bir kullanıcının işlemlerini gerçek kullanıcı kimliğine (RUID) veya adına göre görüntülemek için -U işaretini kullanın.

ps -fU tecmint
OR
ps -fu 1000

7. Bir kullanıcının işlemlerini etkin kullanıcı ID'sine (EUID) veya adına göre seçmek için -u seçeneğini kullanın .

ps -fu tecmint
OR
ps -fu 1000

Kök Olarak Çalışan Tüm İşlemleri Yazdır (Gerçek ve Etkili Kimlik)

8. Aşağıdaki komut, kök kullanıcı ayrıcalıklarıyla (gerçek ve etkin kimlik) çalışan her işlemi kullanıcı biçiminde görüntülemenizi sağlar.

ps -U root -u root 

Grup Süreçlerini Görüntüle

9. Belirli bir gruba (gerçek grup kimliği (RGID) veya adı) ait olan tüm işlemleri listelemek istiyorsanız, yazın.

ps -fG apache
OR
ps -fG 48

10. Etkin grup adına (veya oturumuna) ait tüm süreçleri listelemek için yazın.

ps -fg apache

Süreçleri PID ve PPID'ye Göre Görüntüleme

11. İşlemleri PID'e göre aşağıdaki gibi listeleyebilirsiniz.

ps -fp 1178

12. İşlemi PPID'ye göre seçmek için yazın.

ps -f --ppid 1154

13. PID listesini kullanarak bir seçim yapın.

ps -fp 2226,1154,1146

TTY'ye göre Süreçleri Görüntüle

14. İşlemleri tty'ye göre seçmek için -t işaretini aşağıdaki gibi kullanın.


ps -t pts/0
ps -t pts/1
ps -ft tty1

Yazdırma İşlem Ağacı

15. Süreç ağacı, sistemdeki süreçlerin birbirine nasıl bağlandığını gösterir; ebeveynleri öldürülen süreçler init (veya systemd) tarafından benimsenir.

ps -e --forest 

16. Bunun gibi belirli bir süreç için bir süreç ağacı da yazdırabilirsiniz.

ps -f --forest -C sshd
OR
ps -ef --forest | grep -v grep | grep sshd 

İşlem Konularını Yazdırma

17. Bir işlemin tüm iş parçacıklarını yazdırmak için -L işaretini kullanın; bu, LWP'yi (hafif işlem) gösterecektir. Strong>) ve NLWP (hafif işlemlerin sayısı) sütunları.

ps -fL -C httpd

Özel Çıktı Formatını Belirtin

-o veya –format seçeneklerini kullanarak ps, aşağıda gösterildiği gibi kullanıcı tanımlı çıktı formatları oluşturmanıza olanak tanır.

18. Tüm biçim belirticileri listelemek için L işaretini ekleyin.

ps L

19. Aşağıdaki komut, bir işlemin PID'ini, PPID'sini, kullanıcı adını ve komutunu görüntülemenizi sağlar.

ps -eo pid,ppid,user,cmd

20. Aşağıda dosya sistemi grubunu, güzel değeri, başlangıç zamanını ve bir işlemin geçen süresini gösteren özel çıktı biçiminin başka bir örneği verilmiştir.

ps -p 1154 -o pid,ppid,fgroup,ni,lstart,etime

21. PID'sini kullanarak bir işlem adını bulmak için.

ps -p 1154 -o comm=

Ebeveyn ve Çocuk Süreçlerini Görüntüle

22. Belirli bir işlemi adına göre seçmek için -C bayrağını kullanın; bu aynı zamanda onun tüm alt süreçlerini de gösterecektir.

ps -C sshd

23. Bir sürecin tüm örneklerinin tüm PID'lerini bulun; bu, bir std çıktısından veya dosyasından PID'leri okuması gereken komut dosyaları yazarken kullanışlıdır.

ps -C httpd -o pid=

24. Bir işlemin yürütme süresini kontrol edin.

ps -eo comm,etime,user | grep httpd

Aşağıdaki çıktı, HTTPD hizmetinin 1 saat 48 dakika ve 17 saniyedir çalıştığını göstermektedir.

Linux Sistem Performansı Sorunlarını Giderme

Sisteminiz olması gerektiği gibi çalışmıyorsa, örneğin alışılmadık derecede yavaşsa, aşağıdaki gibi bazı sistem sorun giderme işlemlerini gerçekleştirebilirsiniz.

26. Linux'ta en yüksek bellek ve CPU kullanımına göre en çok çalışan işlemleri bulun.

ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head
OR
ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head

27. Linux işlemlerini/yanıt vermeyen uygulamaları veya yüksek CPU zamanı harcayan herhangi bir işlemi sonlandırmak.

Öncelikle yanıt vermeyen işlemin veya uygulamanın PID'ini bulun.

ps -A | grep -i stress

Daha sonra hemen sonlandırmak için kill komutunu kullanın.

kill -9 2583 2584

Güvenlik Bilgilerini Yazdır

28. Güvenlik bağlamını (özellikle SELinux için) bunun gibi gösterin.

ps -eM
OR
ps --context

29. Bu komutla güvenlik bilgilerini kullanıcı tanımlı formatta da görüntüleyebilirsiniz.

ps -eo  euser,ruser,suser,fuser,f,comm,label

Watch Utility'yi Kullanarak Gerçek Zamanlı Süreç İzleme Gerçekleştirin

30. Son olarak, ps statik bilgileri görüntülediğinden, aşağıdaki komutta olduğu gibi her saniyeden sonra görüntülenen tekrarlanan çıktıyla gerçek zamanlı süreç izleme gerçekleştirmek için izleme yardımcı programını kullanabilirsiniz. (hedefinize ulaşmak için özel bir ps komutu belirtin).

watch -n 1 'ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head'

Önemli: ps yalnızca statik bilgileri gösterir; sık sık güncellenen çıktıyı görüntülemek için htop; gibi araçları kullanabilirsiniz. top ve bakışlar: son ikisi aslında Linux sistem performansı izleme araçlarıdır.

Aşağıdaki ilgili makaleleri de okumak isteyebilirsiniz.

  1. Linux'ta PID Numarasını Kullanarak İşlem Adı Nasıl Bulunur?
  2. Linux'ta En Yüksek Bellek ve CPU Kullanımına Göre En İyi Çalışan İşlemleri Bulun
  3. Linux'ta Bir Süreci Sonlandırmak için Öldürme, Pkill ve Killall Komutları Kılavuzu
  4. Linux'ta Çalışan Süreçler Nasıl Bulunur ve Öldürülür
  5. Linux Komutunu Arka Planda Başlatma ve Terminalde İşlemi Ayırma

Şimdilik bu kadar. Paylaşmak istediğiniz herhangi bir yararlı ps komut örneğiniz varsa (ne yaptığını açıklamayı unutmayın), aşağıdaki yorum formunu kullanın.