linux下umask默认权限
umask(用户文件创建掩码)是一个在类 Unix 系统中用来设置默认文件和目录权限的系统调用
umask
Linux有缺省默认文件、文件夹权限umask
- 777 -xxx(文件夹)
- 666 -xxx(文件)
R(4)–W(2)–X(1)
用途
预设权限(权限掩码),当我们建立一个目录或档案时,它都会带一个默认的权限:
若使用者建立为 '档案' 则预设 '没有可执行 ( 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
设置
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--