cPanel yıllıkta ücretsiz taşıma + SSLHemen İncele
Buyukweb
Inode Nedir? Hosting'de Inode Limiti Neden Önemli?

Inode Nedir? Hosting'de Inode Limiti Neden Önemli?

Inode nedir, hosting paketlerinde neden sınırlıdır ve disk alanınız yeterliyken sitenizin neden hata vermeye başlayabileceğini örnekli, komutlu şekilde anlatıyoruz.

Inode Nedir? Hosting'de Inode Limiti Neden Önemli?

Hosting paketi alırken çoğu kullanıcı sadece disk alanına ve bant genişliğine bakar. Oysa paylaşımlı hosting dünyasında sitenizi aniden durduran, "disk dolu" hatası vermeden dosya yükleme veya e-posta gönderimini engelleyen sessiz bir sınır daha vardır: inode. Bu yazıda inode'un ne olduğunu, neden hosting sağlayıcılarının bir limit koyduğunu, kendi kullanımınızı nasıl kontrol edeceğinizi ve limite takılmamak için neler yapabileceğinizi teknik ama anlaşılır şekilde ele alıyoruz.

Inode Nedir? Basitçe Tanım

Inode (index node), Linux ve Unix tabanlı dosya sistemlerinde her bir dosya, klasör, sembolik link veya özel dosya için ayrılan bir meta veri kaydıdır. Dosyanın kendisi diskte veriyi tutarken, inode o dosyaya ait şu bilgileri saklar:

  • Dosya sahibi ve grup izinleri
  • Dosya boyutu
  • Oluşturulma, değiştirilme ve erişim tarihleri
  • Dosyanın diskteki fiziksel blok konumlarına işaret eden pointer'lar

Kritik nokta şu: inode dosyanın adını tutmaz. Dosya adı, dizin yapısı içinde ayrı bir kayıt olarak tutulur ve o kayıt ilgili inode numarasına işaret eder. Yani "bir dosya" aslında iki parçadan oluşur — dizindeki isim girdisi ve inode'daki meta veri. Bu ayrım, sembolik linklerin ve sabit linklerin (hard link) nasıl çalıştığını da açıklar.

Önemli olan şu: her dosya sistemi, oluşturabileceği inode sayısı bakımından sınırlıdır. Disk formatlanırken (örneğin ext4 ile) toplam inode sayısı önceden belirlenir. Disk alanınız boş olsa bile inode sayınız tükenirse yeni dosya oluşturamazsınız — çünkü sistemin yeni bir dosyaya "kimlik" verecek boş inode kaydı kalmamıştır.

Büyükweb notu: Çoğu kullanıcı "disk alanım dolu mu" diye kontrol eder ama inode kullanımını hiç sormaz. Oysa küçük dosyalardan (önbellek, e-posta, log) oluşan bir site, birkaç GB disk kullanırken on binlerce inode tüketebilir.

Inode Nasıl Çalışır? Dosya Sistemi Perspektifi

Bir dosya sistemi kurulduğunda (format işlemi sırasında), disk alanı ikiye ayrılır: veri blokları ve inode tablosu. Inode tablosunun boyutu format anında sabitlenir; sonradan büyütmek kolay değildir. Bu yüzden barındırma sağlayıcıları, sunucudaki toplam inode kapasitesini müşteriler arasında paylaştırmak zorundadır.

Terminalde bir sunucuda toplam ve kullanılan inode sayısını görmek için şu komut kullanılır:

df -i

Çıktı örneği şöyle görünür:

Filesystem      Inodes   IUsed    IFree IUse% Mounted on
/dev/sda1      6553600  842311  5711289   13% /

Burada IUsed sütunu o an kullanılan inode sayısını, IFree ise kalan kapasiteyi gösterir. Belirli bir dizindeki dosya (yani inode) sayısını görmek içinse:

find /home/kullanici_adi -xdev -type f | wc -l

Bu komut, ilgili dizin altındaki tüm dosyaları sayar. Klasörler de birer inode tükettiği için gerçek rakam biraz daha yüksektir, ama fikir vermesi açısından yeterlidir.

Hosting Paketlerinde Inode Limiti Neden Var?

