粘滞位的了解及使用

一、权限

1.文件的权限

r (read) :可读取该文件的实际内容
w(write):可以编辑,新增或者修改该文件的内容(但不含删除该文件)
x(execute):代表该文件可以被系统执行

对于文件的r ,w, x来说,主要针对的"文件的内容"而言,与文件名的存在与否没有关系

2.目录的权限

r (read):具有读取目录结构列表的权限,用ls查看
w(write):写的权限操作包括:新建文件或目录、删除文件或目录(不论文件的权限是什 么)、对文件或目录重命名、移动文件或目录等
x(execute):目录的X权限代表的是用户能否进入该目录称为工作目录。拥有此权限,就可以cd进去,否则,将不能进入目录内部

二、粘滞位(粘着位)

1.介绍

(1)最常见的用法在目录上设置粘滞位,也只能针对⽬录设置,对于⽂件⽆效。设置了粘滞位后,只有目录内文件的所有者或者root才可以删除或移动该文件。如果不为目录设置粘滞位,任何具有该目录写和执行权限的用户都可以删除和移动其中的文件

(2)一个目录具有粘滞位,则在other的X位会表现为 t,或者T。T和t的区别在于,原来x位上有x权限,有了粘滞位则表现为t,否则,则表现为T

(3)在linux系统的实际应用中,粘滞位一般用于/tmp,/var/tmp目录,以防止普通用户删除或移动其他用户的文件

(4)粘滞位t权限给其它用户带来的安全限制,仅仅在于不能删除和移动/更名文件 (即粘滞位保护的是文件不被其他用户rm或mv,即使文件对其他用户有写权限,777都不行!),因为它针对的是目录

2.权限

(1)SetUID  =  4:在所有者设置的权限

只对二进制程序有效;执行者对于程序需要有x权限;在程序运行过程中,执行者拥有程序拥有者的权限;suid会在所属用户权限本应是x的地方显示s;

设置suid权限的方法:a.文件当前数字权限前面加4。b.chmod u+s  目录(设置)    chmod u-s  目录(取消)

eg:/etc/shadow文件权限是000,只有root用户能对它有查看权限,普通用户无法查看它的内容

(2)SetGID  =  2:在所属组设置的权限

针对文件的话,sgid只对二进制程序有用;程序执行着要有x权限;执行者在执行过程中会获得改程序用户组的权限sgid会在所属用户组权限本应是x的地方显示s;

设置suid权限的方法:a.文件当前数字权限前面加2。b.chmod g+s  目录(设置)    chmod g-s  目录(取消)

eg:/usr/bin/locate文件中用户组权限中应该出现x的位置显示的s,表示这个locate命令具有sgid权限,而普通用户只有x权限而没有rw权限

(3)粘着位  =  1:在其他人的位置设置的(使用t来表示)

只能针对目录而言,对文件来说无效!当用户对目录拥有wx权限时,用户在该目录创建的文件或目录,只有自己与root才可以删除,设置了粘滞位t权限的目录其他用户权限位置的"x"将变为"t"

设置粘滞位权限的方法:a.文件当前数字权限前面加1。b.chmod o+t  目录(设置)    chmod o-t 目录(取消)

eg1:查看/tmp  /var/tmp目录的权限 

eg2:设置粘滞位t权限

a. 用root身份创建所属者和所属组都是root权限为777(可读可写可执行)的/opt/tom目录(其他用户可以删除目录内容)

b. 在/opt/tom目录下创建两个文件,权限默认,其他用户可以删除目录内容

c. 切换到普通用户,去删除刚刚在root下新建的两个文件ceshi1 和 ceshi2。发现可以删除

普通用户对/opt/tom目录下的文件可以删除和重命名权限,尽管文件的other用户是r--,但/opt/tom目录下的other用户是rwx(普通用户对/opt/tom目录有可写权限,对该目录下的文件可以进行增删改操作)

d.回到root用户下,给/opt/tom目录加上粘滞位,查看发现other 的x权限变为t,则添加成功,再在该目录下新建文件test1和test2.sh

e.切换到普通用户下,对文件test1和test2.进行删除和重命名操作(结果不能删除和重命名,即使目录的权限是777,说明粘滞位给其他用户带来安全限制)

f. 证实文件所有者和root依旧可以删除文件。用root对该文件进行删除操作(可以删除)

g. 验证当文件对other用户有可写权限的时候,粘滞位t权限的保护作用(尽管文件t1,t2的权限为777,但目录设置了粘滞位t权限,其他用户还是不能进行删除和重命名操作)

h.回到root用户,删除t1、t2文件

i. 删除粘滞位t权限的设置

结论:
当一个目录被设置为"粘滞位"的t权限后,则该目录下的文件只能由  
1. 超级管理员(root)删除或移动/更名(rm或mv)  
2. 该目录或文件的所有者删除或移动/更名(rm或mv)

注意:
1. 虽然目录有了粘滞位t权限,other用户不能对该目录的文件进行删除或者移动操作,但如若other对该文件由w权限,还是可以进行修改文件内容
2. 粘滞位只对目录有效,对文件无效

