Kullanıcıların kaynak (işlemci, bellek) kullanımını kontrol etmek
Linux ve linux dağıtımlarında bazı yüksek yük durumlarında, tam sorunu anlamak için sunucudaki her kullanıcının kaynak tüketimini bulmamız gerekir.
Bunu bulmak için Linux’ta birçok komut vardır. Normalde “ps” ve “top” komutlarını kullanırız.
Unix kullanıcısını kendi kaynak kullanımlarıyla ayırmak veya sıralamak yeni başlayanlar için oldukça zor. ps komutu, işlemleri farklı şekilde sıralamak için birçok anahtara sahiptir.
Mevcut yürütme işlemlerini CPU ve bellek anlayışı oranı ile sıralayabiliriz.
“ps command” ve “top command” birçok seçeneğe sahip, burada sunucudaki kullanıcıların kaynak (cpu, bellek…) kullanımlarını bulmak için bazı yararlı komut kombinasyonlarını aşağıda bulabilirsiniz.
Statik Görünüm
Sunucudaki geçerli kaynak kullanımının statik bir çıktısıdır. Kullanıcıları ayırmak için grep komutunu kullanabilirsiniz.
Kullanıcı bazlı en fazla CPU kullanım süreçlerini listeleme
ps -e -o pcpu,pid,user,args|sort -k1 -nr|head -10
En fazla CPU tüketen işlemler
ps -auxf|sort -nr -k3|head -10
Kullanıcı bazlı en fazla bellek tüketen işlem listesi
ps -e -o pmem,pid,user,args|sort -k1 -nr|head -10
En fazla bellek kullanan işlemler
ps -auxf|sort -nr -k4|head -10
Kullanıcı altında çalışan tüm işlem listesi
ps -U user-name -u user-name u
ya da
ps -e -o pid,user,args|grep $username
Gerçek Zamanlı İzleme
Dinamik bir sonuç almak için ‘ps’ yerine ‘top‘ komutunu veya ‘ps’ ile birlikte ‘watch‘ komutunu kullanmalısınız.
“top” komutu ile bir kullanıcının işlemlerini listeleme
top -u $kullanıcıadi
Kullanıcı bazlı yüksek CPU kullanım işlelerini listeleme
watch "ps -e -o pcpu,pid,user,args|sort -k1 -nr|head -10"
Kullanıcı bazlı bellek tüketen ilk 10 işlemi listeleme
watch "ps -e -o pmem,pid,user,args|sort -k1 -nr|head -10"