在第3章中讲述用open或creat创建新文件时,我们并没有说明赋予新文件的用户ID和组ID是什么。4.21节将说明mkdir函数,此时就会了解如何创建一个新目录。关于新目录的所有权规则与本节说明的新文件所有权规则相同。
新文件的用户ID设置为进程的有效用户ID。关于组ID,POSIX.1允许实现选择下列之一作为新文件的组ID。
(1)新文件的组ID可以是进程的有效组ID。
(2)新文件的组ID可以是它所在目录的组ID。
使用POSIX.1所允许的第二个选项(继承目录的组ID)使得在某个目录下创建的文件和目录都具有该目录的组ID。于是文件和目录的组所有权从该点向下传递。例如,在Linux的/var/mail目录中就使用了这种方法。
本文解释了使用open或creat创建新文件时,新文件的用户ID和组ID是如何确定的。新文件的用户ID设置为进程的有效用户ID,而组ID则取决于实现的选择:要么采用进程的有效组ID,要么继承其所在目录的组ID。
367

被折叠的 条评论
为什么被折叠?



