我正在linux上使用open()创建一个文件
mode_t perms = S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH;
int i = open(settingsPath.c_str(), O_CREAT | O_RDWR, perms);
如您所见,我正在为每个人指定读/写权限。
但是当我检查终端中的权限时,它会说
-rw-rw-r-- 1 tstadler tstadler 0 Apr 17 10:54 settings.json
为什么我不能给每个人写权限?
最佳答案
似乎当前进程“umask
屏蔽了对每个人的写权限。
见man 2 umask
关于c++ - 无法授予其他人通过open()创建的文件对我的写访问权,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23128698/