我是靠谱客的博主 昏睡大地,最近开发中收集的这篇文章主要介绍Linux下设置权限让用户只删除自己的文件的方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

之前我们知道如何针对用户和用户组来设置文件权限。通常是用三个八进制来设置权限的,这里我要说的是,其实是由四个八进制表示的。其中第一个八进制我们通常是忽略的。第二个到第四个是对应于SUID,SGID,sticky-bit。

SUID:设置了SUID 位的文件被执行时,该文件将以所有者的身份运行,也就是说无论谁来执行这个文件,他都有文件所有者的特权。如果所有者是 root 的话,那么执行人就有超级用户的特权了

SGID: 设置了SUID 位的文件被执行时,该文件将以具有所属组的特权

sticky-bit: sticky 位要求操作系统既是在可执行程序退出后,仍要在内存中保留该程序的映象。这样做是为了节省大型程序的启动时间。但是会占用系统资源。该位可以理解为防删除位. 设置sticky bit位后,就算用户对目录具有写权限,但也只能添加文件而不能删除文件。

SUID和SGID可以对文件的权限进行设置,比如rwx(可读可写可执行)

我们引入了chmod来修改文件权限,举例如下:

当我们要修改成user为可写,group为可写时,命令如下:

chmod u+w,g+w myfife

那么操作这些标志的权限是什么呢。和文件权限是一样的,都是用chmod来修改权限的。

chmod u+s myfife:为用户设置s权限,具有文件所有者的权限

chmod g+s Code:为用户组设置s权限,具有用户组的权限,可以对该目录下的文件执行权利,Code为目录

chmod o+t myfife:为其他用户设置t权限,说明其他用户不能对其进行删除操作

大家有没有看到myfife文件中的T呢,这是因为我们给sticky位设置了权限,这个有什么作用呢?就是为了防止删除。我们有时候会遇到A用户对其有写权限,写了之后,B用户觉得那个文件没用,就把文件给删了。这样的结果可想而知。

为了避免上述的事情发生,所以就有粘滞位的引入。就是为了防止other用户对其删除。只有用户自己可以对其添加、修改、删除等操作。

使用chmod 1777 myfife 即可。

最后

以上就是昏睡大地为你收集整理的Linux下设置权限让用户只删除自己的文件的方法的全部内容,希望文章能够帮你解决Linux下设置权限让用户只删除自己的文件的方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(103)

评论列表共有 0 条评论

立即
投稿
返回
顶部