![“传统Unix文件系统权限”的标准是什么?](https://linux22.com/image/215648/%E2%80%9C%E4%BC%A0%E7%BB%9FUnix%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E6%9D%83%E9%99%90%E2%80%9D%E7%9A%84%E6%A0%87%E5%87%86%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F.png)
我正在写有关 Unix 文件权限的文章 - 即用户/组/世界、读(4)/写(2)/执行(1)chmod()
等。我想向读者指出一个标准(例如 Markdown 具有 CommonMark 标准) ,国家/地区代码具有 ISO 3166-1 标准)。但我读到的所有地方都简单地将其称为“传统 Unix 文件系统权限”。
Unix 中文件权限的标准是什么?
这个问题类似但更具体Linux系统中文件权限由什么负责?,这有点混乱?
答案1
太长了;博士UNIX 文件系统权限的标准定义在IEEE 标准 1003.1-2017(又名 POSIX.1-2017)标准,特别是在<sys/stat.h>
页。
从 的手册页来看chmod
,它指出:
标准
chmod 实用程序预计与 IEEE Std 1003.2 (“POSIX.2”) 兼容,但该标准中未包含的永久符号“t”除外。
如果您查找以下部分IEEE 标准 1003.2处理文件模式位时,它引用了另一个标准 - XBD 标准。
请参阅 XBD 规范第 2 章术语表中的文件模式位)
XBD 是一个“卷”IEEE 标准 1003.1-2017(又名 POSIX.1-2017)标准。并从第 3 章(定义)第 169 节(文件模式位),它指出:
文件模式位详细定义在
<sys/stat.h>
。