Web sunucularında yaşanan yavaşlıkların nedeni her zaman yüksek CPU veya RAM kullanımı olmayabilir. Genellikle gözden kaçan ancak sunucu performansını doğrudan etkileyen en kritik etkenlerden biri Disk I/O (Girdi/Çıktı) yoğunluğudur. Veritabanı sorguları, büyük log dosyalarının yazılması veya yedek alma işlemleri diski aşırı yükleyerek sitelerin kilitlenmesine yol açabilir.
Sistem yöneticileri için tıpkı top veya htop gibi çalışan ancak doğrudan disk okuma ve yazma hızlarını işlem (process) bazında gösteren harika bir araç vardır: iotop.
Bu rehberde, Linux VPS sunucularınızda iotop aracının farklı dağıtımlara göre nasıl kurulacağını, ekran parametrelerinin ne anlama geldiğini ve en pratik kullanım ipuçlarını inceliyoruz.
1. Dağıtıma Göre iotop Kurulumu
iotop, Python tabanlı hafif bir Linux aracıdır ve tüm majör Linux dağıtımlarının resmi depolarında yer alır. Sunucunuzun işletim sistemine uygun komutla saniyeler içinde kurulumu tamamlayabilirsiniz:
AlmaLinux / Rocky Linux / CentOS 8+ / RHEL
dnf install iotop -y
CentOS 7 (Eski Sürüm)
yum install iotop -y
Ubuntu / Debian
apt update && apt install iotop -y
2. iotop Nasıl Çalıştırılır ve Ekran Analizi
Kurulum tamamlandıktan sonra aracı çalıştırmak için terminalde root yetkisiyle şu komutu vermeniz yeterlidir:
iotop
Komutu çalıştırdığınızda karşınıza anlık güncellenen bir tablo gelecektir. Bu tabloda dikkat etmeniz gereken temel sütunlar şunlardır:
| Sütun | Açıklama |
| DISK READ | İlgili sürecin saniyede diskten okuduğu veri miktarı (KB/s veya MB/s). |
| DISK WRITE | İlgili sürecin saniyede diske yazdığı veri miktarı. |
| SWAPIN | Sürecin takas alanından (Swap) bellek çekme yüzdesi. |
| IO> | Sürecin diski bekleme/tüketme oranı (Yüzde % cinsinden). |
| USER / PID | İşlemi başlatan sistem/site kullanıcısı ve Süreç Kimliği (PID). |
| COMMAND | Diski kullanan komut veya betik (MySQL, PHP-FPM, rsync vb.). |
3. İleri Düzey iotop Parametreleri ve İpuçları
Varsayılan iotop görünümü boşta duran tüm süreçleri de listeler. Ancak disk yükü oluşturan ana kaynağı hızla tespit etmek için şu parametreleri ve klavye kısayollarını kullanabilirsiniz:
Sadece Aktif Yük Oluşturan Süreçleri Gösterme (-o / --only)
Boştaki süreçleri gizleyip yalnızca o an disk okuma/yazması yapan işlemleri süzmek için en çok kullanılan parametredir:
iotop -o
Canlı Ekran Klavye Kısayolları
iotop çalışır durumdayken klavyenizden şu tuşlara basarak görünümü değiştirebilirsiniz:
o: Sadece aktif I/O yapan süreçler ile tüm süreçler arasında geçiş yapar (-oparametresi ile aynıdır).r: Sıralama yönünü tersine çevirir.p: Görünümü tüm alt izleklerden (threads) çıkarıp yalnızca ana süreçlere (processes) odaklar.a: Anlık transfer hızı yerine,iotopaçıldığından beri yapılan toplam (accumulated) okuma/yazma miktarını gösterir.q: Uygulamadan çıkar.
Arka Plan Loglama Modu (-b)
Disk kullanımını belirli bir süre boyunca bir metin dosyasına kaydetmek veya otomasyon scriptlerinde kullanmak isterseniz:
# 5 saniyede bir güncelleyerek sadece aktif disk kullanımını log dosyasına yazar
iotop -o -b -n 10 > /var/log/disk_io_test.log
DoğruHost Altyapı İpucu: Yüksek I/O kullanımının önüne geçmek için veritabanı sorgularınızı optimize edebilir, InnoDB tampon bellek (innodb_buffer_pool_size) oranlarını güncelleyebilir ve log seviyelerini kontrol altında tutabilirsiniz. Ultra hızlı SSD altyapısına sahip DoğruHost sunucularında disk limitlerine takılmadan projelerinizi güvenle çalıştırabilirsiniz.
