Geçici Dosyalar ve Disk Sızıntısı: Sessizce Dolan Alanı Bulmak

Disk doluluk kaynakları, silinmiş açık dosya sorunu, dosya sayısı sınırı, günlük yönetimi, önleyici yapı ve acil müdahale. Geçici Dosyalar ve Disk Sızıntısı…

Geçici Dosyalar ve Disk Sızıntısı: Sessizce Dolan Alanı Bulmak
İçindekiler
  1. Alan Nereye Gidiyor?
  2. Görünmez Alan Tüketimi
  3. Teşhis Yaklaşımı
  4. Günlük Yönetimi
  5. Oturum ve Önbellek Dosyaları
  6. Önleyici Yapı
  7. Disk Dolduğunda Acil Müdahale
  8. Sonuç
  9. Sıkça Sorulan Sorular (SSS)
  10. Dosyayı sildim ama disk hâlâ dolu, neden?
  11. Disk boş görünüyor ama "yer yok" hatası alıyorum?
  12. Günlükleri ne kadar süre saklamalıyım?
  13. Ayrı disk bölümü kullanmalı mıyım?

Geçici Dosyalar ve Disk Sızıntısı: Sessizce Dolan Alanı Bulmak

Disk doldu uyarısı geldi. Site dosyalarınız birkaç yüz megabayt, veritabanı da öyle. Peki kalan onlarca gigabaytı ne tüketiyor?

Bu yazı, sunucularda sessizce biriken geçici dosyaları ve bunların nasıl yönetileceğini ele alıyor.

Alan Nereye Gidiyor?

Disk doluluğunun tipik kaynakları, boyut sırasına göre değil fark edilme zorluğuna göre:

Kaynak Tipik davranış
Uygulama günlükleri Sürekli büyür, döndürülmezse patlar
Oturum dosyaları Temizlenmezse milyonlarca dosya
Önbellek dizinleri Sınırsızsa sürekli şişer
Yarım kalan yüklemeler Kimse silmez
Eski yedek dosyaları Yerelde unutulur
Paket yöneticisi önbelleği Her güncellemede büyür
Silinmiş ama açık dosyalar Görünmez alan tüketimi

Son satır en kafa karıştırıcı olanıdır ve ayrı bir bölümü hak eder — silinmiş bir dosya, bir süreç onu hâlâ açık tutuyorsa diskten gerçekten kaldırılmaz.

Görünmez Alan Tüketimi

Şu senaryo sık yaşanır ve teşhisi zordur:

  1. Büyük bir günlük dosyası diski doldurur
  2. Dosya silinir
  3. Ancak boş alan geri gelmez
  4. Dizin listelemede dosya görünmez
  5. Yine de disk dolu raporlanır

Nedeni şudur: dosyayı yazan süreç hâlâ çalışıyorsa, dosya tanıtıcısı açık kaldığı sürece alan serbest bırakılmaz.

Çözüm dosyayı tekrar silmek değil, ilgili servisi yeniden başlatmak veya günlük dosyasını uygun yöntemle döndürmektir. Bu davranışı bilmeyen yöneticiler saatlerce boşa arama yapar.

Teşhis Yaklaşımı

Doluluk kaynağını bulmak için izlenecek sıra:

  • Bölüm bazında doluluğa bakın. Hangi bölüm dolu?
  • Dizin bazında yukarıdan aşağı inin. En büyük dalı takip edin.
  • Dosya sayısını da kontrol edin. Alan değil dosya sayısı dolabilir.
  • Silinmiş açık dosyaları listeleyin. Görünmez tüketim varsa.
  • Son değişiklik tarihlerine bakın. Ne zaman başladı?

Üçüncü madde ayrı bir sorun sınıfına işaret eder: disk alanı boş görünürken sistem "yer yok" hatası veriyorsa, dosya sayısı sınırına takılmışsınızdır.

Bu genellikle oturum dosyalarından veya küçük önbellek parçalarından kaynaklanır — milyonlarca küçük dosya, az yer kaplasa da dosya sayısı sınırını doldurur.

Günlük Yönetimi

En yaygın disk tüketicisi günlüklerdir ve çözümü standarttır:

  1. Döndürme kuralı tanımlayın. Boyut veya süre bazlı.
  2. Sıkıştırma açın. Eski günlükler çok iyi sıkışır.
  3. Saklama süresi belirleyin. Sonsuza kadar tutmayın.
  4. Uygulama günlüklerini de dahil edin. Sistem günlükleri tek kaynak değil.
  5. Hata ayıklama seviyesini kapatın. Üretimde gereksiz hacim üretir.

Dördüncü madde en sık atlanan noktadır: sistem günlükleri düzgün yönetilirken, uygulamanızın kendi yazdığı günlük dosyası hiçbir kurala tabi olmayabilir.

