linux中的SUID和SBIT 权限

关于SUID,需要先参考上一篇文章:

http://blog.csdn.net/qingsong3333/article/details/77726074


SUID

SUID权限和SGID是作用类似的,不过SUID不是针对二进制程序的owner起作用,而是对所属组起作用。当其他用户执行此文件时,会暂时获得文件所属组的权限。

现在把wordcount的SUID权限改为SGID,效果是一样的,因为admin这个组(文件所属组)同样可以访问文件sample,要赋予SGID的权限,需要在原来的权限前加上2:
qingsong@db2a:~/cprogram$ chmod 2775 wordcount
qingsong@db2a:~/cprogram$ ls -l wordcount
-rwxrwsr-x 1 qingsong admin 8732 Aug 30 04:38 wordcount
qingsong@db2a:~/cprogram$ su inst97
Password:
inst97@db2a:/home/qingsong/cprogram$ ./wordcount sample.txt
Lines:34, Words:84, Chars:594
inst97@db2a:/home/qingsong/cprogram$

Sticky Bit

这个 Sticky Bit, SBIT 只针对目录有效,对于文件已经没有效果了。 SBIT 对于目录的作用是:
-当用户对于此目录具有 w, x 权限,亦即具有写入的权限时;
-当用户在该目录下建立子目录或文件时,仅有自己与 root 才有权力删除该子目录或文件

示例如下,要设置SBIT权限,则在原来权限的前面加上1,在下面的例子中,qingsong创建了一个目录sbittest,并设置了SBIT权限,之后在这个目录下创建了一个文件file1,尽管把file1的权限修改为777了,别的用户还是不能删除它
qingsong@db2a:~$ cd /tmp
qingsong@db2a:/tmp$ mkdir sbittest
qingsong@db2a:/tmp$ chmod 1777 sbittest
qingsong@db2a:/tmp$ ls -ld sbittest/
drwxrwxrwt 2 qingsong admin 4096 Aug 30 05:38 sbittest/
qingsong@db2a:/tmp$ cd sbittest
qingsong@db2a:/tmp/sbittest$ touch file1
qingsong@db2a:/tmp/sbittest$ chmod 777 file1
qingsong@db2a:/tmp/sbittest$ ls -l file1
-rwxrwxrwx 1 qingsong admin 0 Aug 30 05:38 file1
qingsong@db2a:/tmp/sbittest$ su inst97
Password:
inst97@db2a:/tmp/sbittest$ rm -f file1
rm: cannot remove 'file1': Operation not permitted <--普通用户删不了
inst97@db2a:/tmp/sbittest$ su qingsong
Password:
qingsong@db2a:/tmp/sbittest$ rm -f file1
qingsong@db2a:/tmp/sbittest$ ls file1
ls: cannot access file1: No such file or directory

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值