Linux权限概述

一、权限概述

1.权限的基本概念

2.为什么要设置权限

3.linux用户的身份类别

4.user文件的拥有者

5.group文件所属组内用户

6.other其他用户

7.特殊用户root

二、普通权限管理

1.ls -l查看文件权限

2.文件类型以及权限解析

3.文件或文件夹的权限设置

4.通过数字给文件或文件夹进行权限设置

三、文件拥有着以及文件所属组设置

1.什么是属主与属组

文件拥有者:属主(所有者)

文件所属组:属组(所属组)

2.文件拥有者与所属组的查看

属主:所属的用户,文档的所有者,一般是一个账户

属组:所属的用户组,一般是一个组

ls -l 

3.文件拥有者所属设置

基本语法:chown ch=change,own=owner

#chown [选项] 文件拥有者名称 : 文件所属组名称 文件名称
#chown [选项] 文件拥有者名称 . 文件所属组名称 文件名称
选项说明:
-R:代表递归修改,主要针对文件夹

4.文件所属组设置

基本语法:chgrp ch=change grp=group

#chgrp [选项] 新文件所属组名称 文件名称
选项说明:
-R:代表递归修改,主要针对文件夹

四、特殊权限

1.特殊权限suid

suid 属性只能运行在可执行文件上,含义是开放文件所有者的权限给其他用户,当普通用户执行该文件时,会拥有该执行文件所有者(root 用户权限)的权限

仅仅限于可执行文件,二进制文件,比如系统下/usr/bin的命令 如:/usr/bin/ls、/usr/bin/rm

suid特殊权限只要用户设有suid的文件

注意:

只针对二进制命令设置,不能再shell脚本上

用户权限再x位置处,如果有则为s,无则为S,表示该命令存在suid权限

取消suid权限

#chmod g-s /tmp/dir_sgid

2.特殊权限sgid

SGID 属性可运用文件或者目录,运用在文件的含义是开放文件所属组的权限给其他用户,当用户执行该文件时,会拥有该执行文件所属组用户的权限

设置文件夹的sgid后,在这个目录下创建的文件,文件夹都会继承该目录的所属组。

对二进制文件,若g具有x权限,并设置了sgid权限,其他用户可以获得属组的权限去执行二进制文件

取消sgid权限

#chmod g-s /tmp/dir_sgid

3.特殊权限sticky(粘贴位)

sticky 权限只能用于目录上,限制普通用户在此目录下只能删除自己的文件,不能删除其他用户创建的文件。

sticky权限 防止被别人误删除的作用!

取消sticky

#chmod o-t /tmp/dir_sticky

4.通过数字修改文件的特殊权限

特殊权限数字表示方法

suid 4

sgid 2

sticky 1

例:
# chmod 4755 /usr/bin/cat 或 chmod u+s /usr/bin/cat
# chmod 2777 /tmp/linux 或 chmod g+s /tmp/linux
# chmod 1777 /tmp/dir_sticky 或 chmod o+t /tmp/dir_sticky
# chmod 7777 文件名 表示: 对文件设置 u+s,g+s,o+t

五、ACL访问控制列表

1.使用场景

基础权限中,用户对文件只有三种身份,就是属主、属组和其他人

每个用户都有读、写和执行三种权限。实际工作中三种身份不够用!

给用另外一种身份,需要单独使用ACl权限给他赋予单独的权限!

2.查看ac权限

#getfacl 文件或目录名称

3.设置文件的ACL权限

语法:

#setfacl 【选项】文件或目录名称

选项说明:

选项作用
-m修改acl策略
-x去掉某个用户或某个组的权限
-b删除所有acl策略
-R递归,主要针对文件夹
-d应用到默认访问控制列表的操作(继承效果)

 从上可以看出来user01和user02设置了acl权限后两个用户对dir_acl目录就有了第四种身份,不受ugo权限控制

给用户设置group的ACL权限

移除单个用户ACL权限

# setfacl -x u:user01 /tmp/dir_acl/

# getfacl /tmp/dir_acl/

移除全部ACL权限

# setfacl -b /tmp/dir_acl/

# getfacl /tmp/dir_acl/
移除目下所有文件的 ACL 权限
# setfacl -R -b /tmp/dir_acl/
# getfacl /tmp/dir_acl/
# getfacl /tmp/dir_acl/test/

六、Umask

1.什么是umask

代表创建文件时的默认权限

root创建文件默认权限是

文件:644 文件夹:755

普通用户创建默认权限是

文件:664 文件夹:775

2.查看usmask值

#umak

3.修改umask

  • 临时修改

  • 永久修改

#vim ~/.bashrc

在文档末尾添加umask 022 即可

保存并退出

su 切换用户生效

4.umask码作用

umask码使得用户创建目录和权限时,拥有默认的权限

创建文件的默认值

文件权限= 初始权限(666) - umask

创建目录的权限默认值

初始权限(777) ===> 转换成 字母 r w x  r w x  r w x
umask 权限如:022 ===> 转换成 字母 - - -  - w -  - w -

七、隐藏权限

文件的隐藏权限,默认看不到的权限(对管理员也生效)

1.添加隐藏权限

基本语法

#chattr +a 文件名

#chattt +i 文件名

选项:

a 限制用户只能追加内容,不能删除文件,剪切文件

i 限制用户只能查看文件内容,不能删除,剪切,追加,修改文件

2.查看隐藏权限

基本语法:

#lsattr 文件名

3.删除隐藏权限

#chattr -a a.txt

#chattr -i b.txt

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值