目录树读取:
inode本身不记录文件名,文件名的记录是在目录的block中。
当我们要读取某个文件是,就会先找到待读取文件的inode号码,最终才会读到正确的文件的block内的内容。
ll -di / /etc /etc/passwd
如果需要读取/etc/passwd这个文件,那么需要经历以下几个步骤:
-
/的inode:
透过挂载点信息找到inode号码为2的根目录inode.
-
/的block:
找到根目录下/etc的inode号码
-
etc/的inode:
查看inode内容,如果有rx限权那么可以读取etc的block内容
-
etc/的block:
查找passwd
-
passwd的inode:
如果inode中限权有r,那么可以读取block
-
passwd的block:
读取文件内容
filesystem大小与磁盘读取效能。
由于每一个block大小有限,因此linux在储存文件数据时候通常是哪里的block为空,就存在哪里。如果文件写入的block过于分散,此时就会出现所谓的文件数据离散的问题。