Linux Inode Nedir? Dosya Sayısı Neden Dolabilir? VDS Rehberi

Linux Inode Nedir? sunucularda disk kullanımını kontrol ederken çoğu kullanıcı ilk olarak kaç GB alanın kaldığına bakar.
Örneğin:
Disk: 100 GB
Kullanılan: 42 GB
Boş: 58 GBBu tabloya baktığımızda sunucuda herhangi bir depolama problemi olmadığını düşünebiliriz.
Fakat Linux dosya sistemlerinde yalnızca disk alanı önemli değildir.
Bir başka önemli kaynak da inode kapasitesidir.
Linux Inode, dosya sisteminde dosya ve dizinlerle ilişkili metadata bilgilerinin tutulduğu veri yapısıdır. Dosyanın sahibi, izinleri, dosya türü, boyutu ve zaman bilgileri gibi çeşitli bilgiler inode yapısıyla ilişkilidir.
Bu nedenle:
⚠️ Diskte boş alan bulunması, her zaman yeni dosya oluşturulabileceği anlamına gelmez.
Eğer inode kapasitesi tükenmişse disk üzerinde gigabaytlarca boş alan olsa bile yeni dosya veya dizin oluşturma işlemleri başarısız olabilir.
Bu durum özellikle:
- 🌐 Web siteleri
- 📝 WordPress
- 📧 Mail sunucuları
- 💾 Cache sistemleri
- 📋 Log servisleri
- 🗄️ Yedekleme sistemleri
- ⚙️ Uygulamalar
- 🖥️ VDS sunucular
üzerinde dikkat edilmesi gereken bir konudur.
🔍 Linux Inode Ne İşe Yarar?
Linux dosya sisteminde bir dosya yalnızca içerikten ibaret değildir.
Dosyanın:
- 👤 Sahibi
- 👥 Grup bilgisi
- 🔐 İzinleri
- 📁 Dosya türü
- 📏 Boyutu
- 🕐 Zaman bilgileri
- 🔢 Inode numarası
- 🔗 Hard link bilgileri
gibi metadata bilgileri bulunur.
Bu bilgilerin önemli bir kısmı inode ile ilişkilidir. Linux inode(7) dokümantasyonunda da inode yapısının dosyayla ilişkili metadata bilgilerini tuttuğu açıklanmaktadır.
Basit şekilde:
📄 Dosyanın içeriği → Disk üzerindeki veri
🔢 Dosyanın metadata bilgileri → Inode
şeklinde düşünebilirsiniz.
💡 AYDIN CLOUD İPUCU
Linux Inode kavramını anlamanın en kolay yolu dosya boyutundan bağımsız olarak dosya sayısını düşünmektir.
1 GB büyüklüğünde tek bir dosya ile binlerce küçük dosya, disk kapasitesi açısından farklı davranabilir. Ancak çok sayıda küçük dosya inode kullanımını hızlı şekilde artırabilir.
💾 Disk Alanı ile Linux Inode Aynı Şey Değildir
Bu ayrım VDS sunucu yönetiminde oldukça önemlidir.
Disk kapasitesi:
Dosyaların kapladığı veri alanını
gösterirken inode kapasitesi:
Dosya sistemi tarafından kullanılabilecek inode yapılarını
ifade eder.
Örneğin:
💽 Disk:
100 GB toplam
45 GB kullanım
55 GB boş
🔢 Inode:
6.5 milyon toplam
6.5 milyon kullanım
0 boşBu durumda disk alanının yarısından fazlası boş olsa bile inode tamamen tükenmiştir.
Sonuç olarak:
❌ Yeni dosya oluşturulamayabilir.
❌ Cache dosyaları yazılamayabilir.
❌ Log dosyaları oluşturulamayabilir.
❌ Uygulamalar hata verebilir.
❌ Kullanıcı dosya yükleyemeyebilir.

