Rehber · Linux sunucuları

Linux sunucuda disk doldu:alanı neyin kapladığını bulun

Dolu bir diskin genellikle bir ya da iki belirgin nedeni vardır. Yukarıdan aşağıya doğru ilerleyin, silmeden önce okuyun ve hangi servise ait olduğunu bilmiyorsanız /var/lib altındaki dosyaları asla elle silmeyin.

← Tüm rehberler

1. Hangi dosya sisteminin dolu olduğunu doğrulayın

df -h komutunu çalıştırın. Use% ve Mounted on sütunlarına bakın: dolu olan dosya sistemi / olabileceği gibi ayrı bir /var, /home veya /data bağlama noktası da olabilir; yanlış olanı temizlemek hiçbir şeyi değiştirmez.

Ayrıca df -i komutunu çalıştırın. Bir dosya sisteminde boş alan olsa da boş inode kalmamış olabilir; bu, milyonlarca küçük dosya (oturumlar, posta kuyrukları, önbellek dosyaları) biriktiğinde olur. IUse% değeri %100'e yakınsa, birkaç büyük dosyayı değil çok sayıda küçük dosyayı arıyorsunuz demektir.

2. En büyük dizinleri bulun

sudo du -xh --max-depth=1 / | sort -h komutunu çalıştırın ve son satırları okuyun. -x seçeneği tek bir dosya sisteminde kalır; böylece bağlanmış diskler ve sanal dosya sistemleri sonucu bozmaz. En büyük dizinin içinde de tekrarlayın, örneğin sudo du -xh --max-depth=1 /var | sort -h.

ncdu kuruluysa (Debian ve Ubuntu'da sudo apt install ncdu), sudo ncdu -x / aynı verilerin içinde etkileşimli olarak gezinmenizi sağlar.

3. Hâlâ açık olan silinmiş dosyaları kontrol edin

du, df'den çok daha az gösteriyorsa, bir işlem silinmiş bir dosyayı (çoğunlukla büyük bir günlük dosyasını) hâlâ açık tutuyor olabilir. sudo lsof +L1, bağlantı sayısı sıfır olan açık dosyaları listeler. Alan, o işlem dosyayı kapattığında geri döner; bu da genellikle dosyanın sahibi olan servisi yeniden başlatmak demektir. Bunu istek yoğunluğunun tepe noktasında değil, sakin bir anda yapın.

4. Sık rastlanan nedenleri gözden geçirin

Günlükler: /var/log dizinine bakın ve journalctl --disk-usage ile journal'ı kontrol edin. Boyut büyükse journald boyutunu sınırlama rehberimize bakın.

Paketler: sudo apt clean indirilen paket dosyalarını kaldırır; sudo apt autoremove artık gerekmeyen paketleri ve eski çekirdekleri listeler ve onay vermeden önce neleri kaldıracağını gösterir. Çalışan çekirdeği ve bir önceki sürümü tutun.

Docker: docker system df imajları, kapsayıcıları, birimleri ve derleme önbelleğini gösterir. docker system prune durdurulmuş kapsayıcıları, kullanılmayan ağları ve etiketsiz imajları kaldırır; --volumes eklemediğiniz sürece birimleri kaldırmaz, bu yüzden yanıt vermeden önce istemi okuyun.

Snap: snap list --all, devre dışı bırakılmış snap'lerin eski revizyonlarını gösterir; bunlar snap remove NAME --revision=NUMBER ile tek tek kaldırılabilir.

5. Alan açtıktan sonra

df -h komutunu yeniden çalıştırın ve disk dolduğu için durmuş servislerin çalıştığından emin olun (systemctl --failed). Disk dolulğuna takılan bir veritabanına güvenmeden önce yeniden başlatma veya denetim gerekebilir.

Ardından tekrarlanmaması için bir sınır koyun: günlük döndürme (log rotation), journald sınırı ve disk %90'a ulaşmadan önce bir uyarı.

Want a clearer view of storage and maintenance across your Linux servers?RainServer combines a lightweight agent with a cloud dashboard for VPS monitoring and maintenance.Try RainServer free for 7 days →  ·  All guides →

Son güncelleme: 2026-10-03

Kısa sorular

Sırada

İndir

Kendi bilgisayarında dene.

Ücretsiz, hesapsız, aboneliksiz. Windows 10 ve 11.