[个人笔记] Linux facl扩展权限的用法

Linux - 运维篇

第五章 Linux facl扩展权限的用法


系列文章回顾

第一章 Linux扩容LVM分区
第二章 Linux虚拟机安装VMware Tools插件
第三章 ssh-keygen和openssl工具的使用
第四章 Linux配置NTP时间同步


Linux facl扩展权限的用法

仅实验CentOS 7.X系列的Linux操作系统

bash 复制代码
[root@localhost ~]# getfacl		# 获取ACL权限列表, CentOS系统默认自带命令
[root@localhost ~]# setfacl		# 设置ACL权限列表, CentOS系统默认自带命令
[root@localhost ~]# man getfacl	# 查看手册
[root@localhost ~]# man setfacl	# 查看手册

[root@localhost ~]# chmod		# 设置权限列表, CentOS系统默认自带命令
[root@localhost ~]# man chmod	# 查看手册

getfacl

bash 复制代码
getfacl [path]		# 查看 文件/目录 的acl权限列表

setfacl

bash 复制代码
### -R 递归
### -d 设置默认权限
### -m 设置当前权限
### -b 清除当前权限(包含默认权限)
### -k 清除默认权限

setfacl -Rb [path]		# 清除目录下的facl权限	-R: 递归
setfacl -Rm u::7,g::7,o::0 [path]		# 设置当前 文件/目录 的文件权限 (后新增的 文件/目录 无效)
setfacl -Rdm u::7,g::7,o::0 [path]		# 设置目录下后新增的 文件/目录 的文件权限 (默认权限, 适用于自动继承)

chmod

bash 复制代码
### r --> 4		读
### w --> 2		写
### x --> 1		执行
### u	所有者
### g	所属组
### o	其他用户

chmod u=rwx,g=rw,o=r [path]		# 设置文件权限, 所有者:读写执行,所属组:读写,其他用户:读 (后新增的 文件/目录 无效)
chmod 754 [path]
chmod -R 755 [path]		# 递归设置 目录下所有的 文件/目录 的文件权限
chmod u+s [path]		# 设置 执行此文件时 赋予文件所有者的权限, 可执行文件显示s, 不可执行文件显示S
chmod g+s [path]		# 设置path目录下新增的 文件/目录 的所属组是父目录的所属组. 适用于自动继承
chmod o+t [path]		# 设置文件只能被所有者和root删除

练习

bash 复制代码
find ./ -type d | xargs -I {} chmod 775 {}		# 查找当前目录下的 目录(d) 并设置文件权限 (后新增的 目录 无效)
find ./ -type f | xargs -I {} chmod 664 {}		# 查找当前目录下的 文件(f) 并设置文件权限 (后新增的 文件 无效)


### 案例: 
### 1. 递归设置 path目录 的所有者为 devops001, 所属组为www
### 2. 所有文件的权限都是 所有者: 读写, 所属组: 读写, 其他用户: 只读
### 3. 所有目录的权限都是 所有者: 读写执行, 所属组: 读写执行, 其他用户: 读写
### 4. 后续新增的 文件/目录 自动继承父目录的所属组, 新增的 文件 权限是660, 新增的 目录 权限是770
### 5. 所有文件都是只有 所有者和root用户才能删除
### 6. 使用chown、chmod、setfacl实现

chown -R devops001:www [path]
find [path]/ -type d | xargs -I {} setfacl -m u::rwx,g::rwx,o::rw {}		# 递归所有 目录 设置当前权限 
find [path]/ -type d | xargs -I {} setfacl -dm u::rwx,g::rwx,o::rx {}		# 递归所有 目录 设置默认权限, 适用于新增的 文件/目录
find [path]/ -type f | xargs -I {} setfacl -m u::rw,g::rw,o::r {}			# 递归所有 文件 设置当前权限
find [path]/ -type d | xargs -I {} chmod 3770 {}		# 递归所有 目录 设置权限, 新增的 文件/目录 自动继承父目录的所属组, 文件 仅所有者和root用户才能删除

参考来源

相关推荐
大树88几秒前
一滴冷却液,烧掉2000万算力
大数据·运维·服务器·人工智能
qq_366566508 分钟前
内容出海工具链搭建实战:从0到CI/CD自动化
运维·ci/cd·自动化
李白的天不白20 分钟前
服务器地址在哪里 pwd
运维·前端·nginx
AC赳赳老秦22 分钟前
技术文章素材收集自动化:用 OpenClaw 自动爬取行业资讯、技术热点、优质文章
运维·开发语言·python·自动化·wpf·deepseek·openclaw
艾莉丝努力练剑25 分钟前
【Linux网络】网络层IP协议(二):网段划分
linux·运维·服务器·网络·tcp/ip·udp
sbjdhjd25 分钟前
04 (下) | K8S微服务实战:从 Service 到金丝雀发布
运维·微服务·云原生·kubernetes·开源·云计算·excel
江华森25 分钟前
Jenkins 运维管理实战博客大纲
运维·jenkins
艾莉丝努力练剑27 分钟前
【Linux网络】网络层IP协议(三):网段划分(下)
linux·运维·服务器·网络·tcp/ip
CodeStats30 分钟前
从 CPU 指令执行到权限管控:对比三大操作系统,梳理编程语言演进,解读 HTML/CSS/JS 浏览器解析的共通底层逻辑
java·linux·windows
尔染君子30 分钟前
嵌入式Linux驱动开发(基于树莓派rasberrypi 5的LED驱动开发)
linux·运维·驱动开发