用ACLS去控制访问文件

本文详细介绍了如何使用ACL(访问控制列表)进行文件和目录的权限管理。内容涵盖ACL的基本概念、如何通过getfacl和setfacl命令设置及查看文件的ACL、以及如何通过mask来设定最高权限。同时,还介绍了默认ACL的概念及其对新创建文件的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ACLs可以针对多个用户以及群组,其他人做出权限控制。文件系统需要挂载被ACL支持。XFS文件系统支持ACL。EXt4在7版本中默认激活ACL.但在更早的版本需要使用acl选项去挂载申请。
在这里插入图片描述
上图第十个字符.代表已经有了acl.+表示已经设置ALC。文件的owner可以对文件设置ACL.
getfacl:查看文件的acl设置。
在这里插入图片描述
-R 递归,可以查看目录里面的所有文件ACL
Mask:设置最高权限给指定的用户,group 拥有者和指定组。不会对owner和其他用户产生影响。
在这里插入图片描述
如:mask 为r-x 。那么其他用户以及其他组的rwx权限中,都没有w权限。
当做了特殊权限(suid,sgid,stick)是,会出现默认用户。defaulst:u:redhat:rw /directory
修改ACL -m 修改 -R 递归 -x 删除 -b 删除所有的ACL

setfacl -m u:name:rx file #对用户ACL
setfacl 	 -m g:name:rw file #对组ACL
setfacl -m u::rw,g::rx,o::- file #用 , 逗号可以对用户,组等做出ACL
setfacl -m m::rx file #修改mask最高权限
setfacl -x u:name,g:name file #删除ACL对应的用户和组
serfacl -b file #删除该文件的ACL

Chmod 没有影响ACL设置所有组的权限,但会更新ACL mask。
ACL other和普通other权限等同。

getfacl file-A | setfacl --set-file=- file-B #B文件将会有A文件一样的ACL设置

在这里插入图片描述
控制默认ACL文件权限。
一个目录有默认ACL,将会对新创建的文件或者子目录自动设置。一个目录只用标准的ACL去访问控制。默认ACL没有采取对目录访问控制,只是继续。

setfacl -m d:u:name:rx directory #增加指定用户只要read权限和执行权限。

当对目录设置默认ACL时,确定用户将会对子目录访问包括执行权限。用户将不会自动获取执行权限在最近新创建文件不像新目录,新创的文件ACL mask为rw-.

setfacl -x d:u:name directory #删除默认指定用户ACL

-k 删除默认ACL。-b 删除所有的ACL。

请珍惜劳动成果,支持原创,欢迎点赞或者关注收藏,你每一次的点赞和收藏都是作者的动力,内容如有问题请私信随时联系作者,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小Eason哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值