gpt4 book ai didi

c - umask() 什么时候有用?

转载 作者:太空狗 更新时间:2023-10-29 17:01:38 24 4
gpt4 key购买 nike

umask(0);

fd = open("/dev/null", O_RDWR);

这是man 2 umask:

umask() sets the calling process’s file mode creation mask (umask) to mask & 0777.

但这对我来说没有意义,因为当我们调用 open 时,我们还会提供一个模式参数。

那么 umask 有什么意义呢?

最佳答案

umask 应用于文件系统操作中使用的所有模式。来自手册 open(2):

The permissions of the created file are (mode & ~umask)

因此,只需调用一次 umask,您就可以影响所有创建文件的模式。

这通常在程序希望用户允许否决其创建的文件/目录的默认授权时使用。多疑的用户(或 root)可以将 umask 设置为 0077,这意味着即使您在 open(2) 中指定了 0777,也只有当前用户将有权访问。

关于c - umask() 什么时候有用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6198623/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com