SSH Bağlantı Sorunu: Sunucuya Bağlanamıyorum
SSH bağlantı sorunlarını çözme rehberi: Path.net firewall kuralları, Default Block, SSH portu için filtre kuralı oluşturma ve sorun giderme adımları.
Sunucu performans sorunlarını tespit etme ve çözme rehberi: CPU, RAM, disk, swap, process analizi ve ağ testi kontrol listesi. Linux sunucu yavaşlama nedenleri.
Sunucunuz yavaş çalışıyorsa, sorunun kaynağını belirlemek için sistematik bir kontrol listesi takip etmeniz gerekir. Bu rehber, en yaygın performans sorunlarını ve çözümlerini adım adım açıklar.
Bu rehber Linux (Ubuntu, Debian, CentOS, Rocky Linux) sunucular için hazırlanmıştır. Windows Server için benzer kontroller farklı araçlarla yapılır.
Yüksek CPU kullanımı sunucunun yavaşlamasının en yaygın nedenidir.
# Genel CPU kullanımı
top -bn1 | head -5
# Detaylı ve interaktif görünüm
htop
# CPU çekirdek bazlı kullanım
mpstat -P ALL 1 5
# CPU kullanımına göre sıralı süreç listesi
ps aux --sort=-%cpu | head -20
# Gerçek zamanlı izleme
top -o %CPU
CPU kullanımı sürekli %90+ ise, yoğun süreçleri tespit edip optimize etmeniz veya sunucu kaynaklarını artırmanız gerekebilir.
kill -9 PIDYetersiz RAM, sunucunun swap kullanmasına ve dramatik yavaşlamaya neden olur.
# Genel bellek durumu
free -h
# Detaylı bellek bilgisi
cat /proc/meminfo | head -10
# Süreç bazlı RAM kullanımı
ps aux --sort=-%mem | head -20
total used free shared buff/cache available
Mem: 7.8Gi 6.2Gi 0.3Gi 0.1Gi 1.3Gi 1.2Gi
Swap: 2.0Gi 1.5Gi 0.5Gi
| Metrik | Sağlıklı | Uyarı | Kritik |
|---|---|---|---|
| RAM Kullanımı | < %70 | %70-90 | > %90 |
| Swap Kullanımı | 0 | < %25 | > %50 |
| Available | > %20 | %10-20 | < %10 |
Swap kullanımı yüksekse (> %50), RAM yetersizdir. Swap, disk üzerinde çalıştığı için RAM'e kıyasla çok yavaştır.
# Disk kullanımı özeti
df -h
# En büyük dizinleri bul
du -sh /* 2>/dev/null | sort -rh | head -10
# En büyük dosyaları bul
find / -type f -size +100M -exec ls -lh {} \; 2>/dev/null | sort -k5 -rh | head -10
Disk kullanımı %90'ı aştığında performans sorunları başlayabilir. %95+ kritik seviyedir — acil alan açılmalıdır.
# Anlık disk I/O
iostat -x 1 5
# Süreç bazlı I/O kullanımı
iotop -o
# Disk okuma/yazma hızı testi
dd if=/dev/zero of=/tmp/testfile bs=1M count=1024 oflag=direct
rm /tmp/testfile
| Metrik | NVMe SSD | SATA SSD | HDD |
|---|---|---|---|
| Okuma | 3000+ MB/s | 500+ MB/s | 100-200 MB/s |
| Yazma | 2000+ MB/s | 400+ MB/s | 80-150 MB/s |
| IOPS | 500K+ | 50K+ | 100-200 |
Swap kullanımı yüksekse, RAM yetersizdir ve sunucu disk üzerinden bellek yönetimi yapar.
# Swap durumu
free -h | grep Swap
swapon --show
# Hangi süreçler swap kullanıyor?
for file in /proc/*/status; do
awk '/VmSwap|Name/{printf $2 " " $3}END{print ""}' $file 2>/dev/null
done | sort -k2 -rn | head -10
# Yeterli boş RAM varsa swap'ı temizle
sudo swapoff -a && sudo swapon -a
Swap temizleme geçici bir çözümdür. Kalıcı çözüm için RAM miktarını artırın veya bellek tüketen uygulamaları optimize edin.
# Ağ arayüzü istatistikleri
ifconfig eth0
# Bağlantı sayıları
ss -s
# Aktif bağlantılar (en çok bağlantı yapan IP'ler)
ss -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -rn | head -10
# Bant genişliği kullanımı (nload gerekli)
nload eth0
# Hız testi
wget -O /dev/null http://speedtest.tele2.net/10MB.zip 2>&1 | tail -2
Çok sayıda bağlantı (10.000+) sunucu kaynaklarını tüketebilir. DDoS saldırısı altında olabilirsiniz — Path Panel'den saldırı geçmişini kontrol edin.
# Çalışan süreç sayısı
ps aux | wc -l
# Zombie süreçler
ps aux | awk '{if ($8 == "Z") print}'
# En uzun süredir çalışan süreçler
ps -eo pid,etime,comm --sort=-etime | head -20
# Belirli bir uygulamanın kaynak kullanımı
ps aux | grep -i mysql
ps aux | grep -i java
ps aux | grep -i node
# Son sistem hataları
dmesg | tail -50
# OOM (Out of Memory) killer logları
dmesg | grep -i "oom\|killed process"
# Sistem logları
journalctl -p err --since "1 hour ago"
# Disk hataları
dmesg | grep -i "error\|fail\|i/o"
OOM killer logları görüyorsanız, RAM yetersizdir ve sistem bellek açmak için süreçleri zorla sonlandırıyor demektir.
# Tek komutla genel durum özeti
echo "=== CPU ==="; top -bn1 | head -5; echo "\n=== RAM ==="; free -h; echo "\n=== DISK ==="; df -h /; echo "\n=== LOAD ==="; uptime; echo "\n=== TOP PROCESSES ==="; ps aux --sort=-%cpu | head -5
Destek talebi oluştururken yukarıdaki komutların çıktılarını eklemeniz, sorunun daha hızlı çözülmesini sağlar.
En yaygın nedenler: yüksek CPU kullanımı, yetersiz RAM (swap kullanımı), disk alanı dolması veya ağ sorunlarıdır. Kontrol listesini takip ederek sorunu tespit edebilirsiniz.
Swap kullanımı RAM yetersizliğine işaret eder. Bellek tüketen süreçleri optimize edin veya RAM miktarını artırın.
İlk olarak 'top' veya 'htop' komutu ile CPU ve RAM kullanımını kontrol edin. Ardından 'df -h' ile disk doluluk oranını inceleyin. Bu üç metrik sunucu yavaşlamasının %90'ından fazlasının kaynağını ortaya koyar.
SSH bağlantı sorunlarını çözme rehberi: Path.net firewall kuralları, Default Block, SSH portu için filtre kuralı oluşturma ve sorun giderme adımları.
RDP bağlantı sorunlarını çözme rehberi: Path.net firewall kuralları, Default Block, RDP portu için filtre kuralı oluşturma ve sorun giderme adımları.
WinMTR ve Linux MTR ile ağ testi yapma, ICMP filtre kuralı oluşturma ve sonuçları destek ekibine gönderme rehberi. Paket kaybı ve gecikme analizi.