我正在写有关 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>
。