inode

✍ dations ◷ 2025-05-01 09:29:55 #文件系统,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。

相关

  • 俄勒冈州俄勒冈å·ï¼ˆè‹±è¯­ï¼šState of Oregon)是ç¾å›½çš„一个å·ï¼Œä½äºç¾å›½è¥¿åŒ—的太平
  • 哥特式建筑哥特式建筑(法语:Architecture gothique, 英语:Gothic architecture),或译作歌德式建筑,是一种兴盛于欧洲中世纪高峰与末期的建筑风格。它是由罗马式建筑发展而来,为文艺复兴建筑所
  • 互联网高度自由的国家美国的网络审查是美国对互联网上信息发布和浏览进行限制的行为。基于《美国宪法第一修正案》的强力保护,言论自由在美国不受联邦政府、各州政府和本地政府侵犯,这种保护也相应
  • 私法私法,相对于公法,一般而言指的是规范私权关系的法律。目前区分公、私法并未有一个统一的标准理论,但比较多数人采的是所谓的“新主体说”,这一个说法的区分标准是:如果一个法律关
  • 主权公国联合尼德兰主权公国(荷兰语:Souvereine Vorstendom der Verëenigde Nederlanden),是一个在1813至1815年间存在的主权公国。该政权是打败拿破仑的领袖们重划欧洲势力范围时产生
  • 行政院客家委员会客家委员会(简称客委会)为中华民国有关客家族群事务的最高主管机关,成立于2001年6月,其目标是复兴台湾日渐流失的客家文化,延续客家传统文化命脉,并打造台湾成为一个尊重多元族群
  • 中国北方诸岛中国沿海岛屿数量众多,不过大部分集中在浙江、福建等南方省份,长江口以北的黄海和渤海海域岛屿相对较少。下表所列为中国长江口以北海域中四面环海的的海岛(不含人工陆连岛),长江
  • 钾离子钾离子(K+)是金属元素钾的阳离子。钾是人类营养中的一种必要宏量元素,也是动物细胞中主要的阳离子,同时在体液及电解质平衡上非常的重要。大量血浆(约每天180升)在肾脏的肾小球处
  • 北高加索酋长国北高加索酋长国(俄语:Северо-Кавказский эмират),是俄罗斯车臣伊斯兰主义者在俄国内战时于车臣与西达吉斯坦成立的国家,由1919年9月至1920年3月存在。首都
  • 杨诲之杨诲之(790年代-9世纪),唐朝人。杨凭子,柳宗元妻弟。有兄弟杨浑之。唐德宗贞元十八年(802年)九月,杨凭任湖南观察使,驻军部潭州(今湖南长沙);唐顺宗永贞元年(805年)九月,柳宗元被贬邵州刺史