Paylaşımlı hosting mimarisinde tek bir fiziksel sunucu, aynı dosya sistemi üzerinde yüzlerce hatta binlerce hesabı barındırır. Sunucunun toplam inode kapasitesi sabit olduğu için, sağlayıcı bu kapasiteyi hesaplar arasında adil dağıtmak zorundadır. Limit olmasaydı, tek bir hesap (kasıtlı ya da kasıtsız olarak) milyonlarca küçük dosya üreterek sunucudaki tüm inode havuzunu tüketebilir ve aynı sunucudaki diğer tüm müşterilerin yeni dosya oluşturmasını imkânsız hale getirebilirdi.

Bu, disk alanı limitinden farklı bir koruma katmanıdır. Disk alanı "ne kadar yer kaplıyorsun" sorusuna cevap verirken, inode limiti "kaç adet ayrı dosya/nesne oluşturdun" sorusuna cevap verir. İkisi birbirinden bağımsız çalışır — bir hesap disk kotasının çok altında olsa bile inode kotasını doldurabilir.

Paylaşımlı sunucularda kaynak izolasyonu ve adil kullanım genellikle kaynak yönetim katmanları üzerinden sağlanır; bu konuyu ve ilgili teknolojiyi daha detaylı incelemek isteyenler CloudLinux nedir? yazımıza bakabilir.

Inode Limitine Hangi Dosyalar Dahildir?

Inode sayımı yalnızca "gördüğünüz" dosyalarla sınırlı değildir. Hesabınızdaki şu unsurların hepsi ayrı ayrı inode tüketir:

  • Web dosyaları: HTML, PHP, CSS, JS, resim dosyaları — CMS kurulumlarında (özellikle WordPress) bu sayı hızla binlere çıkar.
  • E-postalar: Maildir formatında saklanan e-posta sistemlerinde her tek e-posta ayrı bir dosyadır. 10.000 e-posta biriktiren bir kutu, tek başına 10.000 inode tüketir.
  • Önbellek (cache) dosyaları: Sayfa önbellekleme eklentileri, her sayfa varyasyonu için ayrı statik dosya üretir.
  • Log dosyaları: Erişim logları, hata logları, cron çıktıları zamanla birikir.
  • Yedekleme dosyaları: Hesap içine indirilen veya oluşturulan yedek arşivleri.
  • Küçük resim/thumbnail dosyaları: WordPress, bir görsel yüklendiğinde otomatik olarak birden fazla boyutta (thumbnail, medium, large vb.) kopya üretir — tek görsel, 5-8 ayrı dosyaya dönüşebilir.
  • Session dosyaları: PHP oturum (session) dosyaları geçici olsa da anlık olarak inode sayar.
  • Klasörler: Her alt dizin de kendi başına bir inode'tur.

Inode Kullanımınızı Nasıl Kontrol Edersiniz?

cPanel tabanlı hosting paketlerinde inode kullanımını görmek oldukça kolaydır. cPanel ana panelinde "Statistics" (İstatistikler) bölümünde veya sayfanın sol/sağ kenar çubuğunda "Inode Usage" (Inode Kullanımı) satırı yer alır ve o an kullanılan/toplam inode sayısını gösterir. Bu değer genellikle gerçek zamanlıya yakın güncellenir.

Kontrol panelleri arasında arayüz ve raporlama farkları merak ediyorsanız cPanel mi Plesk mi? karşılaştırma yazımızda detaylı bilgi bulabilirsiniz. Büyükweb'in cPanel Web Hosting paketlerinde bu istatistik doğrudan panelin ana ekranında görünür, yani sınıra ne kadar yaklaştığınızı görmek için ayrı bir araca ihtiyacınız olmaz.

SSH erişiminiz varsa, hangi klasörün en çok inode tükettiğini bulmak için şu komutu kullanabilirsiniz:

for dir in */; do echo -n "$dir: "; find "$dir" | wc -l; done

Bu komut, mevcut dizindeki her alt klasörün toplam dosya+klasör sayısını listeler ve genellikle sorunlu dizini (örneğin wp-content/cache veya mail) hızlıca ortaya çıkarır.

Inode Limitini Zorlayan Yaygın Sebepler

WordPress Önbellek Eklentileri

Statik sayfa önbellekleme eklentileri, her ziyaretçi varyasyonu (mobil/masaüstü, dil, oturum durumu) için ayrı bir HTML dosyası üretebilir. Trafiği yüksek ama önbellek temizleme sıklığı düşük ayarlanmış bir site, kısa sürede on binlerce cache dosyası biriktirebilir.

Biriken E-postalar

