Linux系统上的特殊权限

本文详细解释了Linux系统中的三种特殊权限:SUID允许程序以文件属主身份运行,SGID影响新文件的属组,STICKY限制其他用户删除他人文件。还介绍了chmod、facl等工具用于管理和控制这些权限。
摘要由CSDN通过智能技术生成

linux上的特殊权限有三个,分别是SUID,SGID,STICKY

SUID

默认情况下,用户发起的进程,进程的属主是其发起者;因此,其发起者的身份在运行;

SUID的功用是,用户运行某程序时,如果此进程拥有SUID权限,那么程序运行为进程时,进程的属主不是发起者,而是程序文件自己的属主;

  • 管理文件的SUID权限

    • chomd u+|-s FILE...

    • 展示位置:属主的执行权限位

      • 如果属主原本有执行权限,显示为小写s;否则,显示为大写S;

SGID

SGID的功用是,当目录有写权限,且有SGID权限时,那么所有属于此目录的属组,且以属组身份再次目录中新建文件或目录是,新文件的属组不是用户的基本组,而是此目录的属组;

  • 管理文件的SGID权限

    • chomd g+|-s FILE...

    • 展示位置:属组的执行权限位

      • 如果属组原本有执行权限,显示为小写s;否则,显示为大写S;

Sticky

Sticky的功用是,对于属组可写和全局可写的目录,组内所有用户或系统上的所有用户对再次目录中都能创建新文件或删除所有已有的文件,如果为此类目录设置Sticky文件,则每个用户都能创建新文件,且只能删除自己的文件;

  • 管理文件的Sticky权限:

    • chmod o+|-t FILE...

    • 展示位置:属组的执行权限位

      • 如果属组原本有执行权限,显示为小写t;否则,显示为大写T;

  • 系统上的/tmp和/var/tmp目录默认都有Sticky权限

管理特殊权限的另一种方式

八进制权限

SUID(4)SGID(2)Stick(1)八进制权限
0000
0011
0102
0113
1004
1015
1106
1117

基于八进制方式赋权时,可以默认的三位八进制数字左侧再加一位八进制数字;

例如:

chmod 1777 FILE

facl文件访问控制列表

文件的额外赋权机制,在原有的u,g,o之外,另一层让普通用户能控制赋权给另外的用户或组的机制;

  • getfacl:查看赋权列表

    • getmacl FILE

  • setfacl:

    • 赋权给用户:

      • setfacl -m u:USERNAME:MODE FILE...
    • 赋权给组:

      • setfacl -m g:GROUPNAME:MODE FILE...
    • 撤销赋权:

      • setfacl -x u:USERNAME:MODE FILE...
      • setfacl -x g:GROUPNAME:MODE FILE...

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值