Mac*_*tka 27 filesystems hard-link
一个文件的硬链接数量有限制吗?是否在任何地方指定?Linux 的安全限制是什么?那么其他 POSIX 系统呢?
Gil*_*il' 19
Posix 要求操作系统理解硬链接的概念,但不要求硬链接实际上可以在任何特定情况下使用。您可以通过调用. 该下限()是8,不过这是相当无意义反正可以报告许多其他错误(拒绝授权,磁盘已满,...)。pathconf(filename, _PC_LINK_MAX)_POSIX_LINK_MAXlink()
该stat结构将链接计数存储在 type 字段中nlink_t,因此该字段的类型为您的系统提供了上限。但是很有可能您永远无法达到那么远:nlink_t在许多文件系统中通常有 32 位但只有 16 位(Linux 源代码中的快速 grep 显示 ext[234]、NTFS、UFS 和XFS 在内核数据结构中使用 16 位链接计数)。
Ric*_*chm 11
查看 linux 内核源代码 (*include/linux/ext3_fs.h*) 中的 ext3 inode 结构磁盘格式,其中列出链接数为 16 位数字
struct ext3_inode {
... snip ...
__le16 i_links_count; /* Links count */
}
Run Code Online (Sandbox Code Playgroud)
我猜这意味着 ext3 文件系统最多可以有 65535 个链接。
我还没有检查其他文件系统的值。