高级权限的类型
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
文件的所有者
目录的所有者