【Linux】文件权限以及特殊权限(SUID、SGID)

一.权限组

Linux系统中的每个文件和目录都有三个权限组
user 拥有这个文件或目录的人的权限
group 是分配给文件或目录的组的组权限
other所有用户都拥有的权限

二.权限

权限分为read write execute

因此使用ls -l时会看到类似
drwxr-xr-x 14 ubuntu ubuntu 4096 May 9 23:23 curl-7

他表示的含义是
d目录,如果这里是一个破折号,那么就表示的是文件
rwx表示user的权限,而这个owner就是后面的ubuntu
xr表示group权限,这个group就是后面第二个ubuntu
x表示owner权限,只有执行权

三.更改权限

1.chown(更改权限组)

chown 想改变的所有者 filename

例如

想要把这个ubuntu所有者改变成root所有

那么只需要chown root curl-7.74.0

但是现在并没有改变组

想改变组只需要chown root:root curl-7.74.0

2.chmod

r=4
w=2
x=1

那么刚才的例子drwxr-xr-x

就是r+w+x=7,r+x=5。也就是755

我们可以通过chmod 数字 文件名来设置文件权限

还有另外一种写法
chmod whowhatwhich 文件或目录
who谁user、group、other、all
what干什么(+,-,=)(增加,减少,设置精确的权限)
whichr、w、x

比方说chmod ug+rw test.txt就是增加了用户和组的读写权限

四.特殊权限

特殊权限是除用户 、 组和其他权限之外的第四个访问级别。特殊权限允许在标准权限集之外拥有额外的权限(顾名思义)。之前讨论过的每个访问级别都有一个特殊权限选项

1.user+s(特殊)

通常记为SUID,这是用户访问级别的特殊权限

作用主要是:让普通用户能完成一些需要特权的操作(如修改密码),同时又不需要直接给 root 权限,保证系统安全。

我们来看一下passwd文件

复制代码
-rwsr-xr-x 1 root root 59976 Nov 24  2022 /usr/bin/passwd

rwsrw表示所有者(root)可读写。s 表示 其他用户在拥有执行权限的前提下,运行程序时将以 root 的身份执行。

2.group+s

在文件上使用时,允许以拥有该文件的身份执行此文件

如果在目录中设置,则在该目录中创建的任何文件的组所有权都将设置为目录所有者的组所有权

3.other+t

最后一项特殊权限被称为粘滞位。此权限不会影响单个文件。但是,在目录级别,它限制文件的删除。只有文件的所有者 ( root )才能删除该目录中的文件。一个常见的例子是 /tmp 目录

复制代码
drwxrwxrwt 12 root root 4096 Jul  2 11:57 /tmp

五.设置特殊权限

1.使用符号方法

复制代码
chmod g+s test/
设置SGID

2.使用数值方法

我们需要在chmod命令中传递第四位数字
SUID =4
SGID = 2
Sticky=1

复制代码
chmod X### test/
x是特殊权限数字
相关推荐
sdm0704272 小时前
yum和开发工具vim/gcc
linux·服务器·centos
如意.7598 小时前
【Linux开发工具实战】Git、GDB与CGDB从入门到精通
linux·运维·git
Thera7778 小时前
C++ 高性能时间轮定时器:从单例设计到 Linux timerfd 深度优化
linux·开发语言·c++
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ9 小时前
Linux 查询某进程文件所在路径 命令
linux·运维·服务器
上海云盾-小余10 小时前
游戏盾与应用防护联动:一站式业务安全防御体系搭建指南
安全·游戏
安当加密11 小时前
无需改 PAM!轻量级 RADIUS + ASP身份认证系统 实现 Linux 登录双因子认证
linux·运维·服务器
dashizhi201511 小时前
服务器共享禁止保存到本地磁盘、共享文件禁止另存为本地磁盘、移动硬盘等
运维·网络·stm32·安全·电脑
内卷焦虑人士11 小时前
Windows安装WSL2+Ubuntu 22.04
linux·windows·ubuntu
网教盟人才服务平台12 小时前
2026数字中国创新大赛-数字安全赛道全面启动!
网络·安全
九河云12 小时前
云上安全运营中心(SOC)建设:从被动防御到主动狩猎
大数据·人工智能·安全·架构·数字化转型