【Lniux】目录的权限,默认权限,粘滞位详细讲解

大家好,今天详细讲解一些关于目录权限的细节

很多细节都是通过问答方式,希望大家可以先自己思考一下答案然后再听我的分析

 欢迎指正错误,我们共同成长

 

目录

1.目录的权限

2.默认权限

3.粘滞位 


 

1.目录的权限

如果我们要进图一个目录只需要一个权限是谁?x权限(可执行权限 )

对于目录来讲: 

r代表:在没有r权限的目录下,我们无法查看当前目录下的文件名+文件属性

w代表:在没有w权限的目录下,我们无法直接在该目录下创建新的文件

2.默认权限

为什么我们创建的普通文件(不包括可执行,可执行一定有x)的默认权限是从66

4开始的,为什么目录的默认权限是775(不同的操作系统的默认权限可能是不一样的)

其实一共分为三个权限:默认权限,起始权限,最终权限

普通文件的起始权限是666(没有x)

目录文件的起始权限是777(rwx)

系统为了更好的控制文件权限,有“权限掩码”的概念,也就是umask

首先我们思考一个问题,现在有八个比特位1011 1010 想要提取后4个比特位怎么办?

可以1011 1010 & 0000 1111 =0000 1010

其实叫做提取后四位并不是很严谨,可以说是清空其余位,只保留后四位

那么0000 1111就可以叫做掩码

权限掩码:在起始权限中去掉在umask中出现的权限,不能影响其他权限的使用

最终权限=起始权限 &(~uamsk)   这个~是按位异或,但是在这里打不出来...

umask是一个四位数比如0002 或者 0007,但是他显示出来 我们在读的时候忽略第一位数字,第一位数字是有意义的 但是现在先不进行说明

怎么查看umask ,直接敲出指令 umask 就能看到,如果我现在想修改直接 umask 007 就把掩码改成了0007

编程语言中常常以数字0开头表示这个一个八位数

3.粘滞位

背景:在使用Linux可能会有共享目录,被所有普通用户共享,用来保存普通用户产生的临时数据

作为一个普通用户,正常情况下我的所有数据都保存在我的家目录下,家目录属于我,只有我有rwx其他人什么权限都没有,别人没有x就不能看看我目录里面有什么

准备:共享目录通常是root提供的,文件被所有人共享的时候受权限约束,但是拦不住别人删我的文件

为了让大家共享文件并且不能随便删除别人的文件,引出粘滞位的概念

粘滞位只能加给目录,当然是共享目录添加

怎么加:chmod +t 目录名

 比如最后目录的权限变成了d rwx rwx rwt 这个最后的t就是加的粘滞位

设置完粘滞位之后只三种人能删除目录里面的文件:文件拥有者,root,目录的拥有者

因为他们都具有w权限


感谢

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值