🛠️ df -h ve df -i Farkı Nedir?
Linux’ta disk kullanımını kontrol etmek için:
df -hkullanılır.
Inode kullanımını kontrol etmek için ise:
df -ikullanılır.
GNU df komutunun -i seçeneği inode kullanım bilgilerini gösterir.
📊 df -h Örneği
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 100G 45G 55G 45% /Burada:
%45 disk kullanımı bulunuyor.
İlk bakışta sistem sağlıklı görünüyor.
Fakat:
📊 df -i Örneği
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/vda1 6553600 6553600 0 100% /görüyorsak:
🚨 Inode kapasitesi tamamen tükenmiş demektir.
💡 AYDIN CLOUD İPUCU
Sunucuda:
“No space left on device”
hatası görüyorsanız ama df -h hâlâ ciddi miktarda boş alan gösteriyorsa hemen:
df -içalıştırın.
Sorunun inode kaynaklı olup olmadığını birkaç saniye içerisinde anlayabilirsiniz.
📦 Linux Inode Neden Tükenir?
Linux Inode kullanımının yükselmesinin temel nedeni çoğu zaman çok fazla sayıda dosya oluşturulmasıdır.
Burada dosyaların toplam boyutu her zaman belirleyici değildir.
Örneğin:
🟢 Senaryo 1
1 dosya
10 GB🔴 Senaryo 2
1.000.000 dosya
Toplam 10 GBİkinci sistemde dosya sayısı çok daha yüksek olduğu için inode kullanımı çok daha hızlı artabilir.
Bu durum özellikle aşağıdaki yapılarda görülebilir:
🗂️ Cache dosyaları
📋 Log dosyaları
📧 Mail klasörleri
📝 Session dosyaları
💾 Yedekler
🌐 WordPress upload klasörleri
⚙️ Uygulama temporary dosyaları
🧩 Eklenti tarafından oluşturulan dosyalar
🌐 WordPress Linux Inode Kullanımını Artırabilir mi?
Evet.
Özellikle yoğun kullanılan WordPress sitelerinde zaman içerisinde binlerce veya milyonlarca dosya oluşabilir.
Örneğin:
- Cache dosyaları
- Thumbnail’ler
- Upload klasörleri
- Yedekler
- Loglar
- Geçici dosyalar
- Eklenti verileri
inode kullanımını artırabilir.
Bu nedenle WordPress hosting veya VDS üzerinde çalışan WordPress sitelerinde yalnızca RAM ve CPU kullanımına bakmak yeterli değildir.
AydınCloud’daki WordPress Performansı Nasıl Artırılır? rehberimizde genel performans optimizasyonlarını ele alırken, WordPress Cache Nedir? yazımızda cache mekanizmasının çalışma mantığını ayrıca açıklıyoruz.
Bu iki içerik Linux Inode açısından özellikle cache ve dosya üretimi tarafında birbirini tamamlayabilir.
💡 AYDIN CLOUD İPUCU
WordPress sitenizde inode kullanımı sürekli yükseliyorsa yalnızca daha fazla disk alanı eklemek çözüm olmayabilir. Önce hangi klasörün ve hangi eklentinin çok sayıda dosya oluşturduğunu bulun.
📧 Mail Sunucuları Neden Çok Inode Kullanabilir?
E-posta sistemleri de inode tüketimi açısından dikkat edilmesi gereken yapılardan biridir.
Bir mail sunucusunda:
📩 Gelen mesajlar
📤 Gönderilen mesajlar
🗑️ Çöp kutusu
📁 Klasörler
📎 Ek dosyalar
📨 Mail queue
📝 Log dosyaları
çok sayıda dosya oluşmasına neden olabilir.
Özellikle uzun süre temizlenmeyen mailbox’larda inode kullanımı zaman içinde ciddi seviyelere ulaşabilir.
Bu nedenle AydınCloud’un Kurumsal Mail çözümlerinde olduğu gibi mail altyapılarında da depolama kapasitesi yanında dosya sistemi davranışlarının takip edilmesi önemlidir.
📋 Log Dosyaları Linux Inode Tüketir mi?
Evet.
Bir uygulama her gün yeni bir log dosyası oluşturuyorsa zaman içerisinde çok sayıda dosya meydana gelebilir.
Örneğin:
app-01.log
app-02.log
app-03.log
app-04.log
...Tek tek dosyaların boyutu küçük olsa bile toplam dosya sayısı ciddi inode tüketimine neden olabilir.
Bu nedenle log yönetiminde:
🔄 Log rotation
🧹 Eski log temizliği
📦 Log arşivleme
📊 Merkezi log yönetimi
gibi yöntemler önemlidir.
Bu konuda AydınCloud’daki VDS Sunucuda Log Yönetimi Nedir? rehberimiz doğrudan tamamlayıcı içerik olarak kullanılabilir.
🔎 Linux Inode Kullanımı Nasıl Kontrol Edilir?
En temel komut:
df -iÖrneğin:
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/vda1 6553600 3200000 3353600 49% /Burada:
🔢 Inodes → Toplam inode
📈 IUsed → Kullanılan inode
🟢 IFree → Boş inode
📊 IUse% → Kullanım oranı
anlamına gelir.
IUse% değeri yükselmeye başladığında hangi dizinin inode tükettiğini araştırmak gerekir.
📂 En Çok Dosya Hangi Klasörde?
Inode sorununun kaynağını bulmanın en önemli aşamalarından biri budur.
Örneğin /var/log altındaki dosya sayısını:
find /var/log -type f | wc -lile kontrol edebilirsiniz.
Benzer şekilde:
find /var/cache -type f | wc -lcache klasöründeki dosya sayısını gösterir.
Bir başka örnek:
find /tmp -type f | wc -lile geçici dosyaların sayısını inceleyebilirsiniz.
🔎 İpucu
Tek tek dosya silmeye başlamadan önce en fazla dosyayı hangi klasörün oluşturduğunu tespit edin. Böylece sorunun kaynağına doğrudan ulaşabilirsiniz.
🧮 Linux Inode Kullanımını Klasör Bazında Analiz Etme
Daha geniş bir analiz için:
find /var -xdev -type f | awk -F/ 'NF>2 {print "/"$2"/"$3}' | sort | uniq -c | sort -nr | head -20gibi komutlar kullanılabilir.
Bu tarz analizlerde amaç:
“Hangi dizin çok fazla dosya oluşturuyor?”
sorusunun cevabını bulmaktır.
Örneğin:
1500000 /var/cache
850000 /var/log
420000 /var/tmpgibi bir çıktı alırsanız inode tüketiminin hangi alanlarda yoğunlaştığı konusunda fikir sahibi olabilirsiniz.
⚠️ Inode %100 Olursa Ne Olur?
Inode kapasitesi tamamen tükendiğinde Linux dosya sisteminde yeni dosya veya dizin oluşturulması mümkün olmayabilir.
Bunun sonucunda:
❌ Web sitesi dosya oluşturamaz.
❌ PHP session dosyaları yazılamaz.
❌ Cache sistemi çalışmayabilir.
❌ Log dosyaları oluşturulamayabilir.
❌ Kullanıcı yüklemeleri başarısız olabilir.
❌ E-posta işlemleri etkilenebilir.
❌ Uygulamalar hata verebilir.
Bu nedenle inode kullanımı %100’e ulaşmadan takip edilmelidir.
🚨 Disk Boşken “No Space Left on Device” Hatası
Bu hata Linux sunucu yöneticilerini en çok şaşırtan durumlardan biridir.
Örneğin:
Disk:
100 GB
Used:
30 GB
Free:
70 GBama uygulama:
No space left on devicehatası veriyor.
Bu durumda:
df -içıktısını kontrol etmek oldukça önemlidir.
Eğer:
IUse% 100%görüyorsanız disk kapasitesi değil, inode kapasitesi tükenmiş olabilir.
💡 AYDIN CLOUD İPUCU
Bu yüzden sunucu sorunlarını analiz ederken:
df -h
df -ikomutlarını birlikte çalıştırmak çok iyi bir alışkanlıktır.
Biri disk kapasitesini, diğeri inode kapasitesini gösterir.
🛠️ Inode Sorunu Nasıl Çözülür?
İlk adım kesinlikle:
Kaynağı bulmak.
olmalıdır.
Önce:
df -iArdından dosya yoğunluğunu belirlemek için:
find /var -xdev -type fgibi analizler yapılabilir.
Kaynak belirlendikten sonra:
🧹 Gereksiz cache dosyaları
📋 Eski loglar
🗑️ Kullanılmayan temporary dosyalar
💾 Gereksiz yedekler
kontrollü şekilde temizlenebilir.
Ancak:
🚨
rm -rfkomutunu ne olduğunu bilmediğiniz bir dizinde kesinlikle kullanmayın.
Özellikle:
/etc/var/lib/var/mail/var/www- Docker dizinleri
- Veritabanı dizinleri
gibi kritik alanlarda rastgele silme işlemi ciddi veri kaybına neden olabilir.
🔐 Güvenli Inode Temizliği Nasıl Yapılır?
Sağlıklı temizlik sırası:
1️⃣ Kaynağı bulun
df -i2️⃣ En yoğun klasörü belirleyin
find /var -xdev -type f3️⃣ Dosyaların ne işe yaradığını anlayın
4️⃣ Gereksiz olduklarını doğrulayın
5️⃣ Yedek gerekiyorsa alın
6️⃣ Kontrollü şekilde temizleyin
7️⃣ Sonrasında tekrar kontrol edin
df -iBu yaklaşım rastgele dosya silmekten çok daha güvenlidir.
💽 Linux Inode ve Disk I/O İlişkisi
Inode tükenmesi doğrudan I/O Wait ile aynı şey değildir.
Ancak çok sayıda dosya oluşturan veya tarayan uygulamalar disk üzerinde yoğun metadata işlemleri gerçekleştirebilir.
Bu nedenle inode problemi yaşayan bir VDS’de disk performansı da incelenebilir.
AydınCloud’daki I/O Wait Nedir? rehberimiz bu noktada tamamlayıcı bir içeriktir.
Ayrıca bugün yayınladığımız Linux Swap Nedir? yazısında RAM baskısının disk I/O ile ilişkisini ele almıştık.
Bu iki problem aynı şey değildir:
Linux Inode → Dosya sistemi / dosya sayısı
I/O Wait → I/O bekleme durumu
Swap → Bellek baskısı
Fakat gerçek bir VDS performans probleminde bu kaynakların tamamı birlikte incelenebilir.
🖥️ VDS Sunucularda Linux Inode Neden Önemlidir?
VDS sunucular üzerinde kullanıcıların daha fazla kontrol sahibi olması, aynı zamanda dosya sistemi yönetimini de önemli hale getirir.
Bir VDS üzerinde:
🌐 Web sunucusu
🗄️ Veritabanı
📧 Mail servisi
📦 Uygulamalar
💾 Backup
📋 Log sistemi
🧩 Cache
🎮 Oyun sunucuları
çalışabilir.
Her uygulamanın dosya oluşturma davranışı farklıdır.
Bu nedenle VDS performans takibinde:
CPU + RAM + Disk + I/O + Swap + Inode
birlikte değerlendirilmelidir.
AydınCloud’daki VDS Sunucuda Monitoring Nedir? rehberimizde sunucu kaynaklarının izlenmesinin önemini ayrıca ele alıyoruz.
🚀 AYDIN CLOUD İPUCU
Monitoring sisteminizde yalnızca CPU, RAM ve disk kullanımını izlemek yerine mümkünse inode kullanımını da takip edin. Böylece sorun %100 seviyesine ulaşmadan önce müdahale edebilirsiniz.
📊 Linux Inode ile Disk Kullanımını Birlikte Okuma
| Kontrol | Komut | Ne gösterir? |
|---|---|---|
| 💽 Disk alanı | df -h | GB/TB kapasitesi |
| 🔢 Inode | df -i | Inode kullanım oranı |
| 📁 Dosya sayısı | find ... | wc -l | Dosya adedi |
| 🧾 Metadata | stat | Dosya bilgileri |
| 🔎 Inode numarası | ls -i | Dosyanın inode numarası |
| ⚙️ Disk I/O | iostat | I/O davranışı |
Bu tabloyu düzenli sunucu kontrollerine eklemek, özellikle çok sayıda dosya oluşturan sistemlerde oldukça faydalıdır.
🧪 Örnek VDS Inode Analizi
Bir VDS sunucumuz olduğunu düşünelim:
💻 CPU: 8 vCPU
🧠 RAM: 16 GB
💽 Disk: 200 GB NVMeİlk kontrol:
df -hSonuç:
Used: 80 GB
Free: 120 GB
Use%: 40%Disk gayet rahat görünüyor.
Ardından:
df -isonucu:
IUse%: 96%Bu durumda artık inode kullanımını araştırmak gerekir.
Örneğin:
find /var/cache -type f | wc -lsonucu:
4.200.000olabilir.
Bu durumda cache sisteminin çok sayıda küçük dosya oluşturduğu ihtimali araştırılmalıdır.
İşte burada yalnızca daha büyük disk almak yerine dosya üretim davranışını düzeltmek çok daha doğru bir çözüm olabilir.
📈 Inode Kullanımını Nasıl Düşürebilirsiniz?
Inode kullanımını düşürmek için gereksiz dosyaların sayısını azaltmak gerekir.
Bunun için:
🧹 Gereksiz cache dosyalarını temizleyin.
📋 Eski logları yönetin.
🗑️ Geçici dosyaları kontrol edin.
💾 Gereksiz yedekleri kaldırın.
📧 Mail sistemlerini düzenli takip edin.
📝 Uygulamaların session dosyalarını inceleyin.
⚙️ Uygulamaların dosya üretme davranışını kontrol edin.
Ancak kalıcı çözüm için dosyaları oluşturan uygulamanın neden bu kadar dosya oluşturduğunu anlamak gerekir.
🧠 Inode Sayısı Artırılabilir mi?
Bu konu kullanılan dosya sistemine bağlıdır.
Örneğin ext4 dosya sistemlerinde inode sayısı ve inode oranı dosya sistemi oluşturulurken belirli parametrelerle ilişkilendirilebilir. mke2fs dokümantasyonunda inode sayısı ve inode oranıyla ilgili seçenekler bulunur.
Ancak çalışan bir üretim sisteminde:
“Inode bitti, hemen inode sayısını artıralım.”
yaklaşımı doğru değildir.
Önce neden bu kadar çok dosya oluşturulduğu belirlenmelidir.
Eğer uygulama sürekli milyonlarca küçük dosya üretiyorsa inode kapasitesini artırmak yalnızca sorunun tekrar ortaya çıkmasını geciktirebilir.
🔗 Linux Inode İçin Önemli İç Bağlantılar
Bu yazıyı AydınCloud’un mevcut teknik içeriklerinden koparmamak için şu bağlantıları özellikle kullanabiliriz:
🖥️ VDS altyapısı
VDS Sunucu → genel kaynak ve sunucu altyapısı
📊 Monitoring
VDS Sunucuda Monitoring → inode kullanımının izlenmesi
📋 Log Yönetimi
VDS Sunucuda Log Yönetimi → log dosyalarının inode tüketimi
💽 I/O Wait
I/O Wait → disk ve dosya sistemi performansının devamı
🧠 Linux Swap
Linux Swap → sistem kaynaklarının farklı bir katmanını açıklamak
🌐 WordPress Performansı
WordPress Performansı → WordPress’in dosya/cache tarafına geçiş
⚡ WordPress Cache
WordPress Cache → cache dosyalarının inode tüketimi
Bu şekilde yeni yazı:
VDS → Linux Inode → Log → Monitoring → I/O → WordPress Cache
şeklinde farklı mevcut içeriklere bağlanıyor.
📋 Linux Inode Kontrol Listesi
VDS sunucunuzda inode sorunlarını kontrol ederken:
☑️ df -h çalıştırıldı mı?
☑️ df -i çalıştırıldı mı?
☑️ Inode kullanım yüzdesi kontrol edildi mi?
☑️ En fazla dosyanın hangi dizinde olduğu bulundu mu?
☑️ /var/log kontrol edildi mi?
☑️ /var/cache kontrol edildi mi?
☑️ /tmp kontrol edildi mi?
☑️ WordPress cache ve upload dizinleri incelendi mi?
☑️ Mail klasörleri kontrol edildi mi?
☑️ Eski backup dosyaları incelendi mi?
☑️ Gereksiz dosyalar silinmeden önce doğrulandı mı?
☑️ Temizlik sonrasında df -i tekrar çalıştırıldı mı?
☑️ Sorunun tekrar oluşup oluşmadığı takip ediliyor mu?
❓ Sık Sorulan Sorular
Linux Inode nedir?
Linux Inode, Linux dosya sisteminde dosyalarla ilişkili metadata bilgilerinin tutulduğu veri yapısıdır. Dosya izinleri, sahiplik, boyut, zaman bilgileri ve diğer metadata bilgileri inode ile ilişkilidir.
Linux Inode neden önemlidir?
Çünkü dosya sistemi yalnızca disk alanına değil inode kapasitesine de ihtiyaç duyar. Çok sayıda dosya oluşturulduğunda inode kapasitesi disk alanı tamamen dolmadan tükenebilir.
Disk boşken neden dosya oluşturamıyorum?
Inode kapasitesi tükenmiş olabilir. İlk olarak:
df -ikomutunu çalıştırın.
Linux Inode nasıl kontrol edilir?
df -ikomutu inode kullanımını gösterir.
Inode %100 olursa ne olur?
Yeni dosya veya dizin oluşturma işlemleri başarısız olabilir ve web uygulamaları, log servisleri, mail sistemleri veya diğer uygulamalar hata verebilir.
WordPress inode tüketir mi?
Evet. Cache, upload, thumbnail, log, backup ve çeşitli eklentiler çok sayıda küçük dosya oluşturabilir.
Inode ile I/O Wait aynı şey mi?
Hayır.
Inode, dosya sistemi kapasitesiyle ilgilidir.
I/O Wait ise CPU’nun I/O işlemlerini beklediği durumla ilgilidir.
Ancak yoğun dosya işlemleri iki konunun aynı sunucuda birlikte incelenmesini gerektirebilir.
Inode kullanımını nasıl düşürürüm?
Öncelikle inode tüketen klasörleri ve dosyaları bulun. Daha sonra gereksiz dosyaları güvenli şekilde temizleyin ve dosyaları oluşturan uygulamanın yapılandırmasını inceleyin.
df -h ile df -i arasındaki fark nedir?
df -h disk kapasitesi kullanımını, df -i ise inode kullanımını gösterir.

