inode

✍ dations ◷ 2025-11-28 00:55:16 #文件系统,Unix

inode(index node)是指在许多“类Unix文件系统”中的一种数据结构,用于描述 文件系统对象(包括文件、目录、设备文件、socket、管道, 等等)。每个inode保存了 文件系统对象数据 的属性和磁盘块位置。文件系统对象属性 包含了各种元数据(如:最后修改时间) ,也包含用户组(owner )和权限数据。

文件夹是inode的名字。一个文件夹包含自身节点,父节点和每个子节点。

Unix先驱丹尼斯·里奇说,inode这个命名的来源可能是文件系统的存储组织为一个扁平数组,分层目录信息使用一个数作为文件系统这个扁平数组的索引值(index)。

文件系统创建(格式化)时,就把存储区域分为两大连续的存储区域。一个用来保存文件系统对象的元信息数据,这是由inode组成的表,每个inode默认是256字节或者128字节。另一个用来保存“文件系统对象”的内容数据,划分为512字节的扇区,以及由8个扇区组成的4K字节的块。块是读写时的基本单位。一个文件系统的inode的总数是固定的。这限制了该文件系统所能存储的文件系统对象的总数目。典型的实现下,所有inode占用了文件系统1%左右的存储容量。

文件系统中每个“文件系统对象”对应一个“inode”数据,并用一个整数值来辨识。这个整数常被称为inode号码(“i-number”或“inode number”)。由于文件系统的inode表的存储位置、总条目数量都是固定的,因此可以用inode号码去索引查找inode表。

Inode存储了文件系统对象的一些元信息,如所有者、访问权限(读、写、执行)、类型(是文件还是目录)、内容修改时间、inode修改时间、上次访问时间、对应的文件系统存储块的地址,等等。知道了1个文件的inode号码,就可以在inode元数据中查出文件内容数据的存储地址。

文件名与目录名是“文件系统对象”便于使用的别名。一个文件系统对象可以有多个别名,但只能有一个inode,并用这个inode来索引文件系统对象的存储位置。

Linux系统使用struct inode作为数据结构名称。BSD派生的系统,使用vnode名称,其中v表示“virtual file system”。

POSIX标准强制规范了文件系统的行为。每个“文件系统对象”必须具有:

使用stat系统调用可以查询一个文件的inode号码及一些元信息。

系统管理员使用的很多程序往往用inode号码来替代文件名来访问文件系统。例如磁盘完整性检查程序fsckpfiles。因此,inode号码与文件全路径名的互查是需要的。可以用find带参数选项-inumls带参数选项(-i做到。

文件系统可能会用尽inode。这导致文件系统还有空闲的存储空间,但已经没有空闲的inode可供使用了。例如,一个电子邮件服务器可能会被大量的小文件用尽所有inode,但是却没有填满文件存储空间。

现代的文件系统,如JFS和XFS,能够动态地增加inode,因此不会用尽inode。

相关

  • 阿提拉阿提拉(拉丁语:Attila,406年9月2日-453年4月30日),一译亚提拉,古代欧亚大陆匈人最为人熟知的领袖和单于,史学家称之为“上帝之鞭”(scourge of God),曾多次率领大军入侵东罗马帝国及西
  • 蜥形纲蜥形纲(学名:Sauropsida)是羊膜动物(Amniota)的一大演化支,包含了所有现存爬行类与鸟类,鸟纲(Aves)因此是蜥形纲的一部分,此外还包括了一个现在已经灭绝的鱼龙超目。与蜥形类最亲近的
  • 急性白磷中毒急性白磷中毒,又称急性黄磷中毒,是指人体由于摄入(吸入或口服)白磷单质(不包括磷化合物)而出现的急性中毒医学情况。急性白磷中毒的原因包括误服含白磷产品、自杀或自残、军事应用
  • 红茶红茶是一种全发酵茶,是西方茶文化中的主要茶品。明朝时产于福建武夷山的正山小种为红茶鼻祖,1610年荷兰人透过印度尼西亚殖民地将小种红茶运往欧洲开始了西方红茶文化。红茶与
  • 台湾小吃台湾小吃是一类富有台湾生活与文化特色的街头小吃的总称,与澎湖小吃、马祖小吃以及金门小吃共筑中华民国四大地区的美食文化。台湾小吃的特色是就地取材。因为台湾岛四面环海
  • 先灵葆雅先灵葆雅(Schering-Plough)是一家总部位于美国新泽西州凯尼尔沃思的制药公司,以生产开瑞坦等抗过敏药物而闻名。1851年,药剂师埃内斯特·舍林在德国建立先灵公司。1908年,实业家
  • 卷尾猴卷尾猴(学名Cebus capucinus),也叫白头卷尾猴、白面卷尾猴或白喉卷尾猴,是一种小型的新世界猴,生活在南美和中美的雨林地区。卷尾猴的体毛多为黑色,脸部周围为白色或黄白色,脸部和
  • 布什总统布什总统可以指:
  • 渐伸线渐伸线(involute)(或称渐开线(evolvent))和渐屈线(evolute)是曲线的微分几何上互为表里的概念。若曲线A是曲线B的渐伸线,曲线B是曲线A的渐屈线。在曲线上选一定点。有一动点由出
  • 光学玻璃光学玻璃是制造光学镜头、光学仪器的主要材料。光学玻璃必须有高度精确的折射率、阿贝数和高透明度、高均匀度。最初用于制造镜头的玻璃,就是普通窗户玻璃或酒瓶上的疙瘩,形状