suid/sgid/sticky

简介:

 文件本身已经有属主、属组和其它用户三种能够操作此文件的用户,每种用户又有读、写、执行三类权限,而在一些特殊的情况下仅使用这三类用户的三种权限是不能满足我们的需求,这时就需要给文件添加suid 、sgid、sticky权限,下面简单介绍这三种权限的用途及添加方法。

    suid:

        suid 一般设置在可执行文件上,设置的目的是让其他用户 使用 此可执行文件访问那些   与此可执行文件具有相同属主或属组的文件。

        suid的设置方法:

            chmod  u+s  file1....  或者使用另一种方法(在最后面说明) 进行设置

        当文件设置过suid后,在文件属主可执行权限位上表现为s或S

                若设置suid前,文件属主有可执行权限(即属主可执行权限位为x),设置后变为s

                ............................文件属主没有可执行权限(..................................为-),设置后变为S

    sgid:

        sgid一般设置在目录上,当一个目录设置过 sgid 权限后,凡是在此目录下创建的文件,无论文件的创建者是谁,文件的属组都和此目录的属组保持一致,相当于继承父目录的属组。

        如果在具有sgid权限的目录中 创建目录a,进入新建目录a,在a目录中再创建的文件仍然继承父目录的属组权限,如果更改了新建目录a的权限(即使更改过后再改回原样),那么在目录a中创建的文件则不再继承父目录的权限。

        sgid的设置方法:

            chmod  g+s  file1....  或使用另一种方法(在最后面说明)进行设置

        当目录设置过sgid后,在目录文件属组可执行权限位上表现为s或S

                若设置sgid前,目录文件属组有可执行权限(即属组可执行权限位为x),设置后变为s

                ............................目录文件属组没有可执行权限(..................................为-),设置后变为S

    sticky(粘滞位):

        sticky一般也是设置在目录上。通常普通用户所创建的文件  即使  能够设置权限  不让其他普通用户进行读写操作,但也不能阻止其他用户把此文件删除,而sticky权限所起的作用就是:各个用户在此目录中创建的文件只能由自己删除,其他用户不能删除;换句话说就是,在具有sticky权限的目录中每个用户只能删除自己创建的文件。

        sticky的设置方法:

            chmod  o+t  file1.....  或使用另一种方法(在最后面说明)进行设置

         当目录设置过sticky后,在目录文件‘其它用户’可执行权限位上表现为s或S

                若设置suid前,目录文件‘其它用户’可执行权限(即‘其它用户’可执行权限位为x),设置后变为t

                ............................目录文件‘其它用户’可执行权限(..................................为-),设置后变为T


    suid/sgid/sticky的设置方法还有一种。总所周知,文件的权限设置可以用chmod 755 file1....的格式进行设置;同样,suid/sgid/sticky的设置也可以使用这样的格式。suid/sgid/sticky和r/w/x一样分别用4/2/1进行表示,可以混合使用。

   若文件原来权限位755

         如果要设置suid可以使用chmod  4755  file1.....

         如果要设置sgid可以使用chmod  2755  file1.....

         如果要设置sticky可以使用chmod  1755  file1.....

     



本文转自 f_066 51CTO博客,原文链接:http://blog.51cto.com/ganmu/1845413,如需转载请自行联系原作者

相关文章
|
数据采集 机器学习/深度学习 编解码
视频生成框架EasyAnimate正式开源!
EasyAnimate是人工智能平台PAI自主研发的DiT-based视频生成框架,它提供了完整的高清长视频生成解决方案,包括视频数据预处理、VAE训练、DiT训练、模型推理和模型评测等。可以使用EasyAnimate进行任意风格视频模型的训练和推理,还可以在预训练模型的基础上,通过少量图片的LoRA微调来改变生成视频的风格。
|
7月前
|
人工智能 自然语言处理 前端开发
从文案到设计,我用通义版Artifacts生成了365张灵感日历
本文介绍了如何利用通义AI的“代码模式”功能,轻松制作个性化日历。作者通过实例展示了从设计日历样式、推荐每日生活小事到赋予小事新解的过程,强调了AI在创意实现上的强大助力。此外,还探讨了AI代码生成技术对未来创造力的影响,以及通义AI代码模式如何降低创作门槛,提高效率,让每个人都能成为应用开发者。
|
11月前
|
NoSQL 关系型数据库 MySQL
多机部署:打造内网服务器集群
在多机部署教程中,了解如何配置分布式应用如Laravel以使用Redis同步用户状态。关键步骤包括:修改MySQL的`bind-address`至内网IP,重启服务;同样修改Redis的`bind`,重启服务;以及调整Elasticsearch的`network.host`和`discovery.seed_hosts`,并重启。通过这些步骤,确保服务间能内网通信,实现多服务器状态同步。
320 2
|
11月前
|
存储 C++ 容器
|
Linux Go 开发工具
为什么开源是现代开发的核心?
为什么开源是现代开发的核心?
345 0
|
存储 API 开发工具
OSS工作原理
OSS工作原理
187 6
|
Web App开发 缓存 前端开发
前端项目根据环境设置请求地址和接口代理,以及解决多个localhost服务token被覆盖
一般开发项目除了正式的生产环境,还会有对应的开发环境、测试环境和预发布环境,每个环境所访问的接口地址肯定不一样,如果自己一个个手动修改那就太不程序猿了
|
Java 应用服务中间件 开发工具
云效代码管理 Codeup
个人测评,图片你看不了的原因就赖语雀不好使
5761 0
云效代码管理 Codeup
|
存储 Shell Linux
Pacemaker+corosync搭建双节点HA集群的可靠性验证
前一篇>中为确保共享资源的不被破坏,配置了3节点集群,本文想验证一下双节点时有什么风险。 Pacemaker的手册上也有描述,Pacemaker支持法定投票和资源抢占2种方式防止脑裂。
2141 0
|
XML 开发工具 数据格式
鸿蒙开发(2)---Button组件
鸿蒙开发(2)---Button组件
857 0
鸿蒙开发(2)---Button组件