Ana içeriğe geç

Sunucudaki alanı "tüketen" dosyalar nasıl bulunur ve silinir

· 2 dakikalık okuma
Customer Care Engineer

Sunucunuzda alan mı kalmadı? Bu, sitenin ve veritabanının arızalanmasına neden olabilir. Alanı boşaltmak için en çok yer kaplayan dosyaları belirleyip silmeniz gerekir. Bu makalede, ncdu yardımcı programını kullanarak bunu nasıl kolayca başaracağınızı ve günlükleri nasıl güvenle temizleyeceğinizi açıklayacağız.


Adım 1: Ncdu'yu kurma ve çalıştırma

ncdu disk alanı analizi için kullanışlı bir araçtır. Kullanımı kolay bir metin arayüzünde tüm klasörleri ve dosyaları boyuta göre sıralanmış olarak görüntüler.

Bu programı kullanmak için SSH üzerinden sunucunuza bağlanmanız gerekecektir.

Kurulum

  • Debian/Ubuntu:
sudo apt update && sudo apt install ncdu
  • CentOS/AlmaLinux/Rocky Linux:
sudo yum install ncdu

Disk analizi çalıştırma

  • Kök dizinini / taramak için şunu çalıştırın:
sudo ncdu -x /

ncdu'daki -x seçeneği, taramayı tek bir dosya sistemine sınırlar, takılı sanal dizinleri (ör. /proc, /dev, /sys) ve ayrı bağlama noktaları aracılığıyla takılan diğer tüm birimleri (ör. ağ veya harici sürücüler) hariç tutar.

  • Belirli bir dizini analiz etmek için:
sudo ncdu /path/to/directory

Örneğin, yalnızca günlükler dizinini taramak için şunu çalıştırın:

sudo ncdu /var/log

Adım 2: Gereksiz dosyaları analiz etme ve silme

ncdu'yu çalıştırdıktan sonra, boyuta göre sıralanmış bir dosya ve klasör listesi göreceksiniz. Navigasyon basittir:

  • Yukarı/Aşağı ok tuşları — listede gezinir.
  • Enter — bir dizine girer.
  • D — seçilen dosyayı veya klasörü siler.

ncdu-how-to-find-large-files

tehlike

Sistem dosyalarını silerken dikkatli olun. Yalnızca emin olduğunuz dosyaları silin.

Linux'ta dosyalar silindiğinde kalıcı olarak kaldırılır! Kurtarma yalnızca yedeklemeler yoluyla ve yalnızca mevcutsa mümkündür.

Çok fazla yer kaplayan dosya ve dizinlerin bir listesini oluşturmak (ncdu'da satırları vurgulayın ve yerel PC'nizdeki bir not defterine kopyalayın), ardından her birini tek tek gözden geçirip komut satırını kullanarak silmek daha güvenlidir.

Bir dosyayı silmek için şunu çalıştırın:

sudo rm -f /path/to/file

Bir dizini silmek için:

sudo rm -rf /path/to/directory

Çok yer kaplama eğiliminde olan başlıca dizinlerin bir listesi burada:

  1. /var/www/ - sitelerinizin bulunduğu dizin

Genellikle en büyük dizinler, sırasıyla kullanıcı tarafından yüklenen dosyaları ve site önbelleğini içeren web sitesinin kök dizinindeki yükleme ve önbellektir. Örneğin:

/var/www/user/data/www/yoursite.com/upload/

Bu dizinlerdeki dosyaları silmek nispeten güvenlidir. Ancak, yükleme dizinindeki hangi dosyaların önemli olduğunu ve hangilerinin artık gereksiz olduğunu yalnızca web sitenizin yöneticisi olarak siz bilirsiniz. Hataları önlemek için dizinin kendisini olduğu gibi bırakmanız önerilir.

  1. /var/lib/mysql/

Bu, web sitenizin veritabanlarını içeren dizindir.

tehlike

Lütfen bu dizinden hiçbir şeyi silmeyin!

Eğer olağandan fazla yer kaplıyorsa, sorunun daha derinlemesine analizi için barındırma sağlayıcınızla iletişime geçin.

  1. /var/log/

Bu dizin, sunucunuzda çalışan yazılımlar tarafından oluşturulan günlükleri depolar. Günlüklerin belirli özellikleri vardır ve bunların temizliği ayrı bir makalede ele alınmaktadır.


Adım 3: Sonlandırma ve doğrulama

Gereksiz dosyaları sildikten sonra, komutu kullanarak ne kadar alanın boşaltıldığını kontrol edin:

df -h