Linux 下目录权限解答疑难

本文详述了Linux下的文件和目录权限,包括普通权限(rwx)和高级权限SUID, SGID, SBIT。解释了SUID如何让用户以文件所有者身份执行,SGID如何影响目录下文件的所属组,以及SBIT如何限制用户删除他人文件。通过实例展示了如何赋予这些权限。" 99892860,7378343,二叉排序树与平衡二叉树的理解及操作,"['二叉排序树', '平衡二叉树', 'AVL', '数据结构', '查找算法']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux下目录权限的详解

对于linux初学者来说,Linux下的权限是比较难理解得知识点了,对于Linux的高级权限SUID,SGID和SBID更加难理解,接下来我就给大家一步一步详细讲解文件权限。

一.普通权限(r,w,x)

1.对于普通文件来说,如下图

这里写图片描述

  • 文件需要有写权限的话,就必须赋予它w权限
  • 文件需要有读权限的话,只需要r权限即可,r权限表示可以读取文件的内容
  • 如果需要有执行权限的话,这儿就需要注意了, 不仅需要有x权限,还需要有r权限,这样才能对文件具有执行的权限,很多人不明白这一点
  • 还需要注意就是,对于root用户来说,不管对文件具有什么权限,都可以执行任何权限
  • 对于普通用户来说,即使文件所属主是自己,但是没有权限照样不能读写文件,同样需要赋予相应的权限才能操作文件
2. 对于目录来说
   1. r权限仅仅代表用户能够看见目录
   2.  要想查看目录中的文件,还需要具有x权限,所以文件的x权限表示能够进入目录(和文件不一样,目录没有执行的说法)
   3. w权限表示能够在目录下新建文件

二. Linux下的高级权限 SUID,SGID和SBID

讲完了linux文件和目录的基本权限,接下来给大家介绍一下linux下的文件高级权限

这里写图片描述

  1. SUID(set user id),suid一般用于执行文件,当其他用户对文件具有可执行权限时,如果该文件具有suid权限(user的x权限变为s或者S),那么该用户运行该文件,实际上是以文件所有者的身份在运行文件,如下所示
    这里写图片描述
    对于suid.sh 文件,所属组具有执行权限,其他用户也具有执行权限,而且在它自己的执行权限x处,显示的是s。所以,当用户运行该文件时,实际上是以文件所有者(在这儿是root)的身份在运行该文件。

    2.SGID(set group id),suid一般用于目录,当用户对该目录具有所有权限时,如果再具有SGID权限的话,此时,如果用户在该目录下创建文件,那么创建的文件的所属组将是该目录的所属组,但还是归创建者用户所有。如下所示
    这里写图片描述
    组用户的执行权限x处,现在显示的是s(s代表组用户有x权限,S代表组用户没有x权限,s和S是为了区分所属用户的x权限),表示该文件具有sgid权限,所以所有用户在sgid目录下,都具有创建文件的权限,那么文件所属组都是sgid文件的所属组(在这儿是root组),但有一个问题就是,用户可以删除其他用户新建的文件,为了解决这个问题,我们接下来看sbit权限

    1. SBIT权限(sticky bit粘滞位),同样的,SBIT权限时在other用户的x执行权限上加了一个t或者T(t和T与上面的s和S的区别相同),如果用户对该文件具有所有权限(r,w,x),而且具有sbit(在other的x权限处为t时)权限,那么该用户就可以在这个文件夹中(图中是sbit文件夹)新建文件,不同用户都能够读取别人的文件,但是不能删除别人的文件。如下图

    这里写图片描述
    其他用户可以进入sbit中,新建文件,能够访问别人的文件,但是不能删除别人的文件。

总结,suid的权限时是4,sgid的权限是2,sbit的权限是1

  • 给文件赋予suid权限

    chmod 4755 suid //直接把4放到最前面即可,后面三位权限就是普通权限

  • 给目录赋予sgid权限

    chmod 2777 sgid

  • 给目录赋予sbit权限

    chmod 1777 sbit

Linux中的权限对应新手来说,比较复杂,希望这篇文章能够帮助到大家。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值