自学linux——22.粘滞位的了解及使用的更多相关文章

  1. linux—粘滞位的设置

    粘滞位(Stickybit),或粘着位,是Unix文件系统权限的一个旗标.最常见的用法在目录上设置粘滞位,如此以来,只有目录内文件的所有者或者root才可以删除或移动该文件.如果不为目录设置粘滞位,任 ...

  2. Linux粘滞位的设置

    粘滞位(Stickybit),或粘着位,是Unix文件系统权限的一个旗标.最常见的用法在目录上设置粘滞位,如此以来,只有目录内文件的所有者或者root才可以删除或移动该文件.如果不为目录设置粘滞位,任 ...

  3. Linux中的特殊权限粘滞位(sticky bit)详解

    Linux下的文件权限 在linux下每一个文件和目录都有自己的访问权限,访问权限确定了用户能否访问文件或者目录和怎样进行访问.最为我们熟知的一个文件或目录可能拥有三种权限,分别是读.写.和执行操作, ...

  4. 【转】Linux中的特殊权限粘滞位(sticky bit)详解

    Linux下的文件权限 在linux下每一个文件和目录都有自己的访问权限,访问权限确定了用户能否访问文件或者目录和怎样进行访问.最为我们熟知的一个文件或目录可能拥有三种权限,分别是读.写.和执行操作, ...

  5. Linux文件和目录的粘滞位(sticky bit)

    今天维护系统时发现一个非常诡异的问题:AAA用户和BBB用户同属AAA组,但用AAA用户创建的文件,权限设置为777后,还是不能用BBB用户删除.诡异! 几经周转,发现AAA用户创建文件位置的上层目录 ...

  6. 深入理解linux的权限设置和SUID,SGID以及粘滞位

    我们知道文件的权限可以用三个八进制数字表示.其实文件的权限应该用四个八进制来表示,不过用 ls -l 命令时,只显示三个罢了.那个没有显示的八进制数字其实是第一个,它用来设定一些特殊权限.这个八进制数 ...

  7. Linux中相关知识(atexit(),fork(),粘滞位)

    1.atexit()函数 函数名: atexit 头文件:#include<stdlib.h> 功 能: 注册终止函数(即main执行结束后调用的函数) 用 法: int atexit(v ...

  8. suid, sgid,粘滞位,chattr

    一. 基本含义和作用 1. SUID:当设置了SUID 位的文件被执行时,该文件将以所有者的身份运行,也就是说无论谁来执行这个文件,他都有文件所有者的特权. 2. SGID:与上面的内容类似.用于设置 ...

  9. SUID、SGID、粘滞位

    粘滞位(Stikybit) +t,只有用户自己可以删除自己创建文件,其他用户只能查看,不能删除.        1:创建两个用户  useradd oo                         ...

随机推荐

  1. windows端口占用和进程定位

    问题:Error was Port already in use: 40001 1. netstat -ano|findstr "40001" TCP 127.0.0.1:1404 ...

  2. 什么是JavaScript作用域

    编程语言中,存储.访问和修改变量的值的能力将状态带给了程序.但是将变量引入程序会引起一些有意思的问题:变量存储在哪里?程序需要时如何找到它们?这些问题说明需要一套设计良好的规则来存储变量,并且之后可以 ...

  3. MongoDB基础教程(安装、操作、配置)

    MongoDB 下载安装 简易安装 # redhat, centOS sudo yum install -y mongodb # debian, ubuntu sudo apt install -y ...

  4. jsp 和servlet基础知识

    1  在tomcat服务器当中,4**表示客户端请求错误,5**表示程序错误 2.request知识参考网址:http://wenku.baidu.com/link?url=wYwTGk8XKrLzA ...

  5. centos7下做内存盘的方法

    在找这个资料的时候,基本没几个能用的或者过时了的,或者是换了概念,做的不是需要的那种盘,只有少数文章有提到关键部分应该怎么去操作,现在还是自己总结一下 内存盘tmpfs和ramdisk的区别 这个在网 ...

  6. CSS浮动和清除浮动

    1.浮动float div配合float浮动来做页面的布局,浮动最常用的地方就是用来做布局.只有一个标签设置了浮动float属性,就会变成块级标签. <!DOCTYPE html> < ...

  7. 关于重写equals同时重写hashcode

    1.Object中equals方法和hashcode public boolean equals(Object obj) { return (this == obj); } public native ...

  8. BurpSuite多重代理的情形

    有时候为了隐藏自己的真实IP,访问目标网站需要走代理.比如说,通过代理IP访问目标网站并且代理IP可以随时切换,这样可以避免IP被封堵后无法访问目标网站的尴尬. 一. 首先把代理切换为全局模式 操作步 ...

  9. NVM、NPM、Node.js的安装选择

    在安装和使用这三种工具时,我们有很多方式可以选择,这些方法各有优劣,每个人都有自己用起来比较习惯的配置,所以我在这里记录下自己比较习惯的一种安装方式与其他一些可能的选项. NVM.NPM.Node.j ...

  10. 使用 Docker 部署 Spring Boot 项目,带劲!!

    上一篇:年轻人的第一个 Docker 应用 Docker 一次构建.处处运行及快速启停的特性,在微服务架构中有着举足轻重的地位,具体的概念性的东西就不介绍了,不懂的点击这里阅读 Docker 基础教程 ...