Understanding UNIX / Linux filesystem Inodes - 系统运维
Theinode (index node)is a fundamental concept in the Linux and UNIX filesystem. Each object in the filesystem is represented by an inode. But what are the objects? Let us try to understand it in simple words. Each and every file under Linux (and UNIX) has following attributes:=> File type (executable, block special etc)=> Permissions (read, write etc)=> Owner=> Group=> File Size=> File access, change and modification time (remember UNIX or Linux never stores file creation time, this is favorite question asked in UNIX/Linux sys admin job interview)=> File deletion time=> Number of links (soft/hard)=> Extended attribute such as append only orno one can delete fileincludingroot user (immutability)=> Access Control List (ACLs)All the above information stored in an inode. In short the inode identifies the file and its attributes (as above) . Each inode is identified by a unique inode number within the file system. Inode is also know as index number.inode definitionAn inode is a data structure on a traditional Unix-style file system such as UFS or ext3. An inode stores basic information about a regular file, directory, or other file system object.How do I see file inode number?You can use ls -i command to see inode number of file$ ls -i /etc/passwdSample Output32820 /etc/passwdYou can also use stat command to find out inode number and its attribute:$ stat /etc/passwdOutput:File: `/etc/passwd'
Size: 1988 Blocks: 8 IO Block: 4096 regular file
Device: 341h/833d Inode: 32820 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2005-11-10 01:26:01.000000000 +0530
Modify: 2005-10-27 13:26:56.000000000 +0530
Change: 2005-10-27 13:26:56.000000000 +0530Inode applicationMany commands used by system administrators in UNIX / Linux operating systems often give inode numbers to designate a file. Let us see he practical application of inode number. Type the following commands:$ cd /tmp$ touch \"la*$ ls -lNow try to remove file "la*You can't, to remove files having created with control characters or characters which are unable to be input on a keyboard or special character such as ?, * ^ etc. You have to useinode number to removefile. This is fourth part of "UnderstandingUNIX/Linux filesystem, continue reading rest of the Understanding Linux file system series (this is part IV):