在Linux中,inode是什么?

简介: 在Linux中,inode是什么?

在Linux或类Unix文件系统中,inode(索引节点)是一个非常重要的数据结构,它用来存储文件或目录的元数据。inode并不包含文件名,而是记录了与文件或目录实体相关的一切重要信息,这些信息包括但不限于:

  1. 文件大小(Size):指出文件占用的数据块总数。
  2. 文件权限(Permissions):包括文件所有者、所属组以及其他用户的读、写、执行权限。
  3. 文件所有者(User ID, UID)和所属组(Group ID, GID):标识文件的所有者用户和所属用户组。
  4. 时间戳(Timestamps):包括最后一次访问时间(atime)、最后一次修改内容时间(mtime)和最后一次更改inode信息的时间(ctime)。
  5. 链接数(Link Count):记录有多少个文件名指向这个inode,支持硬链接的文件系统中,多个文件名可以共享同一个inode。
  6. 数据块指针(Block Pointers):inode包含一个或多个指针,指向文件内容所在的磁盘块地址。这些指针可以直接或间接指向文件数据块,根据文件大小的不同,可能有一部分指针是间接指针,用于存储大型文件的数据块地址。

综上所述,在文件系统初始化时,会预先分配一定数量的inode,每个inode都有一个独一无二的inode编号(inode number)。当创建新文件或目录时,文件系统会分配一个新的inode,并在其上填充上述元数据信息。虽然用户通常通过文件名来访问文件,但实际上系统内部是通过inode号码来定位和访问文件内容的。使用ls -i命令可以查看文件或目录的inode编号,这对于追踪文件系统中的文件实体非常有用,尤其是在处理文件链接或找回已删除但未被覆盖的文件时。

相关文章
|
4月前
|
存储 Linux
硬链接和软链接以及inode的简述【Linux】
硬链接和软链接以及inode的简述【Linux】
|
22天前
|
存储 监控 Linux
在Linux中,什么是 inode ?
在Linux中,什么是 inode ?
|
22天前
|
存储 Unix Linux
在Linux中,inode是什么?
在Linux中,inode是什么?
|
4月前
|
存储 固态存储 Linux
【Linux 系统】基础 IO(文件系统 & inode & 软硬链接)-- 详解
【Linux 系统】基础 IO(文件系统 & inode & 软硬链接)-- 详解
|
10月前
|
存储 安全 Linux
【看表情包学Linux】磁盘基础知识 | CHS 寻址 | 逻辑扇区 LBA | 索引节点 inode | 伪删除 inode bitmap 1→0
【看表情包学Linux】磁盘基础知识 | CHS 寻址 | 逻辑扇区 LBA | 索引节点 inode | 伪删除 inode bitmap 1→0
147 0
|
前端开发 Linux
7.1.3 Linux的EXT2文件系统(inode)
7.1.3 Linux的EXT2文件系统(inode)
101 0
|
存储 缓存 算法
【Linux】基础IO(二)--- 理解内核级和用户级缓冲区、磁盘与ext系列文件系统、inode与软硬连接(下)
【Linux】基础IO(二)--- 理解内核级和用户级缓冲区、磁盘与ext系列文件系统、inode与软硬连接(下)
172 1
|
存储 Linux 索引
Linux文件系统inode的作用
前面学习了磁盘管理中的磁盘分区,以及逻辑卷,交换分区的创建,这篇文章将介绍一下我们在分区以及格式化时候用到的ext4文件系统,本盘文章的学习内容包括了解索引(index)和块(block)的作用。
109 0
|
存储 Linux 编译器
【Linux】基础IO(二)--- 理解内核级和用户级缓冲区、磁盘与ext系列文件系统、inode与软硬连接(上)
【Linux】基础IO(二)--- 理解内核级和用户级缓冲区、磁盘与ext系列文件系统、inode与软硬连接(上)
202 0
|
存储 前端开发 Linux
为学习pnpm了解一点基础:linux的文件存储 inode
本来我想去了解一下硬连接和软连接的,但是发现简单的了解一下后,还是需要进一步的了解 Inode。所以再来学学Inode。
108 0