在Linux上使用开放系统调用创建文件时,为什么更改文件权限?

在Linux上使用开放系统调用创建文件时,为什么更改文件权限?,第1张

在Linux上使用开放系统调用创建文件时,为什么更改文件权限?

系统维护着一个称为的值

umask
;它是进程的属性,就像PID(进程ID)或EUID(有效用户ID)一样。它将设置为
022
(八进制),表示系统应从创建的文件中删除组和其他写入权限。

您可以

umask(0);
在使用前致电,
open()
以免
open()
更改您指定的模式。您当然应该这样做以证明这
umask
是问题所在。但是,通常最好让用户选择
umask
优先。如果程序不遵守我的umask设置,我会变得很固执。我发现并验证问题后,往往不会再使用它。

该外壳程序还具有一个(内置)命令

umask
,您可以使用该命令。该
022
值是明智的默认值;大多数时候,您不希望任何人都在写文件。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4999838.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-14

发表评论

登录后才能评论

评论列表(0条)

保存