【发布时间】:2019-11-12 18:12:54
【问题描述】:
我正在尝试了解操作系统的一些基础知识,但我陷入了标志和权限之间。
如果open() 使用以下方式
int fd = open(path, O_CREAT | O_RDWR, 0000);
在什么条件下我们的文件会有 0000 权限,在什么条件下我们的文件会有 0666 条件?
一开始我以为如果文件已经创建,我们会以0000权限使用它,如果它没有被创建,将被创建并使用0666权限。我不确定我是否正确。
【问题讨论】:
-
不。权限参数仅在创建文件时使用。如果已经存在,则文件的权限不变,调用
open()中的模式将被忽略。
标签: c linux operating-system file-permissions file-descriptor