ACL访问控制 getfacl 、setfacl 命令
ACL是Access Control List 访问控制列表的缩写,在Linux中ACL可以对单一用户或组的设定访问文件的权限,其优势为让权限控制更加精细化,如:marking.txt文件为市场部文件,管理员拥有该文件的rwx权限,市场部组也拥有该文件的rwx权限,其他人无权限,新招的市场部新员工小王正处于试用期,管理员不想给小王对marking.txt文件的全部权限,只想给他查看该文件的权限,那么这种情况下,使用我们传统的属主属组other权限就无法做到这一点,这时我们可以考虑使用ACL访问控制的解决办法。
getfacl 命令用于查看文件的ACL策略及权限,其语法格式如下:
getfacl [选项] file
常用选项:
无,一般不接选项即可;
演示示例:
[root@iflytek ~]# getfacl file1
# file: file1
# owner: root
# group: nginx
user::rwx
group::r--
other::r--
setfacl命令用于给文件针对某个用户或某个组设置ACL策略,其语法格式如下:
setfacl [选项] mode file
常用选项:
-m :修改acl策略
-x :删除某个用户或组的权限
-b :删除所有的acl策略
-R :递归,级联
mode表示权限设置:
u:用户名:权限 例如 u:oracle:rw
g:组名:权限 例如 u:macking:r
演示示例:
[root@iflytek /]# ll file1 #先查看文件的权限
-rwxrwx--- 1 root root 7 Oct 5 22:32 file1
[root@iflytek /]# su oracle #切换到Oracle用户,Oracle用户属于other类型
[oracle@iflytek /]$ cat file1 #显示没有权限查看
cat: file1: Permission denied
[root@iflytek /]# getfacl file1 #查看原来的权限位
# file: file1
# owner: root
# group: root
user::rwx
group::rwx
other::---[root@iflytek /]# setfacl -m u:oracle:wrx file1 #给Oracle用户设置acl策略,使之能读写执行file1文件
[root@iflytek /]# getfacl file1
# file: file1
# owner: root
# group: root
user::rwx
user:oracle:rwx #这里就加多了一行,增加了Oracle的权限
group::rwx
mask::rwx
other::---[root@iflytek /]# su oracle
[oracle@iflytek /]$ cat file1 #oracle用户能正常查看file1文件了
dsdsds
[oracle@iflytek /]$ ll file1
-rwxrwx---+ 1 root root 7 Oct 5 22:32 file1 #发现权限为多了一个+号
[oracle@iflytek /]$
[root@iflytek /]# setfacl -b file1 #删除所有ACL策略
[root@iflytek /]# getfacl file1 #查看删除acl策略后的文件发现没有了acl策略了
# file: file1
# owner: root
# group: root
user::rwx
group::rwx
other::---
[root@iflytek /]# setfacl -m g:macking:r file1 #对macking组设置acl策略
[root@iflytek /]# getfacl file1
# file: file1
# owner: root
# group: root
user::rwx
group::rwx #这个是原来的属组的权限的,不要看错哦
group:macking:r-- #这是我们刚才对macking组添加的acl策略
mask::rwx
other::---[root@iflytek /]# setfacl -R -m g:macking:r /usr/local/nginx/ #-R表示递归,级联[root@iflytek /]# setfacl -x u:oracle file1 #删除某个用户的acl策略
[root@iflytek /]# setfacl -x g:dba file1 #删除某个组的acl策略
总结
当无法使用传统的文件权限控制时我们可以使用ACL访问控制策略实现权限的精细化控制,如,marking.txt文件为市场部文件,管理员拥有该文件的rwx权限,市场部组也拥有该文件的rwx权限,其他人无权限,新招的市场部新员工小王正处于试用期,管理员不想给小王对marking.txt文件的全部权限,只想给他查看该文件的权限。
1、getfacl [选项] file1 #查看文件的acl策略
2、setfacl -m u:oracle:rw file1 #给予Oracle用户对file1文件的rw权限
3、setfacl -m g:macking:r file1 #给予macking组对file1文件的r权限
4、setfacl -R -m g:macking:rwx /usr/local/nginx/ #递归级联给予macking组对nginx目录的rwx权限
5、setfacl -x u:oracle file1 #删除Oracle用户对file1文件的rw权限
6、setfacl -x g:macking file1 #删除macking组对file1文件的权限
7、setfacl -b file1 #全部删除file1文件的acl策略
ACL访问控制 getfacl 、setfacl 命令相关推荐
- 21.ACL 访问控制权限详解,setfacl,getfacl,setfacl -m,setfacl -d,setfacl -k,setfacl -x,mask等实操详解
ACL 访问控制权限详解,setfacl,getfacl,setfacl -m,setfacl -d,setfacl -k,setfacl -x,mask等实操详解 文章目录 ACL (访问控制权限) ...
- Linux命令之getfacl和setfacl命令
一.命令简介 getfacl命令来自于英文词组"get file access control list"的缩写,其功能是用于显示文件或目录的ACL策略.对指定的文件或目录进行 ...
- setfacl 权限导出_getfacl命令查看文件访问控制列表信息setfacl命令设置文件访问控制列表...
1.释义 getfacl命令查看文件访问控制列表信息, 2.系统帮助 2.1.getfacl命令 getfacl 2.2.51 -- get file access control lists Usa ...
- linux中setfacl命令,Linux命令之:setfacl和getfacl
命令总结之:setfacl和getfacl acl:access control list,实现灵活的权限管理 除了文件的所有者,所属组合其他人,可以对更多的用户设置权限 acl生效顺序:所有者.自定 ...
- 路由器ACL访问控制列表概念及常用命令
ACL访问控制列表 ACL概述 (1).ACL全称访问控制列表(Access Control List). (2).基本原理:ACL使用包过滤技术,在路由器上读取第三层及第四层包头中的信息(如源地址. ...
- Linux 访问文件的acl信息,linux文件权限管理与ACL访问控制列表
一.文件属性 1.文件属性: 文件属性操作 chown : change owner ,设置文件所有者 chgrp : change group ,设置文件的属组 文件属主修改: chown 格式 ...
- 【Linux】一步一步学Linux——setfacl命令(117)
00. 目录 文章目录 00. 目录 01. 命令概述 02. 命令格式 03. 常用选项 04. ACL访问控制详解 05. 参考示例 06. 附录 01. 命令概述 setfacl的英文全称是&q ...
- setfacl 权限导出_Linux如何使用setfacl命令创建权限文件
setfacl是Linux下设置文件访问控制列表的命令,可用来创建文件,能够继承目录的权限,有些功能类似于chmod命令,下面小编就给大家介绍下Linux使用setfacl命令创建权限文件的方法,一起 ...
- setfacl命令基本用法
setfacl命令可以用来细分linux下的文件权限. chmod命令可以把文件权限分为u,g,o三个组,而setfacl可以对每一个文件或目录设置更精确的文件权限. 换句话说,setfacl可以更精 ...
- Linux 命令(174)—— setfacl 命令
文章目录 1.命令简介 2.命令格式 3.选项说明 4.ACL 介绍 4.1 ACL 组成 4.2 ACL 设置 4.3 ACL_MASK 和 Effective permission 4.4 Def ...
最新文章
- jsp是在html中添加什么作用域,JSP九个内置对象 四大作用域 动作指令
- python编程if语法-讲解Python中if语句的嵌套用法
- 在网上常听到说CEO CTO CIO CGO COO CFO什么什么..现在了解了一下..呵呵
- linux下的cat命令
- 二:Go编程语言规范-类型
- spring mvc 基于表单的认证过程及cookie应用和session管理
- Python+OpenGL使用鼠标选择模型不同组成部分
- prepared statement mysql_MySQL之 Statement实现及PreparedStatement实现
- win10 电脑桌面任务栏点击无反应
- iOS_CLLocation定位
- Springboot 整合activiti及使用案例
- 商品秒杀优化流程总结
- 论文公式编辑比较麻烦,试试截图快速识别并编辑公式!
- Java 9、10、11,谁才是Java程序员的本命?
- linux进程数和句柄数
- 51nod3241 小明和他的同学们
- GameFi独角兽区块帝国,今日开启全球IDO
- 遇到CPU Exception,我该怎么办?
- 外包人员:互联网公司【二等公民】...
- 【申报通知】关于组织开展广东省2022年高新技术企业认定工作的通知
热门文章
- 光盘文件导入服务器,web服务器 光盘文件
- C语言合法常量123L,C语言综合习(最终版).doc
- 通过mysqladmin监控MySQL数据的服务器状态
- Python+数据库+前端+Django
- 关于jQuery、AJAX、JSON(一)
- 物联网时代的技术迷雾
- [Luogu] 被污染的河流
- Js获取移动设备分辨率
- C#:String.Format数字格式化输出 {0:N2} {0:D2} {0:C2}...
- jquery鼠标右键事件