美文网首页
Linux下文件的特殊权限

Linux下文件的特殊权限

作者: 昆仑草莽 | 来源:发表于2019-03-07 15:27 被阅读0次

    在Linux中,文件的权限对于每一位操作过Linux的人都是非常熟悉的,“w”写的权限、“r”读的权限、“x”执行权限,但是在Linux中除了这三种权限外还有特殊权限,我做了以下使用说明。

    Linux的特殊权限

    1.SUID权限:临时获取文件拥有者的权限,只针对文件。
    2.SGID权限:既可以作用于目录,也可以作用于文件,作用于文件,同SUID相同。作用于目录,继承父级目录,而且一直继承下去,不会停止。
    3.SBIT权限:只有文件拥有者才可以修改,删除该目录下的文件,只针对目录。

    图1
    图2

    上图的图1,我们看到有一个s权限,图2有一个t权限。那么这两个代表说明含义呢。
    这表示,
    1).当s出现在拥有者的x权限位置时,表示拥有者有SUID权限。
    2).当s出现在所属组的x权限位置时,表示所属组有SGID权限。
    3).当t出现在其他人的x权限位置时,表示其他人有SBIT权限。
    使用命令 chmod g+s /文件路径/文件名称,就可以给文件或目录赋予了s权限,t也可以相同操作。
    g表示时给群组给与的权限。u表示拥有者,o表示其他人。

    那么我们给文件赋予了s或者t的权限,那文件是否还有x权限呢。
    我们修改文件的权限,可以使用命令:
    chmod g+x /文件路径/文件名称
    这样文件就有了x的权限,此时的s时小写字母。
    chmod g-x /文件路径/文件名称
    此时查看文件属性,你会发现s变成了大写的S。
    所以,s和t时有大小写之分的,大写表明,没有x权限,相反,小写就表明,有x权限。

    那么t又是什么呢,我们看图2,图2的tmp文件的权限时文件中最大的权限,也就时所有人都可以对这个目录下的文件做任何事情,所有Linux就在其他人的x权限位置下加上t权限,表明,除了root用户外,只有目录下文件的拥有者才可以对文件最初修改。

    在上面的修改特殊权限中我们使用字母来写,那么能不能使用数字来修改呢,是可以的。

    我们使用命令 chmod 777 /文件路径/文件名称,表示修改文件拥有最大的权限,那我们修改命令为
    chomd 4777 /文件路径/文件名称 ,就表示修改文件拥有最大权限时候,同时也有s权限,这和文件权限的数字使用是相同的。

    这其中:SUID:4,SGID:2,SBIT:1
    所有要修改文件的最大权限,并且给与s权限和t权限,就可以写成
    chmod 7777 /文件路径/文件名称

    Linux系统文件的特殊权限就先总结到这里,还有许多其他的好玩的东西,我会慢慢的总结出来。

    相关文章

      网友评论

          本文标题:Linux下文件的特殊权限

          本文链接:https://www.haomeiwen.com/subject/dwycpqtx.html