Bu rehberde, sunucu kaynaklarını izlemek için kullanılan üç önemli Linux komutunu inceleyeceğiz: top
, du
ve netstat
. Bu komutlar, sistem yöneticilerinin CPU, bellek, disk alanı ve ağ bağlantıları gibi önemli kaynakların kullanımını izlemesine olanak sağlar. Örneklerle açıklayarak, bu komutların temel kullanımını ve gelişmiş özelliklerini ele alacağız. Bu eğitimde Ubuntu 20.04 üzerinde çalışacağız, ancak siz dilediğiniz Linux dağıtımını kullanabilirsiniz.
İçindekiler
- Ön Gereksinimler
- Sistemin Güncellenmesi
top
Komutudu
Komutunetstat
Komutu
1. Ön Gereksinimler
- Sunucu: Ubuntu 20.04 işletim sistemi kurulu bir sunucu
- Kullanıcı Yetkileri: Root veya sudo yetkisine sahip bir kullanıcı
2. Sistemin Güncellenmesi
Yeni bir Ubuntu kurulumu yaptığınızda, paketlerin en güncel versiyonlarına yükseltilmesi önerilir. Bunun için şu komutu kullanabilirsiniz:
sudo apt update -y && sudo apt upgrade -y
Sistem güncellendikten sonra, kaynak izleme komutlarını incelemeye başlayabiliriz.
3. top
Komutu: İşlem Yönetimi ve Performans İzleme
top
komutu, çalışan süreçleri gerçek zamanlı olarak izlemenize olanak tanır. Bu komut, CPU, bellek kullanımı gibi sistem kaynaklarını ayrıntılı bir şekilde gösterir. Temel kullanımı oldukça kolaydır, sadece terminale top
yazarak aşağıdaki gibi bir çıktı elde edebilirsiniz:
top - 11:24:59 up 7 days, 11:27, 2 users, load average: 0.00, 0.00, 0.00
Tasks: 109 total, 1 running, 108 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.1 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.2 si, 0.0 st
MiB Mem : 3931.4 total, 2473.6 free, 139.8 used, 1318.0 buff/cache
MiB Swap: 1024.0 total, 1024.0 free, 0.0 used. 3475.6 avail Mem
Bu çıktıda:
- Load Average: Son 1, 5 ve 15 dakikadaki sistem yükünü gösterir.
- CPU Kullanımı: Çeşitli yüzdeler ile kullanıcı, sistem ve idle süreçlerin CPU kullanımı listelenir.
- Bellek Kullanımı: Kullanılabilir bellek miktarı ile birlikte, ne kadarının cache ve buffer için ayrıldığı gibi bilgiler görüntülenir.
Gelişmiş Kullanım
top
komutunu gelişmiş seçeneklerle de kullanabilirsiniz:
-i
: Boşta olan süreçleri göstermez.-n [sayı]
: Belirtilen sayıda tekrar eder ve sonra çıkar.-H
: Thread’leri gösterir.
top -n 5
Bu komut, sistemi beş kez güncelleyip ardından çıkış yapacaktır.
4. du
Komutu: Disk Kullanımı Analizi
du
komutu, disk üzerindeki dosya ve dizinlerin ne kadar yer kapladığını analiz etmek için kullanılır. Özellikle disk doluluğunu izlemek ve gereksiz dosyaları temizlemek için faydalıdır. Basit bir kullanım örneği aşağıdaki gibidir:
du -sh /*
Bu komut, root dizinindeki tüm dosya ve klasörlerin boyutlarını insan okunabilir bir formatta (-h
opsiyonu) listeler. Örnek bir çıktı:
7 bin
301M boot
12K dev
3.0M etc
2.4G usr
710M var
Gelişmiş Kullanım
du
komutunun sık kullanılan diğer opsiyonları şunlardır:
-d [derinlik]
: Belirtilen derinliğe kadar disk kullanımını görüntüler.--max-depth=1
: Sadece belirtilen seviyedeki dizinlerin toplam boyutunu gösterir.
du -d 1 /var
Bu komut, /var
dizinindeki alt klasörlerin her birinin ne kadar alan kapladığını gösterir.
5. netstat
Komutu: Ağ Bağlantıları ve İstatistikleri
netstat
komutu, ağ bağlantılarını, routing tablolarını ve diğer ağ istatistiklerini görüntüler. Aşağıdaki örnek, aktif internet bağlantılarını listeleyecektir:
netstat
Örnek çıktı:
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 240 24625403.test:7022 ctel-78-157-7-19.:55913 ESTABLISHED
Gelişmiş Kullanım
netstat
komutu daha ayrıntılı analizler için çeşitli opsiyonlarla birlikte kullanılabilir:
-t
: Sadece TCP bağlantılarını gösterir.-u
: Sadece UDP bağlantılarını gösterir.-n
: Nümerik IP adreslerini gösterir.-l
: Sadece dinleyen (listening) bağlantıları listeler.-p
: Hangi işlemin hangi bağlantıyı kullandığını gösterir.
netstat -tunlp
Bu komut, sisteminizdeki tüm TCP ve UDP bağlantılarını ve dinleme portlarını listeler. Örnek çıktı:
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 83830/mysqld
tcp 0 0 0.0.0.0:993 0.0.0.0:* LISTEN 88311/dovecot
Sonuç
Bu rehberde, Linux sunucunuzdaki önemli kaynakları izlemek için kullanabileceğiniz üç temel komutu inceledik: top
, du
, ve netstat
. Her komutun temel ve gelişmiş kullanım senaryolarını gerçek örneklerle açıkladık. Sunucu performansını ve kaynak kullanımını etkili bir şekilde izlemek için bu komutları öğrenmek, sistem yöneticileri için oldukça önemlidir.