VPS Diski Doldu: Yer Açma ve Büyük Dosyaları Bulma
Kısa yanıt: df -h ile dolu bölümü, sudo du -xh / --max-depth=1 | sort -h ile en büyük klasörleri bulun. En sık yer kaplayanlar systemd journal (sudo journalctl --vacuum-size=200M), eski log dosyaları, apt önbelleği (sudo apt clean), kullanılmayan Docker imajları (docker system prune) ve sunucuda biriken yedeklerdir.
Bu rehber kimin için: VPS yöneticileri · Gereken süre: 15-30 dakika · Seviye: Orta
Disk dolduğunda veritabanı yazamaz, web sunucusu oturum dosyası oluşturamaz ve servisler tek tek çöker. Belirtiler çoğu zaman disk hatası gibi görünmez: site 500 hatası verir, MySQL başlamaz veya SSH oturumu açılırken hata alınır. İlk kontrol her zaman disk durumudur.
Yer açma adımları
- Durumu görün: df -h ile hangi bölümün %100 olduğunu belirleyin; df -i ile inode durumunu da kontrol edin.
- Büyük klasörler: sudo du -xh / --max-depth=1 | sort -h ile başlayıp en büyük klasörün içine inerek tekrarlayın.
- Journal: sudo journalctl --disk-usage ile boyutu görün, sudo journalctl --vacuum-size=200M ile küçültün.
- Log dosyaları: /var/log içindeki büyük dosyaları inceleyin; aktif bir log’u silmek yerine sudo truncate -s 0 dosya.log ile boşaltın.
- Paket önbelleği: sudo apt clean ve sudo apt autoremove --purge çalıştırın.
- Docker: docker system df ile kullanımı görün, docker system prune ile durdurulmuş konteyner ve kullanılmayan imajları temizleyin; birimleri silmeden önce iki kez kontrol edin.
- Yedekler: Sunucuda biriken yedekleri harici konuma taşıyıp silin (VPS yedekleme).
- Servisleri başlatın: Yer açıldıktan sonra çöken servisleri systemctl restart ile başlatın.
Silindi ama yer açılmadı
Bir işlem tarafından açık tutulan büyük bir dosyayı silerseniz alan, işlem kapanana kadar serbest kalmaz. sudo lsof +L1 komutu silinmiş ama açık dosyaları listeler; ilgili servisi yeniden başlatmak alanı geri verir.
Tekrarlanmaması için
logrotate yapılandırmasının çalıştığını kontrol edin, journal için /etc/systemd/journald.conf dosyasında SystemMaxUse=500M tanımlayın ve disk kullanımı %80’i geçtiğinde uyarı veren bir izleme kurun (VPS kaynak izleme).
Hâlâ çözülmediyse
Disk kalıcı olarak yetmiyorsa daha büyük diskli bir pakete geçmeniz gerekir; yükseltmede verileriniz korunur. Paket güncellemeleri sırasında yer sorunu yaşamamak için VPS paket yükseltme rehberine bakın. Daha geniş SSD diskli VPS sunucu planlarımızı inceleyebilirsiniz.
Sık sorulan sorular
/var/log/journal’ı elle silebilir miyim?
Önerilmez; journalctl --vacuum komutlarını kullanın.
MySQL binlog dosyaları büyük.
Replikasyon kullanmıyorsanız binlog_expire_logs_seconds ile saklama süresini kısaltın.
İlgili rehberler
- VPS Kaynak Kullanımı İzleme: CPU, RAM ve Disk
- VPS Yedekleme: rsync, Veritabanı Dökümü ve Cron
- VPS Paket Yükseltme ve Disk Genişletme
Bu rehber işinize yaradı mı?
Teşekkürler. Çözüm bulamadıysanız destek talebi açın veya [email protected] adresine yazın.