Uzun süre silinmeyen, arşivlenmeyen e-posta kutuları — özellikle spam klasörleri — inode tüketiminin sessiz kaynaklarından biridir. Maildir yapısında her mesaj tek dosya olduğu için 50.000 e-postalık bir kutu, tek başına ciddi bir inode payını götürür.

Görsel Yoğun WooCommerce/Galeri Siteleri

Her ürün görseli için WordPress otomatik olarak birden fazla boyutta kopya oluşturur. Binlerce ürünlü bir e-ticaret sitesinde bu çarpan etkisi hızla büyür.

Log ve Geçici Dosya Birikimi

Hata ayıklama (debug) modu açık bırakılmış siteler, debug.log dosyasını sürekli büyütür; bazı eklentiler her istek için ayrı log dosyası oluşturabilir. Cron job çıktıları da düzenli temizlenmezse birikir.

Yedekleme Eklentileri

Sunucu üzerinde yerel yedek tutan eklentiler, her yedeği ayrı dosya/arşiv olarak sakladığından zamanla inode tüketimini artırır.

Büyükweb notu: Hosting, reseller ve VDS paketlerimizde günlük otomatik yedekleme altyapı tarafında zaten çalıştığı için, hesabınız içine ayrıca manuel yedek dosyaları biriktirmenize gerek kalmıyor — bu da hem disk hem inode açısından gereksiz yükü azaltır.

Inode Limiti Aşıldığında Ne Olur?

Inode kotanız dolduğunda sunucu, hesabınız için yeni dosya veya klasör oluşturulmasına izin vermez. Bu, disk alanı doluyken yaşanana çok benzer ama farklı belirtilerle ortaya çıkar:

  • Yeni dosya yükleyemezsiniz (FTP/SFTP "disk kotası aşıldı" benzeri hata verir).
  • WordPress gibi CMS'ler eklenti/tema güncellemesi yapamaz, çünkü güncelleme işlemi geçici dosya oluşturmayı gerektirir.
  • PHP oturum dosyası oluşturulamadığı için giriş yapamama, sepete ekleyememe gibi sorunlar görülür.
  • Önbellek veya log dosyası yazılamadığında bazı uygulamalar 500 Internal Server Error döndürebilir. Bu hatanın kök nedenlerini daha geniş kapsamda görmek isterseniz HTTP 500 hatası yazımıza bakabilirsiniz.
  • Yeni e-posta alınamaz; gelen mesajlar reddedilir veya kuyrukta bekler.

En kafa karıştıran nokta şudur: cPanel'de disk kullanımınız hâlâ %20'lerde gözükebilir ama inode kotası %100'e dayanmış olabilir. Bu yüzden sadece "disk alanım yeterli" diye rahat olmak yanıltıcıdır.

Inode Kullanımını Azaltmanın Pratik Yolları

  1. Önbellek ömrünü kısaltın ve düzenli temizleyin. Cache eklentilerinde otomatik temizleme (purge) süresini makul bir aralığa (örneğin 24-48 saat) ayarlayın.
  2. Kullanılmayan eklenti ve temaları silin. Devre dışı bırakmak yeterli değildir; dosyalar hâlâ inode tüketir. Silin.
  3. E-posta kutularını arşivleyin veya temizleyin. Eski e-postaları yerel bir istemciye indirip sunucudan silmek, önemli miktarda inode geri kazandırır.
  4. Gereksiz görsel boyutlarını sınırlayın. WordPress ayarlarından otomatik üretilen ara boyut sayısını azaltabilir veya kullanılmayan boyutları temizleyen bir araçla eski dosyaları toplu silebilirsiniz.
  5. Debug/log modunu kapalı tutun. Geliştirme ortamı dışında WP_DEBUG_LOG gibi ayarları kapalı bırakın, log dosyalarını periyodik olarak temizleyin.
  6. Sunucu içi yedek dosyalarını biriktirmeyin. Yedeğinizi indirip sunucudan silin; zaten günlük otomatik yedekleme altyapı seviyesinde çalışıyorsa manuel arşive genelde ihtiyaç yoktur.
  7. Git deposu veya node_modules gibi geliştirme kalıntılarını canlı ortamda tutmayın. Bu dizinler binlerce küçük dosya içerebilir ve production ortamında hiçbir işlevi yoktur.

Inode vs Disk Alanı: Farkları

