Unix file system is a collection of files and directories. On Unix or Linux everything is a file and if something is not a file then its process. There are many special types of files like device files, directory files, regular files and so on. To manage all those files in an ordered tree like structure. Inode is the concept which is used for identifying files uniquely if names are same in different structure. The most fundamental building block of many Linux file system is the i-Nodes. Let's briefly understand the what is i-Nodes.
I-Nodes:
An i-node doesn't provide file's name. An i-node includes the permission's of file, creation time, modification time, file's owner and so on. As all of us know, Directories are also a special file. i.e. Each directory also gets an i-node and the i-node points to data blocks containing information (filenames and i-nodes ) about the files in the directory.
The i-nodes are used to provide indirection so that more data blocks can be pointed to –which is why each i-node does not contain the filename. Only one i-node works as a representative for the entire file, thus it would be a space if every i-node contained filename information. An i-node is a unique in entire file system.
Super Blocks:
The first piece of information read from a disk is its superblock. This small data structure reveals several key pieces of information, including the disk's geometry, the amount of available space, and, the most important location of data. Without a super block, an on-disk file system is useless.
There are many type of file systems in Linux. Some of them are as :
· Ext2:
In this file system concepts of blocks, i-nodes and directories.
· Ext3:
Ext2 enhanced with some features like journaling capabilities. Journaling allows fast file system recovery.
· Lsofs(iso9660):
Used by CDROM file system.
· Sysfs:
It is ram based file system initially based on ramfs.
· Procfs:
The proc file system acts as an interface to internal data structures in the kernel . It can be used to obtain information about the system and to change certain kernel parameters at runtime using sysctl command.
· NFS:
Network file system allows many users or systems to share the same files by using client/server methodology. NFS allows sharing all of the above file system.
Also supports vfat, Microsoft NTFS file system.
0 comments:
Post a Comment