linux高级权限suid|sgid|sticky

文件权限管理之:高级权限

1.分析以下问题:
[root@w_hat ~]# ll /root/file1.txt
-rw-r–r–. 1 root root 0 Aug 4 16:13 /root/file1.txt
[sfj1@w_hat ~]$ cat /root/file1.txt
cat: /root/file1.txt: Permission denied

可以看到对于file1文件,其他人对于其有读取的权限,可是切换到其他人用户时,为什么会出现权限不够的问题呢?

大家都知道,passwd命令对于所有用户都是可以使用的,那么我们来看一下passwd和cat命令有什么区别呢?

这里写图片描述

大家可以明显看到,passwd命令文件是红色的,并且在其权限位置,出现了我们从未看到过的s权限。这又是什么?

这就是高级权限

高级权限的类型

suid 4
sgid 2
sticky 1

其实呢,对于设置权限来说,我们之前提到的777是不完全的,他真正的权限应该是0777

而第一位的0就是这里所说的高级权限

==示例1==

suid权限【普通用户可以通过suid提升一定的权力】
[root@w_hat ~]# chmod u+s /usr/bin/cat
[root@w_hat ~]# ll /root/file1.txt
-rw-r–r–. 1 root root 0 Aug 4 16:13 /root/file1.txt
[sfj1@w_hat ~]$ cat /root/file1.txt

可以发现,起初我们发现的问题解决了,可以通过cat命令看到/root/file1.txt的内容

这就是suid的作用:普通用户使用具有suid权限的命令,会获得此权限所有者的身份,换句话说等同于所有者在运行这条命令

==示例2==

sgid权限【新建文件继承目录的属组—-sgid权限只针对目录】
[root@w_hat ~]# mkdir /home/hr
[root@w_hat ~]# chgrp hr /home/hr/
[root@w_hat ~]# chmod g+s /home/hr
[root@w_hat ~]# ll -d /home/hr/
drwxr-sr-x. 2 root hr 4096 Dec 5 16:03 /home/hr/

[root@w_hat ~]# touch /home/hr/file9
[root@w_hat ~]# ll /home/hr/
-rw-r–r–. 1 root hr 0 Dec 5 16:03 file9

可以发现新建的文件继承了目录的属组,而不是root组

==示例3==

sticky权限【用户只能删除自己的文件—–该权限只针对目录】
[root@w_hat ~]# mkdir /home/dir1
[root@w_hat ~]# chmod 777 /home/dir1

user1在/home/dir1建立文件, user2尝试删除!

[root@w_hat ~]# chmod o+t /home/dir1
[root@w_hat ~]# ll -d /home/dir1
rwxrwxrwt 2 root root 4096 09-02 02:26 /home/dir1

谁可以删除:
root
文件的所有者
目录的所有者

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值