inode

✍ dations ◷ 2025-02-23 06:34:40 #文件系统,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。

相关

  • 耳柱骨耳柱骨(英语:columella)是爬虫类、两生类与鸟类的听小骨,可将声波从鼓膜传到内耳,其内端较粗,紧贴内耳的卵圆窗;外端较粗,连接在鼓膜中央。其功能相当于哺乳类中耳的镫骨。
  • 网络蜘蛛网络爬虫(英语:web crawler),也叫网络蜘蛛(spider),是一种用来自动浏览万维网的网络机器人。其目的一般为编纂网络索引(英语:Web indexing)。网络搜索引擎等站点通过爬虫软件更新自身
  • 卡门线卡门线(Kármán line)是公认的外太空与地球大气层的分界线,位于海拔100 km(330,000英尺)处。它是负责国际的航空航天标准制定、记录保存的机构国际航空联合会所承认的大气层和
  • 阿莱克·杰弗里斯亚历克·约翰·杰弗里斯爵士,CH,FRS(英语:Sir Alec John Jeffreys,1950年1月9日-),出生于英国牛津,英国遗传学家,最早的DNA指纹分析及DNA特征测定技术发展者。其技术首次在1983到1986
  • 啮虫总目啮虫目(学名:Psocodea)是由传统分类的啮虫目(亦有简化作
  • 保卫局中国人民解放军军徽审判机关:中国人民解放军军事法院检察机关:中国人民解放军军事检察院中央军委政法委员会保卫局,是中央军委政法委员会下属局,负责军事纪律检查、刑事调查、保
  • 邰肇玫邰肇玫(1958年1月15日-),台湾高雄人,籍贯陕西武功,台湾创作型歌手。1973年进入私立文藻女子外国语文专科学校。在校期间主修英文;副修西班牙文。1977年邰肇玫与文藻语专的同学施碧
  • 联邦院 (印度)执政联盟(89): 在野党(155): 其他(10): 缺额(1): 联邦院(印地语:राज्य सभा、英语:Rajya Sabha)是印度国会的上议院。议员最多有250名,其中12名由总统根据他们在艺术、文学、科学和社
  • 信用违约交换信用违约交换(英语:credit default swap,缩写CDS)也称信用违约掉期、信贷违约掉期、贷款违约保险;是信贷与保险的衍生工具之一,合约由两个法人交易,一个称为买方(信贷违约时受保护的
  • 美国地方行政长官列表美国地方行政长官列表是如今在美国各州和属地担任州长或者总督(属地的行政长官通常称总督),以及在华盛顿哥伦比亚特区担任市长的人士列表。在各州之中,有26位州长来自共和党,24位