摘录于以下链接:
http://www.cnblogs.com/itech/archive/2012/05/15/2502284.html
http://72333.blog.51cto.com/62333/12590
本文基于前人理解,如有不客观情况,请不吝赐教,共同进步!
首先说的是inode[索引节点,information node ],其次是要理解硬盘的文件存储才能对inode有全面的理解.
1.硬盘上最小的存储单位是扇区(sector),每个扇区存储512Bytes(=0.5KB)的数据. Linux文件系统读取硬盘的时候,不是逐个扇区读取数据,而是多个扇区同时读取,所以在Linux文件系统上有块的概念(block),是人为定义的概念,块是由多个扇区的组成的,是linux系统最小的文件存取单位.
2.文件数据的存储是在块里面,linux/unix里面检索文件数据通过inode(索引节点号)的,不是通过文件名,但是inode和文件名的关系是:在存储的时候,inode和文件名是放在同一张列表里面,作为一个链接。
PS:
No.1:当我们创建一个文件例如a.txt的时候,系统会分配一个inode(索引节点号)给予文件,(从创建文件到以后)文件的存取读写都是通过这个inode号来进行.这个inode节点号就是存储再文件夹里面的.
No.2:inode不单只包含了索引节点号,他还包含了文件数据的元数据(metadata),inode也是存储在块中。每个文件一旦创建即使没有数据都有相应inode.
N0.3:硬盘上的inode包含了文件的以下内容:
* 文件的字节数。