Linux文件系统:基本文件类型和inode

基本文件类型

普通文件:文件中包含信息是用户、系统或应用程序输入生成,在文件系统中不加任何内部修饰,把它们看做纯粹的字节流。

目录:包含文件名列表和指向与之相关联的的索引节点的指针。目录文件时特殊写保护权限的普通文件,只有文件系统才能进行写操作。

特殊文件:不含数据内容,提供一个映射物理设备到文件名的机制。

管道:管道是进程通信的基础设备。

链接文件:链接已经存在的文件的一个可选择的文件名。

符号链接文件:数据文件,数据包含了所链接的文件的文件名。

索引节点

Linux支持多文件系统,把所有文件系统都映射到统一的下层系统,操作系统通过支持文件系统和给文件分配磁盘空间,所有Linux和UNIX都是通过索引节点来管理。每个索引节点保存了文件系统中的一个文件系统对象的元信息数据,但不包括数据内容或者文件名。

                  block为4k大小的文件系统

级别 块数 可以索引的文件区域大小
直接 12 48k
1级 512 2m
2级 512*512=256K 1G

 

3级 512*256K=128M 512G

查看磁盘inode和block信息

[root@localhost yemo] # dumpe2fs /dev/sda1 |grep "Block count"
dumpe2fs 1.41.12 (17-May-2010)
Block count:              512000
[root@localhost yemo] # dumpe2fs /dev/sda1 |grep "Inode count"
dumpe2fs 1.41.12 (17-May-2010)
Inode count:              128016 

目录项

目录只是将文件的名称和它的索引节点号结合在一起的一张表,目录中每一对文件名称和索引节点号称为一个连接。目录中的..父目录索引节点的指针,以及子目录索引节点的指针。对于一个文件来说有唯一的索引节点号与之对应,对于一个索引节点号,却可以有多个文件名与之对应。因此,在磁盘上的同一个文件可以通过不同的路径去访问它。

符号链接和硬链接

软硬链接的区别:

1)默认不带参数情况下,ln命令创建的是硬链接。

2)硬链接文件与源文件的inode节点号相同,而软链接文件的inode节点号与源文件不同。3)ln命令不能对目录创建硬链接,但可以创建软链接,对目录的软链接会经常被用到。

4)删除软链接文件,对源文件及硬链接文件无任何影响;

5)删除文件的硬链接文件,对源文件及软链接文件无任何影响;

6)删除链接文件的原文件,对硬链接文件无影响,会导致其软链接失效(红底白字闪烁状);

7)同时删除原文件及其硬链接文件,整个文件才会被真正的删除。

8)很多硬件设备中的快照功能,使用的就类似硬链接的原理。

9)软连接可以跨文件系统,硬链接不可以跨文件系统。

猜你喜欢

转载自www.linuxidc.com/Linux/2017-07/145373.htm
今日推荐