🏁 Sonuç
Linux Inode, Linux sunucu yönetiminde çoğu zaman gözden kaçan ancak dosya sistemi tamamen çalışmaz hale geldiğinde ciddi sorunlara yol açabilen önemli bir kavramdır.
Özellikle:
🌐 Web sunucuları
📝 WordPress
📧 Mail sistemleri
📋 Log servisleri
💾 Backup sistemleri
⚙️ Uygulamalar
🖥️ VDS sunucular
üzerinde inode kullanımı zaman içerisinde ciddi seviyelere ulaşabilir.
Bu nedenle düzenli kontrollerinizde yalnızca:
df -hdeğil:
df -ikomutunu da kullanın.
En önemli nokta ise şudur:
🚀 Diskte boş alan olması, inode kapasitesinin de boş olduğu anlamına gelmez.
Bir VDS sunucuda sağlıklı depolama takibi:
💽 Disk kapasitesi + 🔢 Inode + 📊 I/O + 🧠 RAM + 💾 Swap
birlikte değerlendirilerek yapılmalıdır.
AydınCloud’un VDS Sunucu çözümleri ile projelerinize uygun CPU, RAM ve depolama kaynaklarını değerlendirebilir, Linux tabanlı sunucunuz üzerinde inode dahil sistem kaynaklarını daha detaylı şekilde yönetebilirsiniz.