Bugün size nasıl yardımcı olabiliriz?

Bilgi bankamızda arama yapmak için sorunuzu yazın...

cPanel Inode Limiti Nedir? Disk Boşken Neden Dosya Yüklenmez?

Yazdır

Netx Teknik Ekibi  ·  Yayın: 01.10.2026

Inode, hosting hesabınızdaki her dosya ve klasör için tutulan kayıttır. Inode limiti de hesabınızda en fazla kaç dosya ve klasör bulunabileceğini belirler. Disk kotası kullanılan alanı gigabayt olarak, inode kotası ise dosya sayısını adet olarak sınırlar. Binlerce küçük e-posta, önbellek ve oturum dosyası diski neredeyse hiç doldurmadan inode kotasını bitirebilir. Kota dolduğunda disk boş görünse bile yeni dosya oluşturulamaz. Bu yüzden yükleme yapılamaz, e-posta alınamaz ve önbellek yazılamaz.

Inode ile disk alanı arasındaki fark

Linux dosya sistemlerinde her dosyanın bir inode'u vardır. Inode dosyanın içeriğini değil, onu tanımlayan bilgileri tutar: sahibi, izinleri, boyutu, zaman damgaları ve verinin diskte nerede durduğu. Klasörler de birer inode kullanır. 1 KB'lık bir önbellek dosyası da 1 GB'lık bir video da sayaçta aynı değeri taşır: bir adet.

Paylaşımlı hostingte sağlayıcı iki ayrı kota tanımlayabilir: disk alanı ve dosya sayısı. Hangisi önce dolarsa hesap o noktada yeni dosya yazamaz.

KotaNeyi sayar?Genellikle ne doldurur?
Disk alanıDosyaların toplam boyutuMedya, video, yedek arşivleri, büyük ekli e-postalar
InodeDosya ve klasörlerin adediE-postalar, önbellek, oturum dosyaları, açılmış eski kopyalar, bağımlılık klasörleri

Örnek: disk kotası 10 GB, inode kotası 100.000 olan bir hesap varsayalım. Ortalama 20 KB'lık 50.000 e-posta yaklaşık 1 GB yer kaplar. Bir önbellek eklentisinin ürettiği 30.000 küçük dosya birkaç yüz MB tutar. Buna bir WordPress kurulumunun birkaç bin dosyası eklendiğinde disk kullanımı yüzde 15 civarında kalırken inode kullanımı yüzde 85'e yaklaşır. Buradaki rakamlar yalnızca hesap örneğidir, herhangi bir paketin değerlerini göstermez.

Inode dolunca görülen belirtiler

  • Yükleme hataları: Görsel, eklenti veya tema yüklenemez. WordPress "Unable to create directory" ya da "Could not create directory" türünde bir hata verir. Sunucu günlüklerinde çoğu zaman "Disk quota exceeded" yazar. Bu ifade yalnızca disk alanı dolunca değil, dosya sayısı kotası dolunca da çıkar; disk alanında yer görünmesi inode'un da boş olduğu anlamına gelmez.
  • E-posta alınamaması: Gelen her ileti yeni bir dosya demektir. Posta sunucusu iletiyi kutuya yazamayınca ileti gecikir ya da gönderene hata olarak geri döner.
  • Önbellek ve oturum sorunları: Önbellek eklentisi dosya yazamadığı için site yavaşlar. Oturum dosyası da oluşturulamazsa yönetim paneline giriş yapılamayabilir.
  • Güncelleme ve yedek hataları: Güncellemeler geçici dosya açamadığı için yarıda kalır, panelden yedek alınamaz.
  • Zamanlanmış görev hataları: Cron ile çalışan işler çıktı veya günlük dosyası oluşturamaz.

CloudLinux kullanan sunucularda inode sınırı disk kotası düzeyinde uygulanır. Yumuşak (soft) ve sert (hard) olmak üzere iki eşik tanımlanabilir. Yumuşak sınır belirli bir süre aşılabilir; varsayılan ek süre yedi gündür. Sert sınıra gelindiğinde ise yeni dosya yazılamaz. Yumuşak sınırın aşıldığı günleri temizlik için tanınmış bir süre olarak görün. LVE ve CageFS'in genel işleyişini CloudLinux, CageFS ve LVE, işlemci ve bellek gibi diğer sınırları hosting kaynak limitleri yazısında anlattık.

