linux给文件设置权限的命令(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 即可 。
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!