每个 inode 都包含与其链接的目录项数的计数。fsck 命令通过从根 (/) 目录开始检查整个目录结构并计算每个 inode 的实际链接计数,验证每个 inode 的链接计数。
存储在 inode 中的链接计数和由 fsck 命令确定的实际链接计数之间的差异可能是以下三种类型之一:
存储的计数不为 0,而实际计数为 0。
如果 inode 的目录项不存在,则可能出现此情况。在这种情况下,fsck 命令会将已断开的文件放置在 lost+found 目录中。
存储的计数不为 0 且实际计数不为 0。但是,这两个计数不相等。
如果已添加或删除目录项,但尚未更新 inode,则可能会出现此情况。在这种情况下,fsck 命令会将存储的链接计数替换为实际的链接计数。
存储的计数为 0,而实际计数不为 0。
在这种情况下,fsck 命令会将 inode 的链接计数更改为实际计数。