当前位置:网站首页>14、用户、组和权限(14)
14、用户、组和权限(14)
2022-07-05 18:44:00 【51CTO】
文件系统的特殊权限
linux中有三种常见权限,还有三种特殊权限:suid,sgid,sticky
特殊权限suid
前提:进程有属主和属组,文件有属主和属组 (占据user的执行权限位, 数字法为4)
1、任何进程一个可执行程序文件能不能启动为进程,取决于发起者对程序文件是否具有执行权限
2、启动为进程之后,其进程属主为发起者,进程属组为发起者所属组
3、进程访问文件时的权限,取决于进程的发起者
a、进程的发起者,同文件的属主:则应用文件属主权限
b、进程的发起者,属于文件属组:则应用文件属组权限
c、应用文件其他权限
二进制的可执行文件上suid权限功能
任何一个可执行文件能不能启动为进程:取决于发起者对程序文件是否有执行权限
启动为进程之后,其进程的属主为原程序文件的属主
suid只对二进制可执行程序有效
suid设置在目录上无意义
suid 权限设定
chmod u+s file... chmod 6xxx file chmod u-s file ...


去掉s权限后,出现更改密码报错

重新赋予suid权限后可更新成功(结论:具有suid的权限;lgw用户调用passwd命令时,能临时获取到/usr/bin/passwd的属主的权限然后对shadows进行更新)

特殊权限sgid
二进制可执行文件上的sgid权限功能(占据group的执行权限位, 数字法为2)
任何一个可执行程序文件能不能驱动为进程:取决于发起者对程序文件是否有执行权限
启动为进程之后,其进程的属组为源程序文件的属主
sgid权限的设定 chmod g+s file... chmod 2xxx file chmod g-s file...
目录上sgid权限功能:默认情况下,用户创建文件时,其属组为此用户所属的主组,一但某目录被设定为sgid,则对此目录有写权限的用户在此目录中创建的文件所属的组为此目录的属组,通常用于创建一个协作目录。


特殊权限sticky
具有写权限的目录通常用户可以删除该目录中的任何文件,无论该文件的权限或拥有权限在马艳玲设置sticky位,只有文件的所有者或root可以删除该文件。(占据other的执行权限位, 数字法为1)
sticky权限设定 chmod o+t dir chmod 1xxx dir chmod o-t dir
other对/tmp目录具有写权限,理论上可以删除该目录下任何文件,但是加入sticky权限后,不能


设定文件的特殊属性
设定文件的特殊属性,可以访问root用户误操作或修改文件
不能删除,改名,更改 chattr +i

只能追加内容,不能删除,改名 chattr +a

列出特定属性 lsattr

访问控制列表(ACL)
acl:access control list 实现灵活的权限管理
除了文件所属主、所属组和other,可以对更多用户进行权限设置
centos7默认创建的xfs和ext4文件系统具有acl功能
tune2fs -o acl /dev/sdb1 mount -o acl /dev/sdb1 /mnt
acl生效顺序:所有者、自定义用户、所属组|自定义组,其他人
相关命令setfacl、getfacl
setfacl 设置acl权限
getfacl 查看设置的acl权限



mask权限
mask只影响所有者和other之外的人和组的最大权限
mask需要与用户的前行进行逻辑与运算后,才能变成有效的权限(effectice permission)
用户或组的设置必须存在于mask权限设定范围内才会生效
setfacl -m mask::rx file


other设置了acl权限为rwx,导致mask也为rmx


setfacl --set u::rw,u:wang:rw,g::r,o::- file1 --setfacl选项会把原有的acl项都删除,用新的替代,需要注意的是一定要宝行ugo的设置,不能像-m一样只是添加acl就可以
备份还原acl
主要文件操作命令为cp和mv都支持acl,只要cp命令需要加上-p参数,但是tar等常见的备份工具是不会保留目录和文件的acl信息
备份acl getfacl -R /tmp/dir > acl.txt
消除acl setfacl -R -b /tmp/dir
还原acl setfacl -R --set-file=acl.txt /tmp/dir
查看acl getfacl -R /tmp/dir

边栏推荐
- What are the cache interfaces of nailing open platform applet API?
- MYSQL中 find_in_set() 函数用法详解
- Thoroughly understand why network i/o is blocked?
- 达梦数据库udf实现
- 从外卖点单浅谈伪需求
- RPC protocol details
- Talking about fake demand from takeout order
- Web3.0时代来了,看天翼云存储资源盘活系统如何赋能新基建(下)
- Video fusion cloud platform easycvr adds multi-level grouping, which can flexibly manage access devices
- 【Autosar 十四 启动流程详解】
猜你喜欢
![2022 latest intermediate and advanced Android interview questions, [principle + practice + Video + source code]](/img/c9/f4ab4578029cf043155a5811a64489.png)
2022 latest intermediate and advanced Android interview questions, [principle + practice + Video + source code]

Low code practice of xtransfer, a cross-border payment platform: how to integrate with other medium-sized platforms is the core
![2022 the most complete Tencent background automation testing and continuous deployment practice in the whole network [10000 words]](/img/4b/90f07cd681b1e0595fc06c9429b338.jpg)
2022 the most complete Tencent background automation testing and continuous deployment practice in the whole network [10000 words]

MySQL数据库索引教程(超详细)

Oracle Chinese sorting Oracle Chinese field sorting

Technology sharing | common interface protocol analysis

2022 latest Android interview written examination, an Android programmer's interview experience

Shang Silicon Valley Shang preferred project tutorial release

彻底理解为什么网络 I/O 会被阻塞?

UDF implementation of Dameng database
随机推荐
R语言使用lubridate包处理日期和时间数据实战
Blue sky drawing bed Apple quick instructions
cf:B. Almost Ternary Matrix【對稱 + 找規律 + 構造 + 我是構造垃圾】
Web3.0时代来了,看天翼云存储资源盘活系统如何赋能新基建(下)
5. 数据访问 - EntityFramework集成
5. Data access - entityframework integration
All you want to know about clothing ERP is here
2022年阿里Android高级面试题分享,2022阿里手淘Android面试题目
A2L file parsing based on CAN bus (3)
Simple query cost estimation
中文版Postman?功能真心强大!
R语言可视化散点图(scatter plot)图、为图中的部分数据点添加标签、始终显示所有标签,即使它们有太多重叠、ggrepel包来帮忙
蚂蚁集团开源可信隐私计算框架「隐语」:开放、通用
AI open2022 | overview of recommendation systems based on heterogeneous information networks: concepts, methods, applications and resources
尚硅谷尚优选项目教程发布
【Autosar 十四 启动流程详解】
Quickly generate IPA package
XML basic knowledge concept
视频融合云平台EasyCVR增加多级分组,可灵活管理接入设备
c语言简便实现链表增删改查「建议收藏」