首页 理论教育 嵌入式Linux编程:Linux文件系统简介

嵌入式Linux编程:Linux文件系统简介

时间:2023-10-31 理论教育 版权反馈
【摘要】:Linux文件系统和Windows文件系统有很大的区别。Windows文件系统是以驱动器的盘符为基础的,而且每一个目录与相应的分区对应。Linux把分区和目录相对应,以后对这个目录的操作就是对这个分区的操作,这样就实现了硬件管理手段和软件目录管理手段的统一。Linux文件系统通常使用索引节点来记录文件信息,其作用如同Windows的文件分配表。Linux文件系统将文件索引节点号和文件名同时保存在目录中。符号连接是Linux特殊文件的一种。

嵌入式Linux编程:Linux文件系统简介

文件系统是指操作系统中与管理文件有关的软件和数据。Linux文件系统和Windows文件系统有很大的区别。Windows文件系统是以驱动器的盘符为基础的,而且每一个目录与相应的分区对应。例如,“C:\Projects”是指此文件在C盘这个分区下,而Linux恰好相反。文件系统是一个文件树,且它的所有文件和外围设备(如硬盘和光驱等)都以文件的形式挂结在这个文件树上。

Linux把分区和目录相对应,以后对这个目录的操作就是对这个分区的操作,这样就实现了硬件管理手段和软件目录管理手段的统一。这个把分区和目录对应的过程叫做挂载(Mount),而这个挂载在文件树中的位置就是挂载点。这种对应关系可以由用户随时中断和改变。

Linux文件系统通常使用索引节点来记录文件信息,其作用如同Windows的文件分配表。索引节点是一个结构,它包含了一个文件的长度、创建及修改时间、权限、所属关系和磁盘中的位置等信息。一个文件系统维护了一个索引节点的数组,每个文件或目录都与索引节点数组中的唯一一个元素对应。系统给每个索引节点分配了一个号码,也就是该节点在数组中的索引号,称为索引节点号。

Linux文件系统将文件索引节点号和文件名同时保存在目录中。所以,目录只是将文件的名称和它的索引节点号结合在一起的一张表。目录中的每一对文件名称和索引节点号称为一个连接。

对于一个文件,有唯一的索引节点号与之对应;对于一个索引节点号,可以有多个文件名与之对应。因此,在磁盘上的同一个文件可以通过不同的路径去访问。可以用ln命令对一个已经存在的文件再建立一个新的连接,而不复制文件的内容。连接有软连接和硬连接之分,软连接又称符号连接。它们各自的特点是:(www.xing528.com)

(1)硬连接

硬连接的原文件名和连接文件名都指向相同的物理地址。目录不能有硬连接。硬连接不能跨越文件系统,不能跨越不同的分区。文件在磁盘中只有一个复制,节省硬盘空间。由于删除文件要在同一个索引节点属于唯一的连接时才能成功,因此可以防止不必要的误删除。

(2)符号连接

用ln-s命令可建立文件的符号连接。符号连接是Linux特殊文件的一种。作为一个文件,符号连接的数据是它所连接的文件的路径名,类似于Windows下的快捷方式。可以删除原有的文件而保存连接文件,没有防止误删除功能。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