Inode kullanımını ölçme

cPanel ana ekranındaki istatistikler

cPanel ana ekranının istatistik (Statistics) bölümündeki File Usage satırı, hesabın kullandığı dosya ve klasör sayısını ve sınırı gösterir. Bu satır, sağlayıcı WHM'in Tweak Settings ekranında "Display File Usage information in the cPanel stats bar (inode count)" ayarını açmışsa görünür. Ayar varsayılan olarak kapalıdır. Satır sizde görünmüyorsa inode kullanımınızı ve sınırınızı sağlayıcınıza sorun.

Disk Usage aracı

Disk Usage (disk kullanımı) arayüzü, ana dizininizdeki klasörlerin ne kadar yer kapladığını en büyük klasöre oranlanmış çubuklarla gösterir. Bir klasöre tıklarsanız klasör File Manager'da açılır. Ancak bu ekran dosya sayısını değil, boyutu gösterir. En büyük klasör çoğu zaman en çok inode tüketen klasör değildir. 5 GB'lık bir video klasöründe birkaç yüz dosya olabilir, 200 MB'lık bir önbellek klasöründe ise yüz binlerce dosya. Ekrandaki rakamlar son değişiklikleri de hemen yansıtmayabilir.

File Manager

File Manager (dosya yöneticisi) ile şüpheli klasörlerin içine bakabilirsiniz. Posta kutularındaki çöp kutusu ve spam gibi klasörlerin ve bazı önbellek dizinlerinin adı nokta ile başladığı için bunlar gizlidir. Görmek için Settings menüsünden Show Hidden Files (dotfiles) seçeneğini açın. File Manager'da sildiğiniz dosyalar hemen yok olmaz, hesabınızın içindeki Trash klasörüne taşınır. Bu dosyalar da kotadan sayılır; kotadan ancak Empty Trash ile çöp kutusu boşaltılınca düşerler.

SSH veya Terminal ile komut satırı

Kabuk erişiminiz varsa en hızlı yöntem komut satırıdır. SSH ya da cPanel'in Terminal arayüzü her pakette açık olmayabilir; paketinizde olup olmadığını sağlayıcınızdan öğrenin. Aşağıdaki komutlar yalnızca okuma yapar ve hiçbir dosyayı değiştirmez.

Ana dizininizdeki birinci düzey klasörleri dosya sayısına göre sıralamak için:

cd ~
du --inodes -d 1 2>/dev/null | sort -n | tail -n 15

Listenin en altındaki satırlar en çok dosya içeren klasörlerdir. En kalabalık klasöre girip aynı komutu tekrarlayarak sorunlu dizine inin. Örneğin posta kutularının dağılımını görmek için:

du --inodes -d 3 ~/mail 2>/dev/null | sort -n | tail -n 15

Tek bir klasördeki dosya sayısını bulmak için:

find ~/public_html/wp-content/cache -type f | wc -l

-type f yalnızca dosyaları sayar. Inode kotası klasörleri de saydığı için toplamı görmek isterseniz find . | wc -l kullanın. df -i komutu ise sunucudaki disk bölümünün tamamını gösterir; paylaşımlı hostingte sizin kotanız hakkında bilgi vermez.

Inode'u en çok ne tüketir?

E-posta kutuları

cPanel sunucularında posta kutuları çoğunlukla Maildir biçiminde tutulur ve bu biçimde her ileti ayrı bir dosyadır. Yıllardır kullanılan kurumsal bir kutu tek başına on binlerce dosya içerebilir. cPanel'in kendi belgesi de bu biçimin büyük arşivlerde inode kaynağını hızla tükettiğini belirtir. En sık gözden kaçan yerler şunlardır:

  • Çöp kutusu, Junk ve spam klasörleri: Silinen ve spam olarak işaretlenen iletiler de dosya olarak durmaya devam eder.
  • Gönderilmiş öğeler: Ekli teklif ve fatura gönderen hesaplarda hızla büyür.
  • Kullanılmayan hesaplar: Ayrılan çalışanların kutuları ve kimsenin okumadığı bilgi@, noreply@ gibi adresler.
  • Tümünü yakala ayarı: Default Address ekranında tüm iletileri bir kutuya toplayan (catch-all) ayar açıksa, var olmayan adreslere gelen spam de bu kutuya dolar.

