Sunucu RAM kapasitenize ve iş yükünüze (MySQL, Web, Build) göre güvenli swap alanını hesaplayın, OOM killer çökmelerini önleyen kurulum betiğini tek tıkla alın.
Bellekten diske takas edilen sayfalari RAM'de sikistirarak NVMe disk I/O yipranmasini %60 azaltir.
2026 is yuku temelli modern Linux takas alani boyutu.
Dusuk RAM'li sunucularda OOM onleme kipi.
Dizin ve inode (dosya sistemi) onbellegini RAM'de tutar.
Yeterli guvenlik payi mevcut.
#!/bin/bash
# HostBilgim - Guvenli Swap Dosyasi ve Swappiness Kurulumu
set -e
echo "1. Mevcut swap kontrol ediliyor..."
if swapon --show | grep -q "/swapfile"; then
echo "Uyari: /swapfile zaten aktif!"
else
echo "2. 2048MB boyutunda /swapfile olusturuluyor..."
fallocate -l 2048M /swapfile || dd if=/dev/zero of=/swapfile bs=1M count=2048
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
echo "3. /etc/fstab dosyasina kalici olarak ekleniyor..."
if ! grep -q '/swapfile' /etc/fstab; then
echo '/swapfile none swap sw 0 0' >> /etc/fstab
fi
fi
echo "4. vm.swappiness ve bellek parametreleri ayarlaniyor..."
cat <<EOF > /etc/sysctl.d/99-swap-optimization.conf
vm.swappiness = 40
vm.vfs_cache_pressure = 50
EOF
sysctl -p /etc/sysctl.d/99-swap-optimization.conf
echo "Basarili! Yeni swap alani ve bellek parametreleri aktif edildi."
swapon --showfree -hcat /proc/sys/vm/swappinessvmstat 1 5Sunucularda 512 MB veya 1 GB RAM varken 2x kurali gecerliydi. Gunumuzde 64 GB RAM'li bir sunucuya 128 GB swap ayirmak devasa bir NVMe depolama israfidir. Swap bir RAM ikamesi degil, ani piklerde kernel OOM killer tarafindan MySQL/PHP servislerinin oldurulmesini onleyen bir guvenlik agidir.
Modern kurumsal ve veri merkezi NVMe suruculeri binlerce TBW (Terabytes Written) yazma dayanikliligina sahiptir. Ayrica vm.swappiness = 10-30 yapildiginda disk yazimi yalnizca kriz anlarinda gerceklesir; bu durum disk omrunu kayda deger sekilde etkilemez.
Linux çekirdeği (kernel), fiziksel bellek tükendiğinde ve gidecek hiçbir takas alanı (Swap) bulunmadığında sistemi kilitlememek adına en çok bellek tüketen prosesi acımasızca sonlandırır (**OOM Killer**). Çoğu web sunucusunda bu kurban genellikle mysqld (MySQL/MariaDB) olur ve web siteniz anında "Error establishing a database connection" hatasına düşer.
Linux çekirdeğinde yer alan `zswap` modülü, diske takas edilecek bellek sayfalarını doğrudan RAM içinde sıkıştırarak saklar. Böylece hem diske yazma oranı %60'tan fazla azalır hem de disk I/O gecikmesi yaşanmadan takas gerçekleştirilir.