Linux有缺省默认文件、文件夹权限umask。默认 777 -xxx(文件夹) 666 - xxx(文件)
11、查看当前用户umask
R(4)--W(2)--X(1)
[[email protected] ~]# umask #查看
0022
[[email protected] ~]#
[[email protected] ~]#
[[email protected] ~]# umask -S #对应umask的权限
u=rwx,g=rx,o=rx
用途
预设权限(权限掩码),当我们建立一个目录或档案时,它都会带一个默认的权限:
若使用者建立为 ‘档案‘ 则预设 ‘没有可执行 ( x ) 项目‘, 亦即只有 rw 这两个项目, 用数字表示就是666或字母
–rw-rw-rw-
若使用者建立为 ‘目录‘, 则由于 x 与是否可以进入此目录有关, 因此预设为所有权限均开放, 亦即为777 或字母
d-rwx-rwx-rwx
umask就与这个默认权限有关. umask 就是指定 ‘目前用户在建立档案或目录时候的权限默认值‘.
用法
我们可以这样查看umask默认值,
# 查看$umask # 数字形式 002 # 有的机器可能会显现4个数字,我们一般用后三个 $umask -S # 字符形式 u=rwx,g=rwx,o=rx
注意的是um:ask 的分数指的是该默认值需要减掉的权限,缺省的权限
因此,上面的002实际上是去掉了其他用户的写权限,对于档案来说也就是, 实际权限是664,即:
-rw-rw-r-
对于目录来说, 实际是773, 即:
-rwx-rwx-rx
2. 设置
umask 002
umask后面接3个数字就可以设定了. 若要长期修改umask的值, 可以把它写进/etc/profile或~/.profile或~/.bash_profile中.
例题
假设你的 umask 为 003, 请问该 umask 情况下, 建立的档案和目录权限为?
答: umask 为 003, 所以拿掉的权限为 --------w, 因此:
档案: (-rw-rw-r-) - (--------wx) = -rw-rw-r--
目录: (drwxrwxrwx) - (--------wx) = drwxrwxr--
借鉴:
http://www.cnblogs.com/ezhengnan/p/3670045.html