粘滞位(sticky bit)
linux特殊权限:setUid, setGid, 粘着位(sticky)
(1)目录的X权限(执行)
文件的可执行权限很简单,也就是可否执行它的意思,但目录的执行权限又代表什么意思呢?
当然不可能是要执行这个目录了,其实这个执行权限如果用在目录上时,它不再代表执行的意思了,而是代表"搜索"权限。
当你要访问/etc/httpd.conf文件时,你必须拥有对目录etc的X(即搜索)权限,否则即便你对目录/etc和文件httpd.conf拥有读取权限,也是无法访问httpd.conf这个文件的。
r(Read,读取):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目 录的权限。
w(Write,写入):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。
x(eXecute,执行):对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限。
s或S(SUID,Set UID):可执行的文件搭配这个权限,便能得到特权,任意存取该文件的所有者能使用的全部系统资源。请注意具备SUID权限的文件,黑客经常利用这种权限,以SUID配上root帐号拥有者,
无声无息地在系统中开扇后门,供日后进出使用。
T或T(Sticky):/tmp和 /var/tmp目录供所有用户暂时存取文件,亦即每位用户皆拥有完整的权限进入该目录,去浏览、删除和移动文件。
(2)setUid, setGid
即:设置-用户ID位,设置-组ID位。
当一个程序一旦设置了该标记以后,运行该程序的进程将拥有该程序所有者同样的权限,比如你的某个程序是由root所有,又设置了SetUid位,那即便是一个普通用户运行这个程序,但该程序的身份一样是超级用户的身份了,可以访问所有只能由root用户访问的资源。
setUid命令用法:提升使用者的权限,普通用户可以执行改命令,使自己升级为root
chmod 4755 your_program
setGid命令用法:与setUid类似,使得使用者在执行该文件时,都绑定了文件所有组的权限,单独setGid的文件非常少用,通常都是即setUid又setGid.
chmod 2755 your_program
setUid and setGid命令用法:通常不是用来提升权限的,而是为了绑定某个特殊用户及其组的特殊权限。
chmod 6755 your_program
(3)粘着位(sticky)
eg:
chmod 777 abc
chmod +t abc
等价于
chmod 1777 abc
在以前旧的系统当中,如果一个程序文件一旦设置了粘着位,那么当该程序中止的时候他的所有指令段将被保存到系统的交换分区当中,再次运行时可以更快的调入系统。不过现在的操作系统已经不再使用这种功能了。但这并不表示这功能已经完全被废弃。
当一个目录设置为粘着位时,它将发挥特殊的作用,即当一个目录被设置为"粘着位"(用chmod a+t),则该目录下的文件只能由
一、超级管理员删除
二、该目录的所有者删除
三、该文件的所有者删除
也就是说,即便该目录是任何人都可以写,但也只有文件的属主才可以删除文件。
粘滞位(sticky bit)的更多相关文章
- Linux中的特殊权限粘滞位(sticky bit)详解
Linux下的文件权限 在linux下每一个文件和目录都有自己的访问权限,访问权限确定了用户能否访问文件或者目录和怎样进行访问.最为我们熟知的一个文件或目录可能拥有三种权限,分别是读.写.和执行操作, ...
- 【转】Linux中的特殊权限粘滞位(sticky bit)详解
Linux下的文件权限 在linux下每一个文件和目录都有自己的访问权限,访问权限确定了用户能否访问文件或者目录和怎样进行访问.最为我们熟知的一个文件或目录可能拥有三种权限,分别是读.写.和执行操作, ...
- Linux文件和目录的粘滞位(sticky bit)
今天维护系统时发现一个非常诡异的问题:AAA用户和BBB用户同属AAA组,但用AAA用户创建的文件,权限设置为777后,还是不能用BBB用户删除.诡异! 几经周转,发现AAA用户创建文件位置的上层目录 ...
- Linux 权限设置和 SUID, SGID 以及粘滞位sticky bit
suid是指在执行suid程序的过程中,去访问其他文件时拥有suid程序属主的权限,而不是指对suid程序本身拥有suid程序属主的权限! 一. Linux 文件权限的表示方法 文件权限用 12 个二 ...
- Linux中相关知识(atexit(),fork(),粘滞位)
1.atexit()函数 函数名: atexit 头文件:#include<stdlib.h> 功 能: 注册终止函数(即main执行结束后调用的函数) 用 法: int atexit(v ...
- linux—粘滞位的设置
粘滞位(Stickybit),或粘着位,是Unix文件系统权限的一个旗标.最常见的用法在目录上设置粘滞位,如此以来,只有目录内文件的所有者或者root才可以删除或移动该文件.如果不为目录设置粘滞位,任 ...
- Linux粘滞位的设置
粘滞位(Stickybit),或粘着位,是Unix文件系统权限的一个旗标.最常见的用法在目录上设置粘滞位,如此以来,只有目录内文件的所有者或者root才可以删除或移动该文件.如果不为目录设置粘滞位,任 ...
- 深入理解linux的权限设置和SUID,SGID以及粘滞位
我们知道文件的权限可以用三个八进制数字表示.其实文件的权限应该用四个八进制来表示,不过用 ls -l 命令时,只显示三个罢了.那个没有显示的八进制数字其实是第一个,它用来设定一些特殊权限.这个八进制数 ...
- suid, sgid,粘滞位,chattr
一. 基本含义和作用 1. SUID:当设置了SUID 位的文件被执行时,该文件将以所有者的身份运行,也就是说无论谁来执行这个文件,他都有文件所有者的特权. 2. SGID:与上面的内容类似.用于设置 ...
- SUID、SGID、粘滞位
粘滞位(Stikybit) +t,只有用户自己可以删除自己创建文件,其他用户只能查看,不能删除. 1:创建两个用户 useradd oo ...
随机推荐
- TransactionScope
最近发现微软自带的TransactionScope(.Net Framework 2之后)是个好东东,提供的功能也很强大. 首先说说TransactionScope是什么,并能为我们做什么事情.其实看 ...
- [Webpack 2] Expose modules to dependencies with Webpack
When you have a dependency that has dependencies on global variables (like jQuery or lodash) or assu ...
- Redis学习手册(String数据类型)
一.概述: 字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等.在Redis中字符串类型 ...
- 浅谈C语言中的联合体
联合体union 当多个数据须要共享内存或者多个数据每次仅仅取其一时.能够利用联合体(union).在C Programming Language 一书中对于联合体是这么描写叙述的: 1)联合体是一个 ...
- URI URL
http://www.cnblogs.com/ACFLOOD/p/5533022.html
- System Address Map Initialization in x86/x64 Architecture Part 2: PCI Express-Based Systems
原文 http://resources.infosecinstitute.com/system-address-map-initialization-x86x64-architecture-pa ...
- overflow:hiddden与绝对定位的应用场景的事例
做一个点击查看显示详细信息的效果. 说一下问题描述,最外面的父元素overflow-parent设置了overflow:hidden, 然后子元素overflow-child没有设置overflow, ...
- Java Mybatis 传参方式
一.单个参数: public List<XXBean> getXXBeanList(String xxCode); <select id="getXXXBeanList&q ...
- CSS 隐藏多余的字符
日常开发中常常会碰到,字符长度太大,撑破了样式的问题.如果采用截取的话,显然是不灵活的.但是通过css样式来控制显示就比较简单和高效了.下面是关键代码 样式名称{wedth:??px;height=? ...
- 01_JavaMail_04_带附件邮件的发送
[工程截图] [代码实例] package com.Higgin.mail.demo; import java.io.File; import java.util.Properties; import ...