Birden çok iletiyi tek dosyada saklayan mdbox biçimi inode kullanımını belirgin şekilde azaltır. Ancak biçim değişikliği sağlayıcının sunucu düzeyinde vereceği bir karardır. Dönüşüm, POP3 kullanan kutularda eski iletilerin yeniden inmesine de yol açabilir.

Önbellek ve oturum dosyaları

  • Sayfa önbelleği: Önbellek eklentileri her sayfa için, çoğu zaman cihaz türü ve dile göre ayrı ayrı dosya üretir. Küçültülmüş CSS ve JavaScript kopyaları da bunlara eklenir.
  • Görsel kopyaları: WordPress, yüklenen her görsel için tema ve eklentilerin tanımladığı her boyutta ayrı bir dosya oluşturur. Görsel optimizasyon eklentilerinin ürettiği WebP ve AVIF kopyaları bu sayıyı ayrıca katlar.
  • Dosyada tutulan oturumlar: Uygulama oturumları dosya olarak saklıyorsa ve eski oturumları temizleyen mekanizma çalışmıyorsa oturum klasöründe yüz binlerce dosya birikebilir.
  • Şablon ve derleme önbellekleri: Laravel'in storage/framework klasörü ya da Smarty'nin templates_c klasörü gibi.

Eski yedekler, kopyalar ve geliştirme klasörleri

  • Açılmış yedekler: Sıkıştırılmış bir yedek arşivi (.tar.gz, .zip) tek dosyadır ve tek inode tüketir; sorun disk alanıdır. Asıl sorun açılmış halde bırakılan yedeklerdir. "site-eski" ya da "public_html_yedek" gibi bir klasör, sitenin dosya sayısını ikiye katlar.
  • Test ve staging kopyaları: Her kopya, bir kurulumun tamamı kadar dosya demektir.
  • node_modules ve vendor: JavaScript ve PHP bağımlılık klasörleri tek başına on binlerce dosya içerebilir.
  • Günlük dosyaları: Her gün yeni dosya açan uygulama günlükleri ve döndürülmüş (rotate) arşivler zamanla birikir.
  • Güncelleme kalıntıları: Yarıda kalan güncellemelerden geriye geçici klasörler kalabilir.

Veri kaybetmeden temizlik

Inode dolduğunda telaşla toplu silme yapmak bir sorunu çözerken yenisini yaratabilir. Aşağıdaki sıra hem hızlıdır hem de her adımda geri dönüş imkânı bırakır:

  1. Önce yedek: Silmeyi düşündüğünüz her şeyin bilgisayarınızda ya da harici bir depoda kopyası olsun. Inode dolu olduğu için panelden yedek alınamıyorsa kritik klasörleri FTP ile indirin veya sağlayıcınızdan destek isteyin. Yöntemleri cPanel'de yedek alma yazısında bulabilirsiniz.
  2. Önce ölçüm: Başlangıçtaki dosya sayısını not edin ve her adımdan sonra tekrar bakın. Böylece hangi adımın işe yaradığını görürsünüz.
  3. En kalabalık klasörü bulun: Sorun çoğu zaman bir iki klasörde toplanır. Tüm hesabı taramak yerine oraya odaklanın.
  4. Yeniden üretilebilenden başlayın: Önbellek silindiğinde uygulama gerektiğinde onu yeniden oluşturur. Risk en düşük burada.
  5. Kopyası olanla devam edin: Bilgisayarınıza indirdiğiniz eski yedekler, kullanılmayan kopyalar ve arşivlenmiş günlükler.
  6. E-postayı istemci üzerinden temizleyin: Ayrıntılar aşağıda.
  7. Çöp kutusunu en sona bırakın: File Manager'daki Trash klasörünü, siteler sorunsuz çalışmaya devam ettiğinde boşaltın.

Kota tamamen dolmuşsa arşiv oluşturmak gibi yeni dosya gerektiren işlemler de başarısız olur. Böyle bir durumda önce birkaç dosyalık yer açın; en kolayı önbelleği temizlemektir.

