Inode capacity for ext4, XFS, ZFS and other filesystems.
An inode is metadata for every file and directory. Running out of inodes yields “no space left” while the disk still has bytes — common with millions of small files.
ext4 defaults to roughly one inode per 16 KB. XFS and ZFS use different ratios. The result is an estimate; mkfs options change reality.
Containers and maildir workloads with millions of tiny files run out of inodes before gigabytes. After format, the ratio only changes with a new mkfs.
Frequently asked questions
How do I watch inodes?
df -i. At 100%, delete files, move to a larger FS, or reformat with a different ratio.
Are XFS inodes dynamic?
XFS allocates inodes as needed; it is not ext4’s “all up front” model. The estimate is still rough.
What is bytes-per-inode?
ext4 mkfs -i. Lower for many small files (more inodes), higher for large files.
Why does Docker eat inodes?
Layers and overlay create many files. Watch df -i on the container host.
Is the result guaranteed?
No. mkfs options, snapshots and copies change reality.