Inode Usage Calculator
Calculate inode consumption and remaining inode capacity on an ext4 or xfs filesystem.
About Inode Usage Calculator
Every file, directory, symlink and named pipe on a Linux filesystem consumes exactly one inode, regardless of the file's data size. Because the total inode count is fixed at filesystem creation time (for ext4) or grows dynamically but still has practical ceilings (for xfs), a filesystem can report plenty of free disk blocks via df while simultaneously being completely full from df -i's perspective — most commonly when a workload creates huge numbers of very small files, such as mail spools, session caches or scratch directories. This calculator applies the same 80% warning and 95% critical thresholds commonly used for block usage, since inode exhaustion causes an identical 'no space left on device' failure even though the disk itself is not full.
Formula
Inode usage percentage
used% = used_inodes / total_inodes × 100
- I_{used}
- used inode count
- I_{total}
- total inode count
Worked example
With the default values below, Inode Usage Calculator returns Inode Usage of 92.50%. Change any input above and every figure here is recalculated in your browser.
Inputs used
- Used Inodesminimum 0
- 1,850,000
- Total Inodesminimum 1
- 2,000,000
Results
- Inode Usage
- 92.50%
- Status
- Warning — approaching inode limit
- Free Inodes
- 150,000
- Free Percentage
- 7.50%
Step by step
- 1Values used
- 2Inode usage percentage
- 3Inode Usage= 92.50
- 4Status= Warning — approaching inode limit
- 5Free Inodes= 150,000
- 6Free Percentage= 7.50
Assumptions and limits
- The result is derived only from the 2 inputs listed above. Anything not among them is not part of the calculation.
- In particular, this calculator does not take inflation, tax, fees or charges or compounding frequency into account.
- Figures are rounded for display to 2 decimal places, so totals built from several rounded parts can differ slightly from the unrounded arithmetic.
How these calculators are built and tested is described on the Methodology page. If a figure looks wrong, please report it.
Guides that use this calculator
Frequently Asked Questions
Why does df show free space while df -i shows 100% inode usage?
Block usage and inode usage are tracked independently. A directory tree full of tiny files (a few bytes each) can exhaust every inode long before it fills the underlying disk blocks, because each file consumes one inode no matter how small its data is.
Can I add more inodes to an existing ext4 filesystem?
No — ext4 fixes its total inode count at mkfs time based on the bytes-per-inode ratio specified during formatting. The only fix for an inode-exhausted ext4 filesystem is to free up files or reformat with a smaller bytes-per-inode ratio (or migrate to xfs, which allocates inodes dynamically).
What commonly causes inode exhaustion?
Common culprits include runaway log rotation creating thousands of small files, mail queues, session or cache directories that never clean up old entries, and build systems or package caches that accumulate many small intermediate files without pruning.
