概述
chmod、fchmod和fchmodat这3个函数使我们可以更改现有文件的访问权限。
#include <sys/stat.h> int chmod(const char *pathname, mode_t mode); int fchmod(int fd, mode_t mode); int fchmodat(int fd, const char *pathname, mode_t mode, int flag); |
---|
为了改变一个文件的权限位,进程的有效用户ID必须等于文件的所有者ID,或者进程必须具有超级用户权限。
mode | 说明 |
---|---|
S_ISUID S_ISGID S_ISVTX | 执行时设置用户ID 执行时设置组ID 保存正文 |
S_IRWXU S_IRUSR S_IWUSR S_IXUSR | 用户读、写和执行 用户读 用户写 用户执行 |
S_IRWXG S_IRGRP S_IWGRP S_IXGRP | 组读、写和执行 组写 组读 组执行 |
S_IRWXO S_IROTH S_IWOTH S_IXOTH | 其他读、写和执行 其他读 其他写 其他执行 |
chmod(1)命令用于修改这九个权限位,该命令允许我们用u表示用户(所有者),用g表示组,用o表示其他。
//stat.h
#define S_ISUID 0004000
#define S_ISGID 0002000
#define S_ISVTX 0001000
#define S_IRWXU 00700
#define S_IRUSR 00400
#define S_IWUSR 00200
#define S_IXUSR 00100
#define S_IRWXG 00070
#define S_IRGRP 00040
#define S_IWGRP 00020
#define S_IXGRP 00010
#define S_IRWXO 00007
#define S_IROTH 00004
#define S_IWOTH 00002
#define S_IXOTH 00001
最后
以上就是玩命香烟为你收集整理的函数chmod、fchmod和fchmodat(UNIX函数高级编程笔记)的全部内容,希望文章能够帮你解决函数chmod、fchmod和fchmodat(UNIX函数高级编程笔记)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复