答案1
有一个由来已久的解释,例如Wolfram Rosler 列表中的此条目,它的意思是“用户”。该条目于 2000 年提交,并将其归因于“umask”U_cmask
在进程“u
区域”中设置了一个字段。
这是一个有点可疑的解释,在原文中以问题的形式承认了这一疑问,因为“u
区域”中还有其他几个东西,所有这些东西的字段都是按照惯例命名的,并不是由系统设置的。以“u”开头的呼叫。这可能是事后二十年后的合理化。u_something
另一方面,“u”代表“user”,如今已被广泛接受,早在 2000 年就被广泛接受,尽管“ u
area”对此的解释是可疑的。自 20 世纪 80 年代末以来,有关 UNIX 的书籍将其描述umask
为“用户文件创建掩码”(尽管没有一本提及“u
区域”)。
- AT&T Unix System 5 Release 3 的印刷手册中是这样描述的。
- 1989 年的 X/Open 中是这样描述的便携指南。
- 彼得·诺顿的《1991》中是这样描述的Unix 指南。
- 西姆森·加芬克尔 (Simson Garfinkel) 和吉恩·斯帕福德 (Gene Spafford) 的 1991 年实用 UNIX 安全明确地直截了当地说
umask(UNIX 中“用户文件创建模式掩码”的简写)
问题是,名字扩展中的“user”一词在1985年之前的作品中并没有出现。我能找到的最早的是Rebecca Thomas的1985年的作品UNIX 系统用户指南,然后是umask
Andersons 1986 中的“(用户掩码)”UNIX C Shell 现场指南。
- 斯蒂芬·R·伯恩的《1983》UNIX系统拥有第 7 版 UNIX 的手册条目集合。
umask()
第 294 页上的系统调用在任何地方都不包含“用户”一词,只是将其称为“文件创建模式掩码” 。的一个根本sh
没有提到这个主题。 - 1983年Unix 分时系统:Unix 程序员手册贝尔实验室重复了伯恩的措辞(这是意料之中的):
名称 umask — 设置文件创建模式掩码
概要
umask(complmode)
描述Umask 设置在(T) 或(2)
创建文件时使用的掩码:[...]creat
mknod
- 在宇宙的 BSD 一侧,1987UNIX 程序员参考手册 (PRM):4.3 Berkeley Software Distribution,虚拟 VAX-11 版本也没有提到“用户”这个词:
名称 umask — 设置文件创建模式掩码
概要
oumask = umask(numask) int oumask, numask;
说明
Umask 将进程的文件模式创建掩码设置为numask
并返回掩码的先前值。 […] - Marc J. Rochkind 的《1985》中没有“用户”高级 UNIX 编程,只是“文件模式创建掩码”。
- 韦特集团的《1987》中也没有Unix系统V圣经(“文件创建掩码”)。
近 4 年来,人们普遍认为“u”代表“user”;但很难追溯到这个名字最初的创造,与“u
区域”的联系是在二十年后才出现的,“用户”这个词似乎是在第七版 UNIX 和 AT&T Unix 系统之间的某个时刻出现的5 Release 3,这个词可能是由编写正式 doco 的人事后引入的,作为“u”的看似合理的扩展。
进一步阅读
答案2
中没有任何内容man umask
,但在 bash 中help umask
说Sets the user file-creation mask to MODE.
虽然这是不正确的:它将进程的文件创建掩码设置为 MODE。这表明u
可能代表用户。这是 1991 年我被告知的。
答案3
调用man umask
(在 Solaris 上)给出了正确的答案:
...
sh
The user file-creation mode mask is set to ooo. The three
octal digits refer to read/write/execute permissions for
owner, group, and other, respectively (see chmod(1),
chmod(2), and umask(2)). The value of each specified digit
...
因此,在某些情况下,拥有真正的 UNIX 以获得更好的手册页非常重要。