Reference

Inode

An inode is the data structure a Unix-style file system uses to store a file’s metadata — its size, permissions, timestamps, and the location of its data blocks — but not its name. Each file uses one inode, so a disk can run "out of inodes" even with free space if it holds millions of tiny files.

Storage conceptsGeneral

Inode

Also known as: index node, inode table, file metadata record, out of inodes

An inode is the data structure a Unix-style file system uses to store a file’s metadata — its size, permissions, timestamps, and the location of its data blocks — but not its name. Each file uses one inode, so a disk can run "out of inodes" even with free space if it holds millions of tiny files.

  • Stores file metadata, not the file name
  • One inode per file or folder
  • A disk can run out of inodes with space left

What an inode stores

On file systems like ext4, APFS, and other Unix-style designs, every file and folder has an inode: a record holding its size, owner, permissions, creation and modification times, and pointers to the actual data blocks on disk. The file’s name is not in the inode — it lives in the directory, which maps names to inode numbers.

This split is why a single file can have several names (hard links) all pointing to one inode. Deleting a file really means removing a directory entry and freeing the inode once no names reference it.

Running out of inodes

A file system reserves a fixed pool of inodes when it is created. Because each file consumes one inode regardless of its size, a drive crammed with huge numbers of tiny files — caches, logs, mail — can exhaust the inode pool while the capacity bar still shows free space.

Modern file systems such as APFS allocate inodes dynamically and rarely hit this limit, but on older fixed-inode systems it can cause confusing "disk full" errors that clearing a few large files will not fix; you have to delete many small files instead.

Related terms

Keep reading the reference.