千家信息网

Linux的ACL规则设置——setfacl及getfacl命令的使用详解

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,Linux系统中可以针对组、用户、其他人设置不同的读写执行权限,但是还不够精准,若想给某个特定的用户设置一个独特的权限呢?而这个用户又不是该文件或目录的属组或属组,怎么破?针对特定的某个用户设置权限的
千家信息网最后更新 2026年10月31日Linux的ACL规则设置——setfacl及getfacl命令的使用详解

Linux系统中可以针对组、用户、其他人设置不同的读写执行权限,但是还不够精准,若想给某个特定的用户设置一个独特的权限呢?而这个用户又不是该文件或目录的属组或属组,怎么破?

针对特定的某个用户设置权限的方法如下:

[root@localhost ~]# dmesg | grep -i acl     #查看系统是否可以设置ACL,若可以查到下面标红的字样,则代表没问题。[    1.173259] systemd[1]: systemd 219 running in system mode. (+PAM +AUDIT +SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +'ACL' +XZ +LZ4 -SECCOMP +BLKID +ELFUTILS +KMOD +IDN)[    2.487295] SGI XFS with 'ACL's, security attributes, no debug enabled

1、setfacl--设置ACL规则(针对单一用户或组设置)

setfacl的常用选项如下:

  • -m:设置后续的ACL参数给文件使用,不可与-x一起使用;
  • -x:删除后续的ACL参数,不可与-m一起使用;
  • -b:删除所有的ACL设置参数;
  • -k:删除默认的ACL参数;
  • -R:递归设置ACL,就是包括子目录都会被应用;
  • -d:设置默认ACL参数,只对目录有效,在该目录新建的数据会引用此默认值;

设置举例:

[root@localhost ~]# touch acl_test1      #创建一个测试文件[root@localhost ~]# setfacl -m u:lv:rw acl_test1      #单独赋予用户"lv"读写权限[root@localhost ~]# ll acl_test1 #查看文件属性,在权限栏最后多了一个"+",这就是刚设置的ACL-rw-rw-r--+ 1 root root 0 9月   3 08:45 acl_test1[root@localhost ~]# setfacl -m u::rwx acl_test1     #若u后面不写用户,则表示设置该文件的属主权限[root@localhost ~]# ll acl_test1       #会发现属主的权限变成了rwx。-rwxrw-r--+ 1 root root 0 9月   3 08:45 acl_test1

2、getfacl--查看设置的ACL规则

选项和setfacl基本相同,可以通过man手册来查看具体的使用选项,最主要还是用来查看我们使用setfacl设置的ACL规则;

使用举例:

[root@localhost ~]# getfacl acl_test1      #使用getfacl查看设置的ACL权限# file: acl_test1       #文件名# owner: root          #文件属主# group: root            #文件属组user::rwx              #属主的权限user:lv:rw-              #用户"lv"的权限group::r--               #文件属组的权限mask::rw-               #此文件默认的有效权限#用户或群组所设置的权限必须要存在于mask的权限设置范围内才会生效other::r--                 #其他任何人的权限[root@localhost ~]# ll acl_test1     #使用"ll"命令查看后,进行比较-rwxrw-r--+ 1 root root 0 9月   3 08:45 acl_test1

3、setfacl和getfacl综合使用举例:

#1、针对有效权限mask的设置方式[root@localhost ~]# setfacl -m m:r acl_test1     #设置该文件的权限仅有读权限(r)。[root@localhost ~]# getfacl acl_test1     #查看# file: acl_test1# owner: root# group: rootuser::rwxuser:lv:rw-         #effective:r--    #注释为有效权限只有r(读权限),哪怕用户后面有w(写权限),也不生效group::r--mask::r--   #是因为这里,这里有并且用户也具有的权限,才是有效权限,如这里的"r"权限。other::r--#2、针对特定群组的方式设置权限(删除了原本的文件,又新建了一个acl_test1):[root@localhost ~]# setfacl -m g:mygroup:rx acl_test1     #设置mygroup组有rx权限[root@localhost ~]# getfacl acl_test1     #查看# file: acl_test1# owner: root# group: rootuser::rw-group::r--group:mygroup:r-x                     #这里就是新设置的权限mask::r-xother::r--#3、让myuser1在/usr/local下面一直具有rx的默认权限[root@localhost ~]# setfacl -m d:u:myuser1:rx /usr/local/     #设置权限[root@localhost ~]# getfacl /usr/local/       #查看getfacl: Removing leading '/' from absolute path names# file: usr/local/# owner: root# group: rootuser::rwxgroup::r-xother::r-xdefault:user::rwxdefault:user:myuser1:r-x               #就是这行咯default:group::r-xdefault:mask::r-xdefault:other::r-x#创建一个目录,并查看是否继承了默认权限[root@localhost ~]# cd /usr/local/[root@localhost local]# mkdir test[root@localhost local]# ls -ld test/      #有"+"的权限,说明继承默认权限了drwxr-xr-x+ 2 root root 6 9月   3 09:51 test/[root@localhost local]# getfacl test      #使用getfacl查看# file: test# owner: root# group: rootuser::rwxuser:myuser1:r-xgroup::r-xmask::r-xother::r-xdefault:user::rwxdefault:user:myuser1:r-x              #就是这行咯default:group::r-xdefault:mask::r-xdefault:other::r-x#以下为取消用户的某些ACL规则[root@localhost local]# setfacl -x u:myuser1 /usr/local/     #取消myuser1用户对该目录的ACL规则[root@localhost local]# setfacl -x d:u:myuser1 /usr/local/    #取消递归的ACL规则[root@localhost local]# setfacl -m u:myuser1:- /usr/local    #使myuser1用户无法使用该目录,在权限字段使用"-"表示即可。

-------- 本文至此结束,感谢阅读 --------

权限 用户 文件 规则 目录 有效 参数 就是 方式 系统 递归 命令 不同 独特 相同 精准 不够 主权 代表 原本 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技股 美国互联网保险保险科技 鸠鸠互联网科技 上海互联网科技有限公司 互联网未来科技 嘟嘟瓜互联网科技 汇久创客互联网科技 亿账通互联网科技 济南和联互联网科技有限公司 互联网科技公司的市场部门 团飞科技与伯堂互联网服务平台 汽车互联网创新科技园 中国航天科技大学国际工业互联网 阿大互联网科技有限公司 本届互联网博览会上的黑科技 互联网在线教育科技创业 群盈汇互联网科技有限公司 互联网科技机房 北京瑞云互联网科技有限公司 科技发展第三阶段互联网时代 艾特科技互联网 掌上梦互联网科技 科技互联网创业计划书 恒生科技互联网指数分析 互联网科技实习生岗位职责 厦门比较好的科技互联网公司 彤创互联网科技有限公司 互联网科技大奖都有哪些公司 互联网科技包装股份有限公司上市 科技互联网专业工作会议发言稿
0