前文再续,书接上回 :
s 和 t 权限都有大小写之分,大写说明没有 x 权限,小写说明有 x 权限。
t 和 T:
tmp 目录的权限是 drwxrwxrwt 这意味着其他人是有 x 执行权限。
红色下划线:chmod o-x /tmp/ 把 x 减去,再次查看目录详情,它变成了 drwxrwxrwT,小 t 变大 T。这意味着其他人是没有 x 执行权限。对于目录没有了 x 权限,最直观的表现在于不能进入该目录。
黄色标注:切换到普通用户 user1,user1 用户的权限是其他人。由于没有 x 权限,user1 通过 ll 查看 tmp 目录详情只能看到有什么文件,但是不能看到详细信息,而且附带了一堆没有权限,不能访问的提示。
蓝色下划线:user1 通过 cd 进入 tmp 目录,没有 x 权限自然也不可能访问到目录。
红色标注:root 用户 chmod o+x /tmp/ 把 tmp 目录其他人的 x 权限加上。由 大T 变成 小t。
黄色标注:切换 user1 普通用户,可以正常的查看 tmp 目录下详细内容 并且 能够进入 tmp 目录。
由此可见,没有 x 权限,赋予 t 权限是没有意义的。只有建立在 x 权限为前提的 t 权限才生效。
s 和 S:
红色下划线:新建一个 test.txt 文件,默认权限-rw-r--r--。
黄色下划线:拥有者没有 x 权限的前提下 chmod u+s test.txt, s 权限为大 S。
绿色下划线:chmod u+x test.txt 为拥有者添加 x 权限,大 S 变小 s。
小s 和 大S 同理,拥有者和所属组有 x 权限的时候赋予 s 权限才会生效,不然会变大 S 。
数字法修改特殊权限:
SUID=4 SGID=2 SBIT=1
从 test.txt 的权限来看,将要把它改成 777 的权限。拥有者 rwx、所属组 rwx、其他人 rwx。如需要设置特殊权限,可以把特殊权限写在 777 的前面。
4777:拥有者 s 权限,文件名红色高光显示
2777:所属组 s 权限,文件名黄色高光显示
1777:其他人 t 权限,文件名绿色高光显示
6777:拥有者 和 所属组都是 s 权限,文件红色高光显现。
3777:所属组 s 和其他人 t 权限。文件黄色高光显示。
5777:拥有者 s 和 其他人 t 权限,文件红色高光显示。
7777:拥有者 s 、所属组 s 和 其他人 t 权限,文件红色高光显示。
网友评论