文件的默认权限UMASK-阿里云开发者社区

开发者社区> 开发与运维> 正文

文件的默认权限UMASK

简介: 当进入Linux系统后新创建的文件或者文件夹总是会有一个默认的权限,那么这个权限是如何设置的呢? umask就是设置文件与目录的默认权限 1. 查看umask 直接查看, [root@centos6 ~]# umask 0022 ...

当进入Linux系统后新创建的文件或者文件夹总是会有一个默认的权限,那么这个权限是如何设置的呢?
umask就是设置文件与目录的默认权限

1. 查看umask

  • 直接查看,

    [root@centos6 ~]# umask 
    0022                                   
  • 以模式方式显示

    [root@centos6 app]# umask -S
    u=rwx,g=rx,o=rx
  • 输出可被调用,重定向

    [root@centos6 app]# umask -p
    umask 0022

    0022表示的权限是rwxr-xr-x,第一位的0是特殊权限,这里先不做考虑。

2. 文件与目录权限

  • 文件:新文件对于所有用户来说具有执行权限是很可怕的事情。所以对于文件来说默认最大权限就是666 -rw-rw-rw-
  • 目录:对于目录来说,x权限意味着是否能进入到目录中。如果一个新建的目录无x权限就进入不了这个目录。那目录就没有存在的意义。所以目录的最大权限是777 drwxrwxrwx

3. 默认权限的计算

  • 文件:
    最大权限减去umask码等于默认权限,结果为奇数,则奇数位+1
  • 结果为偶数
    666-022=644,转换为权限 rw- r- - r - -
  • 如果mask=135
    666-135=431,奇数+1为442,转换为权限r- -r- - - -x

  • 目录:
    最大权限减去umask码等于默认权限
  • 777-022=755 转换为权限 rwxr-xr-x

4. 查看权限

创建文件与目录,查看其权限。

[root@centos6 app]# mkdir dir
[root@centos6 app]# touch file
[root@centos6 app]# ls -al
-rw-r--r--.  1 root root  292 Jul 24 21:05 file
drwxr-xr-x.  2 root root 4096 Jul 24 21:05 dir

5. umask的设置方法

  • 直接设置,只是临时生效,用户注销后恢复

    [root@centos6 app]# umask 0002
  • 对指定用户永久生效

    [root@centos6 app]# vim ~/.bashrc 
    umask 0002
  • 对所有用户永久生效

    [root@centos6 app]# vim  /etc/.bashrc
    umask 0002

6. 总结

  • 一般root的umask为022
  • 一般普通用户的umask为002
  • umask越小权限越大

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章