Önbelleği uygulamanın kendi aracıyla temizleyin

Önbellek klasörünü dosya yöneticisinden silmek yerine eklentinin veya uygulamanın temizleme işlevini kullanın. WordPress önbellek eklentilerinde bu, "tümünü temizle" türünde bir düğmedir. Laravel'de php artisan cache:clear ve php artisan view:clear komutları, e-ticaret yazılımlarında ise yönetim panelindeki önbellek ekranı bu işi görür. Böylece uygulama kendi kayıtlarını tutarlı biçimde günceller. Önbellek temizlendikten hemen sonra yeniden dolmaya başlar. Dosya sayısı kısa sürede eski seviyesine dönüyorsa önbellek ömrünü ve önbelleğe alınan sayfa türlerini gözden geçirin. Filtre ve sıralama kombinasyonlarının her birinin ayrı sayfa olarak önbelleğe alınması sık görülen bir nedendir.

E-postayı istemcide arşivleyin

  1. Posta kutusunu Outlook veya Thunderbird gibi bir istemcide açın ve eski yılları istemcinin yerel arşivine taşıyın. IMAP'te sunucudan silinen ileti tüm cihazlardan silinir. Bu yüzden arşiv klasörünün sunucuda değil, bilgisayarınızda durduğundan emin olun. Farkı IMAP mı, POP3 mü yazısında anlattık.
  2. Çöp kutusu ve spam klasörlerini boşaltın.
  3. Toplu temizlik için cPanel'deki Email Disk Usage (e-posta disk kullanımı) arayüzünü kullanın. Hesabı seçtikten sonra belirli bir yaştan eski (örneğin bir yıl ve üzeri), belirli bir boyuttan büyük ya da daha önce okunmuş iletileri silebilirsiniz. İşlem Delete Permanently ile onaylanır ve geri alınamaz; bu yüzden önce birinci adımı tamamlayın.
  4. Posta klasörlerindeki dosyaları File Manager veya FTP ile doğrudan silmeyin. Posta sunucusunun dizin ve kota kayıtları gerçek durumla uyumsuz kalabilir.

Elle toplu silmenin riskleri

  • Yanlış klasör: wp-content/uploads gibi içerik klasörleri önbellekle karıştırılabilir. Silinen ürün ve yazı görselleri kendiliğinden geri gelmez.
  • Çalışma anında gereken klasörler: Composer kullanan PHP uygulamalarında vendor klasörü silinirse site açılmaz. Sunucuda çalışan bir Node.js uygulaması da node_modules olmadan başlamaz. Bu klasörleri yalnızca kullanılmayan eski kopyalardan kaldırın.
  • Etkin oturumlar: Etkin oturum dosyalarını silmek ziyaretçileri ve yöneticileri oturumdan atar, e-ticaret sitelerinde sepetleri boşaltabilir.
  • Joker karakterler: Yanlış dizinde çalıştırılan tek bir rm -rf komutu hesabın tamamını silebilir. Silmeden önce aynı deseni ls veya find ile listeleyip kontrol edin.
  • Kalıcılık farkı: File Manager'da Trash'e taşınan dosyalar geri alınabilir, komut satırında silinenler alınamaz.

Hemen silmek istemediğiniz ama çok sayıda dosya içeren eski bir klasörü File Manager'ın Compress işleviyle tek bir arşive çevirebilirsiniz. Binlerce dosya böylece tek bir inode'a iner. Arşivi bilgisayarınıza indirip klasörü sildiğinizde hem dosya sayısı hem disk rahatlar.

Tekrar dolmasını önlemek

  • Kutulara kota verin: Email Accounts ekranında her posta kutusuna bir depolama sınırı tanımlayın; tek bir kutu tüm hesabı dolduramaz.
  • Oturumları dosyadan çıkarın: Uygulamanız destekliyorsa oturumları dosya yerine veritabanında veya önbellek sunucusunda tutun.
  • Gereksiz görsel boyutlarını kapatın: Temanın kullanmadığı küçük resim boyutlarını devre dışı bırakın.
  • Yedekleri hesapta bekletmeyin: Aldığınız yedekleri indirin ve hesaptaki kopyayı silin.
  • Ayda bir ölçün: Dosya sayısını ayda bir kontrol edin. Ani artışlar çoğu zaman yanlış yapılandırılmış bir önbelleğin ya da spam'in ilk işaretidir.