İki kavram sık karıştırılır ama tamamen farklı şeyleri ölçer:

Özellik Disk Alanı Inode
Ölçtüğü şey Kaç MB/GB veri kapladığınız Kaç ayrı dosya/klasör oluşturduğunuz
Büyük bir dosya Alanı hızlı doldurur, inode'u tek başına 1 birim tüketir Etkisi minimaldir
Binlerce küçük dosya Alanı yavaş doldurur Kotayı hızla tüketir
Tipik risk kaynağı Video, büyük yedek arşivleri E-posta, cache, thumbnail, log

Disk alanı ve bant genişliği kotalarının paket bazında nasıl belirlendiğini daha geniş kapsamda öğrenmek isterseniz hosting'de disk alanı ve bandwidth yazımızı inceleyebilirsiniz. Kısacası: az sayıda büyük dosyanız varsa muhtemelen önce disk limitine, çok sayıda küçük dosyanız varsa önce inode limitine takılırsınız.

Sıkça Sorulan Sorular

Inode limiti dolduğunda sitem tamamen çöker mi?

Hayır, mevcut sayfalar genellikle görüntülenmeye devam eder çünkü var olan dosyalar silinmez. Ancak yeni dosya yazma gerektiren her işlem (eklenti güncelleme, yeni e-posta alma, cache yazma, dosya yükleme) başarısız olur ve bazı durumlarda sunucu hatası görülebilir.

Inode sayısını hosting paketimi değiştirmeden azaltabilir miyim?

Evet. Çoğu durumda inode tüketiminin büyük kısmı gereksiz birikim (eski cache, biriken e-posta, kullanılmayan eklenti dosyaları) kaynaklıdır. Düzenli temizlik yaparak mevcut paketinizde uzun süre rahat çalışabilirsiniz.

Her hosting paketinin inode limiti aynı mı?

Hayır, paket seviyesine göre değişir. Paylaşımlı hosting paketlerinde belirli bir inode kotası tanımlıdır; güncel rakamlar için ilgili paket sayfasındaki teknik özellikleri kontrol etmenizi öneririz.

Inode limitim dolduğunda sağlayıcım beni uyarır mı yoksa siteyi mi kapatır?

Bu, sağlayıcıdan sağlayıcıya değişir. Genel prensip, hesap kapatılmadan önce kullanıcının durumu fark edip müdahale edebilmesidir; bu yüzden inode kullanımınızı düzenli aralıklarla panel üzerinden kontrol etmek en güvenli yaklaşımdır.

WordPress dışındaki sitelerde inode sorunu daha az mı yaşanır?

Statik HTML siteler genelde daha az inode tüketir çünkü CMS'lerin ürettiği önbellek, thumbnail ve eklenti dosyaları yoktur. Ancak e-posta kullanımı, log birikimi gibi faktörler CMS'den bağımsız olarak her hesapta inode tüketebilir.

VDS paketlerinde de inode limiti var mı?

VDS'te kaynaklar (disk dahil) size özel ayrılır, dolayısıyla paylaşımlı hostingdeki gibi sabit bir "inode kotası" sınırı genellikle söz konusu değildir; sınırlayıcı faktör kendi sunucunuzun dosya sisteminin toplam kapasitesidir. Yine de aşırı sayıda küçük dosya biriktirmek, kendi sunucunuzda da performans ve bakım açısından önerilmez.

Inode kullanımını izlemek için otomatik bir uyarı kurabilir miyim?

cPanel panelinde disk ve inode kullanımı sürekli görünür durumdadır; düzenli olarak (örneğin ayda bir) bu değeri kontrol etmeyi alışkanlık haline getirmek, sürpriz yaşamamanın en pratik yoludur.

Büyükweb Hizmetleri

Inode dostu, düzenli otomatik yedeklemeli ve panel üzerinden anlık kaynak takibi sunan bir hosting altyapısı arıyorsanız:

Sorularınız için 0850 302 60 70 numaralı satış öncesi destek numaramızdan bize ulaşabilir veya iletişim sayfası üzerinden yazılı destek talep edebilirsiniz.

Web Hosting Rehberi İlgili Hizmetlerimiz

Bu yazıda anlatılan teknik konuyu profesyonel altyapıyla deneyimleyin

Etiketler:

#inode#hosting#cpanel#wordpress#disk alanı#dosya sistemi

Bu yazıyı paylaş

WhatsApp0850 302 60 70