故事引入

今天碰到了一条指令,
chmod 4 test

怎么在777前还有一位,颠覆了我的认知啊,这时候必须翻鸟哥神书了,找到一个链接《7.4.3 文件特殊权限:SUID/SGID/Sticky Bit》,啃了一会终于明白了,整理如下:

除了传统的读r、写w、执行x以外,还有Linux的文件特殊权限,他们分别是Set UID、Set GID、Sticky Bit三种,也就是多出来的那一位,功能介绍如下:

Set UID,SUID

权值:4
符号:x --> s
特点:仅对可执行文件有效。
功能:可执行文件执行时,拥有文件所有者的权限。
案例:/usr/bin/passwd 权限为4755,普通用户可执行passwd命令时,对应的普通用户,随机秒变高富帅,获得了root权限,可以修改普通用户平常根本想都不敢想、无法修改的root拥有的/etc/shadow系统文件(如果/usr/bin/passwd 权限为755,则普通用户执行passwd的时候,会出现无权限修改root own的/etc/shadow文件的问题)

Set GID,SGID

权值:2
符号:x --> s
特点:文件、目录都可施法。
功能:可执行文件、目录执行时,相同用户组的 拥有文件所有者权限。
案例:SGID多用在特定的多人团队的项目开发上,在系统中用得较少

Sticky Bit,SBit

权值:1
符号:x --> t
特点:仅对目录有效。
功能:当目录SBit=1,权限变为rwx rwx rwt时,在此文件夹下删除、重命名、移动的操作只允许是对应创建者用户或root(如果SBit=0,则用户间创建的文件可以互相删除,互相伤害)
案例:/tmp 权限为1777,该目录下不同用户间不可互删文件,只能删自己的(如果/test 权限为777,则test目录下不同用户间可互删文件)

【Linux文件特殊权限“隐藏关卡”】

看到这里,大家应该明白了SUID SGID StickyBit均含有类似“设置后就有了创建者相应权限”的功能(可能不严谨,大家明白意思就好),那么当创建者也没有执行权限(x位为0,例如rw-rw-rw-)时,那么就会出现暗藏关卡——大写SST,即rwSrwSrwT,代表空权限。就像鸟哥书里说的那样“拥有者都无法执行了,哪里来的权限给其他人使用呢?当然就是空的”
 
2333333

chmod 4777? 文件特殊权限 SUID SGID StickyBit的更多相关文章

  1. Linux 文件特殊权限 SUID SGID SBIT

    文件除了常规的权限r, w, x 还有一些特殊的权限,s与t权限,具体的用处如下 1 SetUID 当s 这个标志出现在文件所有者的x权限上时, 例如/usr/bin/passwd, [root@or ...

  2. CentOS 文件特殊权限SUID,SGID,SBIT

    1.SUID ,是一种对二进制程序进行设置的特殊权限,可以让二进制程序的执行者临时拥有所有者的权限(仅对拥有执行权限的二进制程序有效). (1)SUID权限仅对二进制程序有效: (2)本权限仅在执行该 ...

  3. 【Linux】文件特殊权限 SUID/SGID/Sticky Bit

    linux中除了常见的读(r).写(w).执行(x)权限以外,还有3个特殊的权限,分别是setuid.setgid和stick bit 1.setuid.setgid 先看个实例,查看你的/usr/b ...

  4. linux ,mac连接, git pull error, chmod修改文件的权限/chown修改文件和目录的所有者

    去项目目录下 启动服务 setsid npm start & Mac下如何用SSH连接远程Linux服务器 https://www.cnblogs.com/littleBit/p/536280 ...

  5. 第7章 权限管理(2)_文件特殊权限(SUID、SGID、SBIT)

    2. 文件特殊权限(主要用来临时提升命令执行者或其组身份) 2.1 SetUID (1)SetUID的功能 ①只有可以执行的二进制程序才能设定SUID权限.用来临时提升执行程序(或某条命令)的用户身份 ...

  6. Linux 特殊权限 SUID,SGID,SBIT

    setuid 和 setgid 分别是 set uid ID upon execution 和 set group ID upon execution 的缩写.我们一般会再次把它们缩写为 suid 和 ...

  7. Liunx 特殊权限 suid sgid t

    suid 在passwd 中体现,在执行命令的时候普通用户拥有管理员的权限 [root@test_android_client_download ~]# ll /usr/bin/passwd -rws ...

  8. 特殊权限 - SUID GUID STICKYBIT

    ◆ SUID ( Set User ID ) Linux里,用户的ID被称作UID.在实际生产中,可能需要临时借用别的用户执行程序,因此需要能够临时变更自己UID的机能叫做SUID.借助SUID权限, ...

  9. chmod修改文件的权限/chown修改文件和目录的所有者

    ll指令的显示的信息为(当前目录下只有nameservice1一个目录): drwxr-xr-x 3 hdfs hdfs 4096 4月 14 16:19 nameservice1 上述信息分别表示: ...

随机推荐

  1. How to add a button in the seletions "More"

    <?xml version="1.0" encoding="utf-8"?> <openerp> <data> <re ...

  2. oracle 存储过程 变量的声明和赋值的3种方式

      oracle 存储过程 变量的声明和赋值的3种方式 CreationTime--2018年8月31日16点00分 Author:Marydon 1.声明变量的3种方式 按照数据类型的声明方式进行区 ...

  3. putty(winscp)无法连接到linux(ubuntu)

    为了能在自己笔记本电脑上兼容公司的用64位系统编译出来的MapReduce程序,我把自己原来32位的ubuntu虚拟机删除后,安装了目前最新的ubuntu-14.04.2-desktop-amd64. ...

  4. Inno Setup Pascal Script to search for running process

    I am currently trying to do a validation at the uninstall moment. In a Pascal script function, in In ...

  5. 如何读取xml文件,根据xml节点属性查询并输出xml文件

    主要是应用SimpleXML和递归函数来根据key值来查询,并将结果以xml格式输出. <?php header("Content-type: text/xml"); //以 ...

  6. poi读取excel元素

    Java读取excel元素 忽略元数据末尾回到原数据开始处 pom文件设置 <dependency><groupId>org.apache.poi</groupId> ...

  7. [CentOS] CentOS for vsftpd with MySQL Virtual user

    從ubuntu 12.04的安裝手法拿到CentOS來真的有些很大的不同 絕大部分的語法.概念都是差不多的,只是指令上有些差別,跟ubuntu 有不一樣的地方特別拿出來另外說明 要讓vsftpd與my ...

  8. 单页应用SPA做SEO的一种清奇的方案

    单页应用SPA做SEO的一种清奇的方案 网上有好几种单页应用转seo的方案,有服务端渲染ssr.有预渲染prerender.google抓AJAX.静态化...这些方案都各有优劣,开发者可以根据不同的 ...

  9. 虚拟机下安装centos7方法,修改系统语言为简体中文的方法

    说明 自己装系统时一般都可以自定义选择系统语言.可是云端服务器一般都是安装好的镜像,默认系统语言为英文,对于初学者可能还会有搞不懂的计算机词汇.这里简单说一下centos7怎么修改系统语言为中文. 虚 ...

  10. ERROR C3848:具有类型"const XXX" 的表达式会丢失一些 const-volatile 限定符以调用"YYY" with"ZZZ"

    今天看书,Thinking in c++ volume 2 "Adaptable function objects" 里面作者说: Suppose, for example, th ...