权限的概念
限制人的,访问的对象天然可能没有这种“属性”权限:一件事情是否允许被谁“做”。
权限 = 人 + 事物属性
Linux
上的用户分类
root
,超级管理员,几乎可以干任何事情(1个)- 普通用户(多个)
普通用户和超级用户的切换:
普通—>超级
su
命令,然后输入密码,只是单纯的进行身份切换su -
让我们的root
重新登录超级—>普通 ·
exit
sudo 指令
:对单条指令进行提权角色划分:
- 文件拥有者
- 文件所属组
用来管理文件权限的一组人
- 文件的
other
other
并不记录
Linux
的文件属性
可以有的属性是读、写、执行
文件类型和文件权限:
-
:普通文件,文本,可执行,归档文件等
d
:目录
b
:块设备,block
,磁盘
c
:字符设备,键盘或者显示器
p
:管道文件
s
:网络socket
文件
l
:链接文件未来我们如何看待后缀呢?
- 想用就用可以给人看
- 将后缀看成文件名的一部分
Linux
权限操作
如何操作权限?
chmod u+权限名 文件名
:加上相应的权限
chmod u-权限名 文件名
:去掉相应的权限
chmod a+权限名 文件名
:给所有人加上相应的权限更改权限的8进制方案:
一个位置,要么可以有相应的权限,要么是
-
,有权限代表1, 没有权限代表0示例:
chmod 000 文件名
sudo chown 用户名 文件名
:将文件的拥有者更改有权限和没有权限的区别?
有了读、写、执行权限之后才可以进行相应的操作
file 名字
:辨识文件类型
目录权限
如果要进入一个目录,需要什么权限?
只需要一个x
(可执行)权限对于目录来讲,
r
代表什么意思?在没有
r
权限的目录下,我们无法查看当前目录下的:文件名 + 文件属性对于目录来讲,
w
代表什么意思?在没有
w
权限的目录下,我们无法在改目录下直接创建新文件
默认权限
为什么我们创建的普通文件(不包括可执行程序),为什么默认权限是从664开始的,为什么目录的默认权限是从775开始的?
系统为了更好的控制文件权限,系统会有默认的权限掩码的概念
权限掩码:在起始权限中,去掉在
umask
中出现的权限,不能影响其他任何权限最终权限 = 起始权限 & (
~umask
)
粘滞位
背景:在使用
Linux
的时候,未来可能会有一些共享目录,被所有的普通用户共享,用来保存普通用户产生地临时数据准备:共享的目录通常都是
root
提供的文件被所有人共享的时候, 受权限约束,但是拦不住别人删文件。
为了让大家共享文件,且不让其他人随便删除别人的文件,提出了-- 粘滞位(只能给目录添加,共享目录添加)
sudo chmod +t 目录名
:给目录加粘滞位设定了粘滞位会让别人无法删除我的文件(应该的)