介绍了在创建文件时可以设置S_ISVTX,那么这个S_ISVTX 是做什么的呢?
S_ISVTX 的作用是多用于保护目录下的文件或子目录,如果一个目录被设置了 S_ISVTX,那么想要删除该目录下的文件或子目录,用户必须满足以下条件之一:
1.root用户
2.目录的所有者
3.文件的所有者
通过以下方式可以设置或取消S_ISVTX
设置:chmod +t folder
取消: chmod -t folder
使用举例:
1.通过用户test1创建一个目录/home/test1/aaa,并赋予aaa所有权限
drwxrwxrwx 2 test1 test1 4096 3月 17 20:44 aaa
2.在目录aaa下创建一个文件bbb,并赋予bbb所有权限
-rwxrwxrwx 1 test1 test1 0 3月 17 20:46 bbb
3.通过用户test2,此时是可以删除
4.设置目录aaa的S_ISVTX
chmod +t aaa
drwxrwxrwt 2 test1 test1 40