Linux之特殊权限 set_uid、set_gid、stick_bit

Linux之特殊权限 set_uid、set_gid、stick_bit

特殊权限set_uid

set_uid :让普通用户临时拥有文件所有者的身份(前提是该文件为可执行的二进制文件)

  • Linux下默认只有 /usr/bin/passwd 才有“s”权限
[root@xxlinux-02 ~]# ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 27832 6月  10 2014 /usr/bin/passwd
  • 实例应用 chmod u+s 可执行的二进制文件
[xx@xxlinux-02 ~]$ ls /root
ls: 无法打开目录/root: 权限不够
[root@xxlinux-02 ~]# ls -ld /root
dr-xr-x---. 5 root root 195 6月  10 01:05 /root

因为普通用户没有/root 的x权限,所以无法查看

[root@xxlinux-02 ~]# which ls
alias ls='ls --color=auto'
/usr/bin/ls
[root@xxlinux-02 ~]# chmod u+s /usr/bin/ls

[xx@xxlinux-02 ~]$ ls -l /root
总用量 4
-rw-r--r--. 1 xx   xx      0 6月  10 00:26 1.txt
-rw-r--r--. 1 root root    0 6月  10 01:05 2.txt
drwxr-xr-x. 2 xx   root    6 6月  10 00:34 abc
-rw-------. 1 root root 1422 5月  26 07:57 anaconda-ks.cfg
drwxr-xr-x. 2 root root    6 6月  10 01:00 bbb.

当加上s权限后,xx用户就临时拥有了root的权限

  • chmod u-s filename:去掉普通用户的“s”权限

  • chmod u=rws filename,同样可以设置,但是得到的会是 u=rwS "S"是没有“x”权限的


特殊权限set_gid

  • set_gid :作用于文件时,让普通用户临时拥有该文件所属组下用户的身份
[xx@xxlinux-02 ~]$ ls -l /root
ls: 无法打开目录/root: 权限不够
[root@xxlinux-02 ~]# chmod g+s /usr/bin/ls
[xx@xxlinux-02 ~]$ ls -l /root
总用量 4
-rw-r--r--. 1 xx   xx      0 6月  10 00:26 1.txt
-rw-r--r--. 1 root root    0 6月  10 01:05 2.txt
drwxr-xr-x. 2 xx   root    6 6月  10 00:34 abc
-rw-------. 1 root root 1422 5月  26 07:57 anaconda-ks.cfg
drwxr-xr-x. 2 root root    6 6月  10 01:00 bbb
  • set_gid 作用于目录时,任何用户在该目录下新建的目录或文件所属组跟该目录是一样的,如下例:
[root@xxlinux-02 ~]# chmod g+s abc
[root@xxlinux-02 ~]# chown :testx abc
[root@xxlinux-02 ~]# mkdir abc/a
[root@xxlinux-02 ~]# touch abc/a.txt
[root@xxlinux-02 ~]# ls -l abc
总用量 0
drwxr-sr-x. 2 root testx 6 6月  10 23:36 a
-rw-r--r--. 1 root testx 0 6月  10 23:36 a.txt
[root@xxlinux-02 ~]# chmod g-s abc
[root@xxlinux-02 ~]# touch abc/b.txt
[root@xxlinux-02 ~]# mkdir abc/b
[root@xxlinux-02 ~]# ls -l abc
总用量 0
drwxr-sr-x. 2 root testx 6 6月  10 23:36 a
-rw-r--r--. 1 root testx 0 6月  10 23:36 a.txt
drwxr-xr-x. 2 root root  6 6月  10 23:38 b
-rw-r--r--. 1 root root  0 6月  10 23:37 b.txt

特殊权限stick_bit (防止其他用户删除自己的文件,root用户除外)

语法:chmod o+t 文件/目录

[root@xxlinux-02 ~]# ls -ld /tmp
drwxrwxrwt. 13 root root 4096 6月  10 21:45 /tmp

其中其他用户权限为“rwt”,其中“t” 表示防删除位.

转载于:https://www.cnblogs.com/zhouyixuan/p/7460346.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值