linux如何查看inode被哪些文件占用了?
发布网友
发布时间:2022-03-28 14:20
我来回答
共2个回答
懂视网
时间:2022-03-28 18:41
inode包含时间、档名、使用者及群组等。
inode(发音:eye-node)译成中文就是索引节点,它用来存放档案及目录的基本信息,包含时间、档名、使用者及群组等。inode是UNIX操作系统中的一种数据结构,其本质是结构体,它包含了与文件系统中各个文件相关的一些重要信息。在 UNIX 中创建文件系统时,同时将会创建大量的inode。通常,文件系统磁盘空间中大约百分之一空间分配给了inode表。
有时,人们使用了一些不同的术语,如inode和索引编号(inumber)。这两个术语非常相似,并且相互关联,但它们所指的并不是同样的概念。inode 指的是数据结构;而索引编号实际上是inode的标识编号,因此也称其为inode编号或者索引编号。索引编号只是文件相关信息中一项重要的内容。下一个部分将介绍inode中的其他一些属性。inode表包含一份清单,其中列出了对应文件系统的所有inode编号。当用户搜索或者访问一个文件时,UNIX系统通过inode表查找正确的inode编号。在找到inode编号之后,相关的命令才可以访问该inode,并对其进行适当的更改。
热心网友
时间:2022-03-28 15:49
查看每个inode节点的大小,可以用如下命令:sudo mpe2fs -h /dev/hda | grep "Inode size"
查看每个硬盘分区的inode总数和已经使用的数量,可以使用df命令。df -i
inode也会消耗硬盘空间,所以硬盘格式化的时候,操作系统自动将硬盘分成两个区域。一个是数据区,存放文件数据;另一个是inode区(inode table),存放inode所包含的信息。
每个inode节点的大小,一般是128字节或256字节。inode节点的总数,在格式化时就给定,一般是每1KB或每2KB就设置一个inode。假定在一块1GB的硬盘中,每个inode节点的大小为128字节,每1KB就设置一个inode,那么inode table的大小就会达到128MB,占整块硬盘的12.8%。理解inode,要从文件储存说起。文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。
操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block)。这种由多个扇区组成的"块",是文件存取的最小单位。"块"的大小,最常见的是4KB,即连续八个 sector组成一个 block。
文件数据都储存在"块"中,那么很显然,我们还必须找到一个地方储存文件的元信息,比如文件的创建者、文件的创建日期、文件的大小等等。这种储存文件元信息的区域就叫做inode,中文译名为"索引节点"。
* 文件的字节数
* 文件拥有者的User ID
* 文件的Group ID
* 文件的读、写、执行权限
* 文件的时间戳,共有三个:ctime指inode上一次变动的时间,mtime指文件内容上一次变动的时间,atime指文件上一次打开的时间。
* 链接数,即有多少文件名指向这个inode
* 文件数据block的位置
可以用stat命令,查看某个文件的inode信息:stat example.txt