关于Linux中的权限与umask值的计算

当然我之前是这样子计算的 777 - 002 =775 他不也一样嘛

后面遇到umask 值为033 的时候  777- 033 =733 权限为 d rwx -wx -wx 

当创建目录的时候权限却为  744   d rwx r-- r--

遇到umask 值为033 的时候  666- 033 =633 权限为 - rw- -wx -wx 

当创建文件的时候权限却为 644    - rw- r-- r--

直接傻眼了

在/etc/profile中可以发现有个脚本

他的意思是 如果 uid 大于199 并且 当前用户所属的组名和当前用户的用户名相同时,则默认权限与umask值002 进行与运算 ;否则 默认权限与 umask 022 值进行与运算.

先弄清楚文件的默认权限和 目录的默认权限,先把umask 值临时设置为000,然后进行创建文件 和目录,查看默认的权限是什么

 这里可以看见 默认的文件权限为666 默认目录权限为777

使用root用户登入并创建文件和目录 进行查看

 root用户的uid为0 满足不了uid -gt 199条件 则默认权限与umask 022值进行与运算得出 文件权限为 644 目录权限为755.

再使用普通用户登入并创建文件和目录 进行查看

普通用户的uid一般是1000开始往上的 则满足 uid -gt 199条件 也满足所属组名和当前用户的用户名,则默认权限与umask 002进行与运算 得出 文件权限为 664 目录权限为775

那是怎么来计算的呢

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值