An inode is a pointer to a file in the filesystem. The amount of inodes is determined at filesystem creation time and can be varied due to what the filesystem is to be used for. If you're going to store only large files on the disk (let's say you DivX film archive - relatively few but large files) you'd want a low inode count, as each inode does take some overhead space. On the other hand, if you're going to use the disk for your news spool (lots and lots of small files), you want a high inode count, so that you don't run out of them. If you have no free inode you can't create a new file, no matter how much free space you have.

Per the link in my previous post, the inode density on the /dev/hdX4 partitions should be one inode per 128kB. Default for an ext2 is one per every 4 or 8kB, don't recall exactly which.

Edit: Calling it a pointer might be a bit simplified. It's a reserved space on disc which houses a list of pointers to blocks on the partition, as well as a pointer to one other such list of pointers (indirect) and a pointer to a list of pointers to lists (double indirection) and one triple indirection block. It is this structure, along with the size of a block, that sets the maximum file size possible, ie how many data block that can be pointed to by an inode. The inode also stores a number of dates (creation, last modified, etc), the rights set on the file, who owns the file, etc.

/Michael


Edited by mtempsch (03/03/2002 00:42)
_________________________
/Michael