Beşinci madde ise hızlı bir kazanç sağlar. Hata ayıklama seviyesinde çalışan bir uygulama, normalin onlarca katı günlük üretir ve bu genellikle geliştirme sırasında açılıp kapatılması unutulmuş bir ayardır.

Oturum ve Önbellek Dosyaları

Bu iki kategori sessizce büyür çünkü kimse onlara bakmaz:

  • Oturum dosyaları otomatik temizlenmeyebilir. Yapılandırmaya bağlıdır.
  • Önbellek dizinlerine boyut sınırı konmalıdır.
  • Görsel varyantları birikir. Silinen içeriğin varyantları kalır.
  • Derleme çıktıları eskir. Eski sürümler temizlenmeli.

Birinci madde özellikle dikkat gerektirir: oturum temizliği bazı yapılandırmalarda olasılığa bağlı çalışır ve trafiği düşük sitelerde neredeyse hiç tetiklenmez.

Bu durumda oturum dizininde yıllara yayılmış milyonlarca dosya birikir. Zamanlanmış bir temizlik görevi tanımlamak, bu sorunu kalıcı olarak çözer.

Önleyici Yapı

Sorunu yaşamadan önlemek için kurulacak düzen:

Önlem Kazanç
Disk doluluk alarmı Kesintiden önce haber
Dosya sayısı alarmı Gizli sınırı yakalar
Ayrı disk bölümleri Dolma sistemi etkilemez
Zamanlanmış temizlik Birikimi engeller
Kota tanımlama Tek dizin diski tüketemez

Üçüncü satır en değerli yapısal önlemdir: günlükler ve yüklemeler ayrı bölümlerdeyse, dolduklarında veritabanı ve sistem çalışmaya devam eder.

Bu ayrım, disk dolması olayını bir kesintiden bir uyarıya dönüştürür. Kaynak yapılandırmasını kendiniz belirlediğiniz sanal özel sunucu kurulumlarında bölümleme kararını baştan doğru vermek, ilerideki acil müdahaleleri önler.

Disk Dolduğunda Acil Müdahale

Sistem yazamaz hâle geldiyse sıra şudur:

  1. Önce sıkıştırılmış eski günlükleri silin — en hızlı kazanç
  2. Paket yöneticisi önbelleğini temizleyin
  3. Silinmiş açık dosyaları kontrol edin, gerekiyorsa servisi yeniden başlatın
  4. Geçici dizinleri boşaltın
  5. Alan açıldıktan sonra asıl kaynağı araştırın

Beşinci madde önemli bir disiplindir: acil müdahale alan açar ama sorunu çözmez — aynı birikim aynı hızla tekrar oluşur. Kalıcı çözüm, kaynağı bulup kural tanımlamaktır.

Sonuç

Disk doluluğunda en çok vakit kaybettiren durum, silinen dosyanın alanı geri vermemesidir: bir süreç dosyayı açık tutuyorsa, silmek alanı serbest bırakmaz — servisi yeniden başlatmak gerekir. İkinci tuzak, alan boş görünürken "yer yok" hatası almaktır; bu, dosya sayısı sınırına takıldığınız anlamına gelir ve genellikle temizlenmeyen oturum dosyalarından kaynaklanır. Günlük yönetiminde ise sistem günlükleri değil, uygulamanızın kendi yazdığı günlük dosyası kuralsız kalır. Kalıcı çözüm ayrı disk bölümleri ve zamanlanmış temizliktir.

Sıkça Sorulan Sorular (SSS)

Dosyayı sildim ama disk hâlâ dolu, neden?

Bir süreç o dosyayı hâlâ açık tutuyor olabilir. Dosya tanıtıcısı açık kaldığı sürece alan serbest bırakılmaz ve dosya dizin listelemesinde de görünmez. Çözüm, ilgili servisi yeniden başlatmak veya günlük dosyasını uygun döndürme yöntemiyle yönetmektir.

Disk boş görünüyor ama "yer yok" hatası alıyorum?

Dosya sayısı sınırına takılmışsınızdır. Milyonlarca küçük dosya az yer kaplasa da bu sınırı doldurur. En yaygın kaynak, otomatik temizlenmeyen oturum dosyaları ve küçük önbellek parçalarıdır.

Günlükleri ne kadar süre saklamalıyım?

İhtiyacınıza göre değişir ama sonsuza kadar değil. Döndürme kuralı tanımlayın, eski günlükleri sıkıştırın ve bir saklama süresi belirleyin. Ayrıca uygulamanızın kendi günlüklerini de bu kurala dahil edin — sistem günlükleri tek kaynak değildir.

Ayrı disk bölümü kullanmalı mıyım?

Kullanabiliyorsanız evet. Günlükler ve kullanıcı yüklemeleri ayrı bölümlerdeyse, doldukları zaman veritabanı ve sistem çalışmaya devam eder. Bu ayrım, disk dolması olayını bir kesintiden bir uyarıya dönüştürür.