Linux系统中的inode是什么?如何找到与文件关联的inode?

inode(索引节点)是 Unix 风格文件系统中的一种数据结构,用于描述文件系统对象,例如文件或目录。

创建文件时,会为其分配一个名称和一个 inode 编号,这是一个在文件系统中唯一的整数。

图片[1]-Linux系统中的inode是什么?如何找到与文件关联的inode?-不念博客
什么是inode?

解释

文件系统通常有两部分:元数据或关于数据的“数据”和数据本身。

元数据包含有关数据的信息。

更准确地说,它包括诸如访问控制列表 (ACL)、文件修改日期、文件所有者、文件权限、文件大小、设备 ID、文件的 uid 等信息。

此类信息是文件系统,否则我们在存储介质上只有一堆没有多大意义的位。

Inode 存储此元数据信息,通常它们还存储有关数据在存储介质上的位置的信息。

在文件系统中,inode 大约占总磁盘空间的 1%,无论是整个存储单元(硬盘、拇指驱动器等)还是存储单元上的分区。inode 空间用于跟踪存储在硬盘上的文件。

inode 条目仅指向这些结构,而不是存储数据。每个条目的大小为 128 字节。

在安装操作系统或新文件系统以及进行初始结构化时,会为 Inode 分配空间。

所以通过这种方式我们可以看到,在文件系统中,设置了最大 Inode 数,因此设置了最大文件数。

现在,上述概念带来了另一个有趣的事实。

文件系统可以通过两种方式耗尽空间:

  • 没有空间用于添加新数据
  • 所有的 Inode 都被消耗掉了。

要获取 inode 编号的列表,请使用 ls -i 命令。

© 版权声明
THE END