Top Komutu Nedir?
top komutu, Linux’ta gerçek zamanlı (real-time) sistem izleme aracıdır. CPU, RAM, swap kullanımı, çalışan işlemler (process) ve bunların kaynak tüketimi gibi bilgileri canlı olarak gösterir.
Sistem yöneticileri ve ileri düzey kullanıcılar için, anlık performans sorunlarını tespit etmede olmazsa olmaz bir araçtır.
Temel Kullanım
Terminalde sadece:
top
yazarsanız, işlem listesi ve sistem istatistikleri canlı olarak görüntülenir. Varsayılan olarak 3 saniyede bir yenilenir (değiştirilebilir).
Mevcut Argümanlar (Parametreler)
top komutunun bazı önemli argümanları şunlardır:
-d <süre> | Yenileme süresini saniye cinsinden ayarlar (varsayılan 3). |
-p <PID> | Belirli PID’leri izler. |
-n <sayı> | Belirli sayıda yenilemeden sonra çıkar. |
-u <kullanıcı> | Belirli kullanıcıya ait işlemleri gösterir. |
-b | Batch modu (çıktı kaydı/otomasyon için). |
-H | Thread’leri ayrı ayrı listeler. |
-i | Boşta (idle) işlemleri göstermez. |
-o <sütun> | Varsayılan sıralamayı değiştirir. |
Etkileşimli Kısayollar (Çalışma Sırasında)
top ekranındayken klavye ile kullanılabilen bazı önemli tuşlar:
M - RAM kullanımına göre sırala
P → CPU kullanımına göre sırala
T → Çalışma süresine göre sırala
k → İşlem sonlandır (PID sorar)
u → Kullanıcı filtresi uygula
r → İşlemin önceliğini değiştir (renice)
1 → Tüm CPU çekirdeklerini ayrı göster
c - İşlemin hangi kullanıcıya ait olduğunu göster
q → Çıkış
Gelişmiş Kullanım Örnekleri
Yenileme Süresi 1 Saniye
top -d 1
Açıklama: Çıktı her 1 saniyede bir güncellenir.
Belirli Bir Kullanıcının İşlemleri
top -u ahmet
Açıklama: Sadece erdal kullanıcısına ait işlemler listelenir.
Belirli PID’leri İzleme
top -p 1234,5678
Açıklama: Sadece PID’si 1234 ve 5678 olan işlemler izlenir.
Çıktıyı Dosyaya Kaydetme
top -b -n 1 > sistem_durumu.txt
Açıklama: Batch modda 1 kez çalışır ve sonucu sistem_durumu.txt dosyasına yazar.
CPU Çekirdeklerini Ayırarak Gösterme
top
# Çalışma sırasında 1 tuşuna bas
Açıklama: Tüm CPU çekirdekleri ayrı ayrı gösterilir. Çok çekirdekli sunucularda faydalıdır.
İşlem Önceliğini Değiştirme
top
# k tuşuna bas → PID gir → öncelik değeri gir (nice değeri)
Açıklama: Canlı çalışırken bir işlemin CPU önceliği ayarlanabilir.
Thread’leri Gösterme
top -H
Açıklama: Tüm işlemlerin alt thread’leri ayrı olarak listelenir.
Batch Modu ile Otomatik İzleme
*/5 * * * * top -b -n 1 >> /var/log/top.log
Açıklama: Her 5 dakikada bir sistemin anlık kaynak kullanımı top.log dosyasına eklenir. (bu kodu sunucu cron işlerine eklemeniz gerekir)
İpuçları
- Performans analizi yaparken CPU %90+ ise hangi işlem(ler)in sorumlu olduğunu görmek için P tuşunu kullan.
- Bellek sızıntısı (memory leak) şüphesinde M ile sıralama yaparak anormal RAM tüketen süreçleri bul.
- Batch modda çıktı almak, grep ve awk ile otomatik raporlama için idealdir.