Disk alanı yönetimi ve hosting temizliği

Bu pratik kılavuzla hosting disk alanınızı boşaltın: büyük klasörleri bulma, eski logları, gereksiz yedekleri ve önbelleği temizleme. Linux komutları ve sorun giderme ipuçları.

5 dk Güncellendi 7 Aug 2026

Disk Alanı Yönetimi Neden Önemlidir?

Disk alanı, her paylaşımlı hosting veya sanal sunucunun en kritik kaynaklarından biridir. Disk alanı %90 veya %95 sınırına ulaştığında, yalnızca hizmet yavaşlamakla kalmaz, aynı zamanda MySQL veya Apache gibi hizmetler tamamen durabilir. Birçok kullanıcı sorunun yalnızca web sitesi dosyalarının boyutundan kaynaklandığını düşünür, ancak pratikte eski loglar, gereksiz yedekler ve kullanılmayan önbellekler alanın büyük bir kısmını kaplar. Bu makalede, Linux komut satırı araçlarını kullanarak disk alanını nasıl hassas bir şekilde inceleyeceğinizi ve hedefli temizlikle değerli alanı nasıl boşaltacağınızı öğreneceksiniz.

İlk İnceleme: Ne Kadar Alan Ne Tarafından Kullanılıyor?

Herhangi bir işlem yapmadan önce, hangi bölümlerin en fazla tüketimi yaptığını bilmelisiniz. Bunun için iki temel komut yeterlidir.

Genel Bakış İçin df Komutu

df -h (insan tarafından okunabilir) komutu, her bölümün kullanımını gösterir. Tipik çıktı şu şekildedir:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        20G   18G  1.5G  93% /

Kök bölümün (/) kullanım yüzdesi %85'in üzerindeyse, harekete geçme zamanı gelmiştir. Önemli not: Bazen /var veya /home gibi ayrı bölümler bağımsız olarak dolabilir.

Büyük Klasörleri Bulmak İçin du Komutu

