linux 中 类/tmp目录权限(粘滞位权限)

 

粘滞位权限确保文件只能被文件的所有者(或者root用户)删除而不能被其他用户删除。linux系统中根目录下/tmp/默认设置了粘滞位权限。

001、设置粘滞位权限之前

[root@pc1 /]# pwd                     ## 当前目录
/
[root@pc1 /]# whoami                  ## 当前用户
root
[root@pc1 /]# mkdir test_dir          ## 创建测试目录
[root@pc1 /]# chmod 777 test_dir/     ## 权限开满
[root@pc1 /]# ls                      ## 列出所有内容
bin   dev  home  lib64  mnt  proc  run   srv  test_dir  usr
boot  etc  lib   media  opt  root  sbin  sys  tmp       var

 

002、测试

a、user01在 /test_dir 目录中创建文件

[user01@pc1 ~]$ ls
[user01@pc1 ~]$ whoami
user01
[user01@pc1 ~]$ cd /test_dir/
[user01@pc1 test_dir]$ ls
[user01@pc1 test_dir]$ echo "hello world" > user01.txt
[user01@pc1 test_dir]$ ls
user01.txt

 

b、user02进入/test_dir并尝试删除 user01.txt文件

[user02@pc1 ~]$ ls
[user02@pc1 ~]$ whoami                ## 当前用户
user02
[user02@pc1 ~]$ cd /test_dir/         ## 进入指定目录
[user02@pc1 test_dir]$ ls
user01.txt
[user02@pc1 test_dir]$ rm user01.txt   ## 删除user01创建的文件 user01.txt,可以删除,这说明用户之间可以删除文件,只要对上级目录有写的权限
rm: remove write-protected regular file ‘user01.txt’? y
[user02@pc1 test_dir]$ ls

 。

 

003、对/test_dir设置粘滞位权限

[root@pc1 /]# ls
bin   dev  home  lib64  mnt  proc  run   srv  test_dir  usr
boot  etc  lib   media  opt  root  sbin  sys  tmp       var
[root@pc1 /]# ls -ld test_dir/                          ## 列出test_dir目录此时的权限
drwxrwxrwx. 2 root root 6 Dec 30 19:56 test_dir/
[root@pc1 /]# whoami                                    ## 列出当前用户
root
[root@pc1 /]# chmod -R o+t test_dir/                    ## 对目录test_dir设置粘滞位权限
[root@pc1 /]# ls -ld test_dir/                          ## 查看此时的test_dir目录的权限
drwxrwxrwt. 2 root root 6 Dec 30 19:56 test_dir/

 

004、测试效果

a、uer01在/test_dir目录中创建文件

[user01@pc1 test_dir]$ ls
[user01@pc1 test_dir]$ whoami              ## 当前用户
user01
[user01@pc1 test_dir]$ pwd                 ## 当前目录
/test_dir
[user01@pc1 test_dir]$ echo "hello world" > user01.txt      ## 创建文件
[user01@pc1 test_dir]$ ls
user01.txt

 

b、user02进入/test_dir目录,尝试删除user01创建的文件 user01.txt

[user02@pc1 test_dir]$ whoami            ## 当前用户
user02
[user02@pc1 test_dir]$ pwd               ## 当前目录
/test_dir
[user02@pc1 test_dir]$ ls
user01.txt
[user02@pc1 test_dir]$ rm -f user01.txt   ## 删除文件,可见已经无法删除,说明粘滞位权限已经发挥作用
rm: cannot remove ‘user01.txt’: Operation not permitted

 。

 

posted @ 2023-12-30 17:42  小鲨鱼2018  阅读(176)  评论(0编辑  收藏  举报