df -h Komutu ile Dolu Disk Alanını Bulma ve Temizleme

Linux tabanlı sistemlerde disk alanı yönetimi, sunucu performansını ve verimliliği doğrudan etkileyen kritik bir unsurdur.

Linux tabanlı sistemlerde disk alanı yönetimi, sunucu performansını ve verimliliği doğrudan etkileyen kritik bir unsurdur. df komutu dolu diskleri hızlıca tespit etmek için vazgeçilmez bir araçtır. df -h komutu, dosya sistemlerindeki kullanım oranlarını insan okunur formatta (GB, MB gibi) göstererek, sistem yöneticilerine anında genel bakış sağlar. Bu makalede, df -h komutunun etkili kullanımını, dolu alanların belirlenmesini ve pratik temizleme yöntemlerini adım adım ele alacağız. Özellikle kurumsal ortamlarda, proaktif disk izleme rutinleri kesinti riskini minimize eder ve operasyonel sürekliliği güvence altına alır.

df -h Komutunun Temel Kullanımı ve Çıktı Yorumlama

df -h komutu, mevcut dosya sistemlerinin toplam, kullanılmış ve boş alanlarını kilobayt, megabayt veya gigabayt cinsinden raporlar. Temel syntax’ı df -h şeklindedir ve terminalde çalıştırıldığında, her dosya sisteminin adını, boyutunu, kullanılmış alanını, boş alanı ve kullanım yüzdesini sütunlar halinde listeler. Örneğin, bir kök dizin (/ ) kullanımının %90’ı aşması, acil müdahale gerektirdiğini işaret eder. Bu komut, root veya sudo yetkisi olmadan da çalışır, ancak tam erişim için yetkili kullanıcı tercih edilir.

Çıktıyı daha etkili yorumlamak için, belirli seçenekler eklenebilir. df -hT komutu dosya sistemi türünü (ext4, nfs vb.) eklerken, df -h /home sadece belirtilen dizini hedefler. Kurumsal sistemlerde, cron job ile periyodik çalıştırma önerilir: */30 * * * * df -h > /var/log/disk_usage.log. Bu sayede, df komutu dolu eşiklerde otomatik uyarılar kurulabilir. Pratikte, kullanım %80’i aşan satırları filtrelemek için df -h | awk '$5+0 > 80 {print}' gibi awk filtreleri kullanılır, ki bu da zaman tasarrufu sağlar.

Standart Çıktı Örneği

Aşağıdaki örnek çıktı, tipik bir sunucudaki durumu gösterir:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       100G   85G   12G  89% /
/dev/sdb1       500G  200G  280G  42% /data

Burada / dizini %89 dolu olduğundan öncelikli inceleme gerektirir. Avail sütunu boş alanı, Use% ise doluluk oranını verir. Bu verilerle, hangi mount point’in risk altında olduğunu hızlıca belirleyebilirsiniz. Düzenli tarama ile erken müdahale, veri kaybını önler.

Dolu Disk Alanlarını Tespit Etme Teknikleri

df komutu dolu alanları belirledikten sonra, derinlemesine analiz için du komutu ile entegre çalışın. df genel bakış verirken, du belirli dizinlerin boyutunu hesaplar. Örneğin, df -h ile /var yüksek kullanım gösteriyorsa, du -sh /var/* | sort -hr en büyük alt dizinleri sıralar. Bu yaklaşım, log dosyalarının veya cache’lerin sorumlu olduğunu ortaya çıkarır. Kurumsal ortamlarda, bu verileri grafik araçlarla (örneğin, Grafana entegrasyonu) görselleştirmek izlemeyi kolaylaştırır.

Otomatik tespit için script’ler geliştirin. Basit bir bash script örneği:

  1. #!/bin/bash
  2. df -h | grep -vE '^tmpfs|cdrom' | awk '$5+0 > 85 {print $0 "> ALARM: " $5}'
  3. E-postayla uyarı gönderin.

Bu script, %85 üzeri dolulukta alarm verir. Ayrıca, inodes doluluğunu kontrol edin: df -i, dosya sayısını gösterir ki bazen alan değil dosya bolluğu sorun yaratır.

Yaygın Dolu Alan Nedenleri

Sunucularda sık rastlanan nedenler arasında /tmp ve /var/log dizinlerindeki biriken dosyalar yer alır. Örneğin, uzun süreli işlemler temp dosyaları unutabilir. Kontrol için ls -lh /tmp | head -20 kullanın. Benzer şekilde, erişim logları haftalık olarak gigabaytlarca yer kaplar. Bu durumlar, df komutu dolu raporlarında belirgindir ve proaktif temizlik rutiniyle çözülür.

Disk Alanını Etkili Şekilde Temizleme Yöntemleri

Dolu alan temizliği, sistem kararlılığını korumanın anahtarıdır. Önce gereksiz dosyaları silin: rm -rf /tmp/* ile geçici dosyaları temizleyin, ancak çalışan süreçleri kontrol edin (lsof /tmp). Log dosyalarını sıkıştırın: find /var/log -type f -name "*.log" -mtime +7 -exec gzip {} \; . Bu komut, 7 günden eski logları sıkıştırarak alan açar. Paket yöneticileriyle temizlik yapın; Debian/Ubuntu için apt autoremove --purge ve apt autoclean, RPM için yum autoremove.

İleri düzey temizlikte, journalctl loglarını sınırlayın: journalctl --vacuum-time=7d. Cache’leri temizleyin: rm -rf /var/cache/apt/archives/*. Her işlem öncesi yedek alın ve df -h ile öncesi-sonrası karşılaştırın. Kurumsal politikalar gereği, silme işlemlerini loglayın: rm ... && df -h >> /var/log/cleanup.log.

Otomatik Temizleme Scripti Örneği

Aşağıdaki script’i cron ile haftalık çalıştırın:

#!/bin/bash
find /var/log -name "*.log.*" -mtime +30 -delete
apt-get clean
df -h >> /var/log/disk_cleanup.log

Bu, 30 günden eski rotate logları siler ve apt cache’ini temizler. Sonuçta, %20-30 alan kazanımı tipiktir. Düzenli uygulama, manuel müdahaleyi azaltır.

Sonuç olarak, df -h komutunu merkeze alan bu stratejiler, disk yönetimini sistematik hale getirir. Düzenli izleme ve temizlik, kurumsal IT altyapılarında kesintisiz hizmet sağlar. Uygulamaya hemen başlayın ve sistem performansınızı optimize edin.

Kategori: Sunucu Yönetimi
Yazar: Lorem
çerik: 665 kelime
Okuma Süresi: 5 dakika
Zaman: Bugün
Yayım: 24-02-2026
Güncelleme: 24-02-2026