linux - 为什么 inode 编号因计算机而异

标签 linux unix filesystems inode

<分区>

我在其中创建了一个文件夹和文件(在 linux 中),然后我使用以下命令获取每个文件和目录的 inode 编号:

ls -i -R

但是当我使用另一台计算机执行相同的任务时,每个 inode 得到不同的数字,我知道这是合理的,但每个人都可以解释一下原因吗?我的意思是为什么不同计算机的结果不同?

最佳答案

inode (or index node)指针/标识符文件系统的内部数据结构中使用。

因此,不同的计算机有不同的文件系统 - 谈论数据,而不是类型/实现! - 因此资源具有不同的 inode 值。 inode 是内部标识符,而路径外部标识符。

打个比方,想象一下现代操作系统中的 C 程序 malloc 一个新对象。 malloc 返回进程内 的唯一指针。然而,许多进程在引用完全不相关的对象时可以共享相同的指针值(当被视为整数地址时)。

关于linux - 为什么 inode 编号因计算机而异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20204760/

相关文章:

C++ : Opening a file in non exclusive mode

filesystems - Lua: %UserProfile% 访问权限

regex - 重命名 linux 目录中文件的最佳过程

c++ - 在 C++ 中显示图像及其元数据

LInux:它如何处理从文件中间删除内容

debugging - dbxtool : debug executable and run with arguments

python - 通过 SSH 命令从 Mac OS X 计算机启动远程脚本

c - 使终端输入在一定数量的字符后发送

javascript - 不同的操作系统对显示网页有多大影响?

客户端/IP 和设备监视器