Ne zaman paket yükseltilmeli?

Temizlikten sonra inode kullanımı hâlâ yüzde 80'in üzerindeyse sınıra her hafta yeniden yaklaşırsınız. Yükseltmeden önce şunu sorun: bu kadar dosya gerçekten gerekli mi? Yanıt site tipine göre değişir:

Site tipiDosya sayısını ne artırır?İlk yapılacak
Kurumsal site ve e-postaYıllardır silinmeyen posta kutularıİstemcide arşivleme ve kutu kotası; e-posta yükü ağırsa e-postayı ayrı bir hizmete taşımak
WordPress blog veya haber sitesiGörsel boyutları, sayfa önbelleğiGereksiz boyutları kapatmak, önbellek ömrünü kısaltmak
E-ticaretÜrün görselleri, varyasyonlar, filtre sayfalarının önbelleğiGörsel ve önbellek ayarı; katalog büyümeye devam ediyorsa üst paket veya sunucu
Geliştirme ve testStaging kopyaları, bağımlılık klasörleriKopyaları ayrı bir ortama almak

Dosyalar gerçekten gerekliyse (büyüyen bir ürün kataloğu ya da saklanması zorunlu yazışmalar gibi) üst pakete geçmek doğru karardır. Paketleri karşılaştırırken yalnızca disk alanına değil, dosya sayısı sınırına da bakın. Disk alanı "limitsiz" sunulan paketlerde bile dosya sayısı ayrı bir sınıra bağlı olabilir. Bu değer paket kartında yazmıyorsa sağlayıcınızdan yazılı olarak isteyin.

Netx'in cPanel hosting paketleri arasında geçiş destek talebiyle yapılır. Önbellek ve görsel kopyalarıyla çok sayıda dosya üreten WordPress siteleri için WordPress hosting paketlerine de bakabilirsiniz. Paketlerin dosya sayısı sınırını ve hesabınızın güncel kullanımını, sipariş veya paket değişikliği öncesinde destek ekibiyle netleştirebilirsiniz.

Sık sorulan sorular

Dosyaları sildim ama inode sayısı düşmedi, neden?

File Manager'daki Trash dışında iki neden daha olabilir. Telefonda veya bilgisayarda IMAP ile silinen iletiler önce sunucudaki çöp kutusu klasörüne taşınır; bazı istemciler iletiyi yalnızca işaretler ve sunucudan ancak silme işlemi kesinleştirildiğinde (expunge) kaldırır. Ayrıca paneldeki istatistikler değişiklikleri gecikmeli yansıtabilir. Çöp kutularını boşaltıp bir süre sonra yeniden bakın.

Inode limiti ile dosya yükleme boyutu sınırı aynı şey mi?

Hayır. Yükleme boyutu sınırı tek bir dosyanın en fazla kaç MB olabileceğini belirleyen bir PHP ayarıdır (upload_max_filesize ve post_max_size). Inode limiti ise dosyanın boyutuna bakmaz, hesaptaki toplam dosya adedini sınırlar.

Veritabanındaki kayıtlar inode tüketir mi?

Tablolardaki satırlar tek tek dosya olarak saklanmaz. Bu yüzden bir tabloya binlerce kayıt eklemek dosya sayısını pratikte değiştirmez. Oturum ve önbellek verisini dosyadan veritabanına almanın inode'u rahatlatması da bundandır.

Ek alan adları ve alt alan adları ayrı bir inode kotası alır mı?

Hayır. Aynı cPanel hesabına eklenen bütün alan adları, alt alan adları ve bunlara ait e-posta kutuları hesabın tek kotasını paylaşır. Bir sitenin önbelleği ya da bir çalışanın posta kutusu, hesaptaki diğer sitelerin de yeni dosya yazmasını engelleyebilir.

Bu cevap yeterince yardımcı oldu mu?

Değerlendirme: 0

<< Geri
İnternet bağlantınız kesildi