du -sh /* komutu, kök dizindeki her klasörün boyutunu gösterir. Daha ayrıntılı inceleme için du -sh /var/* veya du -sh /home/* kullanabilirsiniz. Kullanışlı bir ipucu: du -sh /var/log/* | sort -rh | head -10 ile /var/log içindeki en büyük on dosyayı veya klasörü sıralı olarak görebilirsiniz.

Eski Logların Temizlenmesi (Disk Alanının En Büyük Düşmanı)

Sistem ve hizmet logları genellikle sınırsız bir şekilde büyür. /var/log/syslog, /var/log/messages gibi dosyalar ve /var/log/apache2/ veya /var/log/nginx/ içindeki Apache veya Nginx logları kolayca birkaç gigabayt alan kaplayabilir.

logrotate ile Eski Logları Silme

logrotate aracı çoğu Linux dağıtımında varsayılan olarak yüklüdür, ancak ayarları genellikle eksiktir. Ana yapılandırma dosyası /etc/logrotate.conf konumundadır. Apache logları için örnek bir yapılandırma:

/var/log/apache2/*.log {
    weekly
    rotate 4
    compress
    delaycompress
    missingok
    notifempty
    create 640 root adm
}

Bu yapılandırma, logların haftada bir döndürülmesini ve yalnızca 4 eski sürümün saklanmasını sağlar. Disk alanı kritikse, rotate 2 veya hatta daily olarak ayarlayabilirsiniz.

Eski Logların Manuel Temizliği

logrotate düzgün çalışmadıysa, aşağıdaki komutla 30 günden eski logları silebilirsiniz:

find /var/log -name "*.log.*" -type f -mtime +30 -delete

Ayrıca sıkıştırılmış dosyaları (.gz) find /var/log -name "*.gz" -type f -delete ile silebilirsiniz. Önemli not: Aktif log dosyalarını (örneğin /var/log/syslog) asla silmeyin; yalnızca eski sürümleri temizleyin.

Gereksiz ve Fazla Yedeklerin Yönetimi

cPanel, Plesk veya manuel betiklerin otomatik yedekleri genellikle /backup, /home/backup gibi klasörlerde veya kullanıcı klasörünün içinde saklanır. Yaygın bir hata: Aylarca günlük yedekleri saklamak.

Büyük Yedekleri Bulma

Aşağıdaki komutla yedek dosyalarını (genellikle .tar.gz veya .sql uzantılı) bulabilirsiniz:

find / -name "*.tar.gz" -type f -size +100M -exec ls -lh {} \;

14 günden eski yedekleriniz varsa ve disk alanı azsa, bunları silebilirsiniz:

find / -name "*.tar.gz" -type f -mtime +14 -delete

Yaygın hata: Kullanıcılar bazen veritabanı yedeklerini public_html klasöründe saklar, bu da web üzerinden indirilebilir olmasına ve güvenliği tehlikeye atmasına neden olur. Bu dosyaları web erişimi olmayan bir klasöre taşıyın.

Sistem ve Uygulama Önbelleğinin (Cache) Temizlenmesi

Önbellekler hız için tasarlanmıştır, ancak bazen boyutları mantıklı sınırların ötesine geçer.

apt Önbelleği (Debian tabanlı dağıtımlarda)

apt tarafından indirilen paketler /var/cache/apt/archives/ konumunda saklanır. Aşağıdaki komutla bunları temizleyebilirsiniz:

sudo apt-get clean

Bu komut genellikle 200 ila 500 megabayt alan boşaltır.

MySQL/MariaDB Önbelleği

MySQL'in geçici dosyaları ve binary logları /var/lib/mysql/ veya /var/log/mysql/ içinde büyüyebilir. Binary logları temizlemek için (etkinse), önce MySQL'e girin:

mysql -u root -p

Ardından aşağıdaki komutu çalıştırın:

PURGE BINARY LOGS BEFORE NOW() - INTERVAL 7 DAY;

Bu, 7 günden eski binary logları siler. Dikkat: Replication kullanıyorsanız, temizlemeden önce replicaların güncel olduğundan emin olun.

PHP Önbelleği (WordPress ve Laravel Uygulamaları)

WordPress genellikle küçük resim önbelleğini (thumbnails) /wp-content/uploads/ içinde saklar. WP-Optimize gibi eklentiler veritabanı önbelleğini ve geçici dosyaları temizleyebilir. Laravel için /storage/framework/cache/ ve /storage/framework/views/ klasörlerini kontrol edin.

Büyük ve Olağandışı Dosyaları Bulma

Bazen büyük dosyalar beklenmedik klasörlerde gizlenir. Örneğin, core dump dosyaları, belirli hizmetlerin eski log dosyaları veya kullanıcılar tarafından yüklenen dosyalar.

Etkileşimli Gezinti İçin ncdu Kullanımı

ncdu yüklü değilse, sudo apt install ncdu ile yükleyin. Ardından sudo ncdu / ile etkileşimli olarak klasörleri gezebilir ve en büyük dosyaları görebilirsiniz. Bu araç, büyük dizinler için du'dan çok daha hızlıdır.

500 Megabayttan Büyük Dosyaları Bulma

Aşağıdaki komut, tüm sistemde 500 megabayttan büyük tüm dosyaları bulur:

find / -type f -size +500M -exec ls -lh {} \; 2>/dev/null

Çıktıyı inceleyin ve gereksiz dosyaları silin.

Paylaşımlı Hostingde Disk Alanı Yönetimi (Root Erişimi Olmadan)

Paylaşımlı hosting kullanıyorsanız ve SSH erişiminiz yoksa, genellikle cPanel veya Plesk üzerinden disk alanını yönetebilirsiniz. cPanel'de "Disk Usage" bölümünü açın. Plesk'te "Tools & Settings" > "Disk Usage" yolunu izleyin. public_html, logs ve backups klasörlerini kontrol edin. SSH erişiminiz varsa, yukarıdaki komutları kendi ana dizininizde çalıştırın (sudo gerektirmez).

Gelecek İçin Önleyici İpuçları

  • Otomatik izleme: Her gün çalışacak ve disk alanı %85'i aşarsa size e-posta gönderecek df -h komutunu içeren basit bir betik ayarlayın.
  • logrotate ayarları: Tüm önemli hizmetlerin (Apache, Nginx, MySQL, PHP-FPM) uygun logrotate yapılandırmasına sahip olduğundan emin olun.
  • Akıllı yedekler: 30 günden eski yedekleri otomatik olarak silin. Yalnızca en son sürümü saklamak için rsync gibi araçlar kullanın.
  • Önbelleği sınırlayın: WordPress'te, önbellek eklentilerini maksimum 500 megabayt alan kaplayacak şekilde ayarlayın.

Özet

Disk alanı yönetimi, tek seferlik bir eylem değil, sürekli bir süreçtir. df, du ve find gibi basit Linux komutlarını kullanarak ve logrotate gibi araçları yapılandırarak, hosting disk alanınızı her zaman güvenli sınırlar içinde tutabilirsiniz. Daha fazla rehberliğe ihtiyacınız varsa, ServerNet destek ekibi size bu konuda yardımcı olabilir. Unutmayın: Emin olmadan sistem dosyalarını asla silmeyin ve temizlemeden önce her zaman önemli dosyaların yedeğini alın.

Bu sayfa yardımcı oldu mu?