Hello! 欢迎来到小浪云!


【Linux】文件系统的基本概念


文件系统的基本概念

文件系统是一种把数据组织成文件和目录的存储方式,提供了基于文件的存取接口,并通过文件权限控制访问。

【Linux】文件系统的基本概念

存储的基本单位(物理)

扇区——硬盘的最小存储单位(Sector)。一般每个扇区存储512字节(相当于0.5kb)。

【Linux】文件系统的基本概念

磁盘的每一面被分为很多条磁道,即表面上的一些同心圆,越接近中心,圆就越小。

而每一个磁道又按512个字节为单位划分为等分,叫做扇区。

文件存储单位(Linux下文件系统管理)

块——文件存取的最小单位。“块”的大小,最常见的是4kb,即连续八个sector组成一个block。

【Linux】文件系统的基本概念

文件的结构

Ext*格式化分区——操作系统将自动将硬盘分成三个区域。

目录项区——存放目录下文件的列表信息。

数据区——存放文件数据。

inode区(inode table)——存放inode所包含的信息。

【Linux】文件系统的基本概念

文件系统根据inode编号来检索数据。

目录项其实不属于文件的一部分,它应该被归纳在文件系统中。


关于inode

inode——“索引节点”,存储文件的元信息,比如文件的创建者、文件的创建日期、文件的大小等等。

每个inode都有一个号码,操作系统用innode号码来识别不用的文件。

代码语言:JavaScript代码运行次数:0运行复制

ls -i #查看innode号

inode节点大小——一般是123字节或256字节。inode节点的总数,格式化时就给定,一般是每1kb或每2kb就设置一个inode。

一块1GB的硬盘中,每1kb就设置一个inode,那么inode table的大小就会达到128MB,占整块磁盘的12.8%。


系统读取文件三步曲

【Linux】文件系统的基本概念

对一个文件进行操作,从根目录逐级开始查找,最终找到该文件对应的inode number,在inode table中进行查询,获取inode信息,根据inode信息,确定文件存储的位置。

相关阅读