inode (or index node) is a data structure that describes the linux file-system of one object such as a file or a directory.
They are also known as filesystem objects (e.g. files and directories).
Each node stores:
- the attributes
- and disk block locations of the object.
The i-number is a integer that represents the index (ie the location) of the node element in the table storing all nodes (the table is stored as an array)
The number of inodes is a resource because it's fixed at file system creation, limiting the maximum number of files the file system can hold.
The common case is one inode for every 2K bytes.
It is possible for a device to run out of inodes. When this happens, new files cannot be created on the device, even though there may be free space available.
ls prints the i-node number in the first column of the report with the i option.