linux下文件权限的屏蔽
linux下的umask命令设置文件权限的屏蔽, umask [-S] [权限屏蔽]所谓权限屏蔽室友4个八进制数字组成,这4个八进制数字会被用来决定新产生文件的访问权限。umask命令的设置值就是不希望新产生的文件权限被开放。一般而言系统默认新建文件的访问权限是0666,新建目录的默认权限是0777.而这个访问权限减去umask设置值就是新建文件的真正的访问权限。例如: 将umask值设为
linux下的umask命令设置文件权限的屏蔽, umask [-S] [权限屏蔽]
所谓权限屏蔽室友4个八进制数字组成,这4个八进制数字会被用来决定新产生文件的访问权限。umask命令的设置值就是不希望新产生的文件权限被开放。一般而言系统默认新建文件的访问权限是0666,新建目录的默认权限是0777.而这个访问权限减去umask设置值就是新建文件的真正的访问权限。例如: 将umask值设为0022 ,则新建文件的默认权限为0666-0022=0644(等于rw-r--r--);目录的权限为0777-0022=0755(等于rwxr-xr-x).
umask()
linux中可以在程序中调用umsk()来设置文件的访问权限,umask()函数格式如下:
#include<sys/types.h>
#include<sys/stat.h>
mode_t umask(mode_t,mask);
umask()函数会返回设置前的权限屏蔽值。
下面的程序代码在运行后会将系统的权限屏蔽改为0222,所以新建文件的默认权限改为0444,也就是-r--r--r--.
new_mask=0222;
old_mask=umask(new_mask);
更多推荐
所有评论(0)