首页 > 系统服务 > 详细

Linux学习笔记10-文件、目录与磁盘格式三

时间:2017-04-29 18:26:02      阅读:254      评论:0      收藏:0      [点我收藏+]

inode,block与目录树的关系

目录

当我们在Linux下的文件系统新建一个目录时,EXT4会分配一个inode与至少一个block给该目录。其中,inode记录该目录的相关权限与属性,并记录分配到的block号码;而block则是记录在这个目录下的文件或目录名与该文件或目录占用的inode号码数据。ls -i可以查看目录下各文件或目录的inode号码。如果目录下文件或目录太多,一个block记录不下,就会占用多个block。

文件

当我们在Linux下新建一个一般文件时,系统会分配一个inode与相对于该文件大小的block数量给该文件。但是因为inode大小有限,当文件特别大时,系统会为其创建间接块,所谓间接块即用inode记录一个block的号码,但是该block并不记录实际的文件内容,而是记录其它block的号码,再由这些block记录文件内容,这种间接块可以延续多层,形成树形结构,使inode能够关联的文件内容指数级增长,这是inode能够作为文件的唯一入口的关键所在。

技术分享

目录树读取

所以,文件的inode本身并不记录文件名,文件名是记录在目录的block中的,所以我们新增,删除,重命名文件才需要目录的w权限。由于目录树是由根目录开始读起,因此系统通过挂载的信息可以找到挂载点的inode号码,此时就能够得到根目录的inode内容,并依据该inode读取根目录的block内的文件名数据,再一层层地往下读到正确的文件。

Linux学习笔记10-文件、目录与磁盘格式三

原文:http://www.cnblogs.com/Tyler-Liu/p/6785668.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!