由于文件系统失败的具体限制取决于操作系统,因此我们有一个测试来验证我们可以在 ACL 上获取最多 500 个条目,并且 4000 个条目会失败(在该级别的所有 UNIX 平台上都应该失败) ,这个测试已经在不同的架构和操作系统版本上工作了很长时间。
最近在运行测试时:
cat /etc/os-release
NAME="SLES"
VERSION="12-SP1"
VERSION_ID="12.1"
PRETTY_NAME="SUSE Linux Enterprise Server 12 SP1"
ID="sles"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:suse:sles:12:sp1"
和文件系统类型:
cat /etc/fstab
UUID=61e7-43bb-8cdc-80a3718e27b9 / xfs defaults 1 1
它通过了并且能够将 ACL 设置为 4000 并且没有抱怨,所以我想知道操作系统是否允许这个文件系统有这么多的 acl 以及限制是什么?
答案1
Xfs 有一个ACL表项长期限制25条但内核 3.11 中取消了该限制。对于 xfs v5 或更高版本,现在的限制是扩展属性列表中适合的数量(64kB),即在每个条目 12 字节如果没有其他扩展属性(例如没有 SELinux 上下文),则表示 5460 个条目。
我认为某些 Linux 文件系统可以将大多数 ACL 条目压缩到 4 个字节,这将允许略低于 16384 个条目。
我不明白为什么你要测试 ACL 条目的最大数量。这不是你可以指望的。在任何时候,这个数量都可能变得实际上无限。