Linux 文件系统的基石:索引节点(inode)详解
在类 Unix 文件系统(如 ext4、XFS)中,inode(索引节点)是用于描述文件系统对象(如文件或目录)的数据结构。 每个 inode 存储了除文件名和实际数据内容以外的所有元信息。
文件名仅用于用户识别,而操作系统通过 inode 编号来唯一标识和访问文件。
注意:文件名不存储在 inode 中!
# 查看文件的 inode 编号
ls -i filename
# 查看文件详细 inode 信息
stat filename
# 查看文件系统 inode 使用情况
df -i
示例:创建两个硬链接,观察 inode 号是否相同。
echo "Hello inode" > file1.txt
ln file1.txt file2.txt
ls -i file1.txt file2.txt # 输出相同的 inode 号
硬链接:多个文件名指向同一个 inode,删除一个不影响其他链接,直到链接计数归零才释放数据。
软链接(符号链接):是一个独立的文件,内容是指向目标路径的字符串,拥有自己的 inode。
输入一个常见文件名,查看其“模拟”的 inode 信息: