An inode is a data structure that stores various information about a file in Linux, such as the access mode (read, write, execute permissions), ownership, file type, file size, group, number of links, etc. Operating system stores all the metadata for every file and directory.
So when the time comes to access file we find it with the help of its name, but when it comes to the operating system it finds the file with the help of its inode number.
These are few file systems (ext2, ext3, ext4), so the files accessed by the filesystem is not with the help of its name but with its inode number.
For you, you save your information in a file, but for the operating system it stores the information of a file in an inode. So basically inode is nothing but metadata of a data.
How to find an inode number of a file?
[root@ip-10-10-10-10 tmp]# ls -li test
7865 -rw-r-----. 1 root root 0 May 15 15:45 test
[root@ip-10-10-10-10 tmp]#
so -i option with ls command is for the inode number and -l is for long listing
options used with ls command:
-i -> print the inode number of each file
-l -> use a long listing format
Some really interesting blog from where I learned inode and many more topics is slashroot.in
See what all files you can delete. The unused files which are no more needed to you in the future delete those files. Please try to dig deep which process is generating so many files, that your inodes are getting filled up. Verify with ‘df -i’
What are the steps we can taken while inode gets full and also which file we can delete without any problems to OS