标签:dmi 必须 rect 选项 other facl lang 常见 访问
tune2fs –o acl /dev/sdb1
mount –o acl /dev/sdb1 /mnt/test
ACL:设置
setfacl 可以设置ACL权限
setfacl -m u:用户名:rwx -R file|directory
setfacl -m d:u:用户名:rwx -R file|directory
范例:
[root@centos8 data]#ll f1.txt
-rw-r--r-- 1 root root 709 Dec 18 14:37 f1.txt
[root@centos8 data]#setfacl -m u:wang:- f1.txt
[root@centos8 data]#ll
total 4
-rw-r--r--+ 1 root root 709 Dec 18 14:37 f1.txt
ACL:查看
getfacl file |directory
范例:
[root@centos8 data]#getfacl f1.txt
# file: f1.txt
# owner: root
# group: root
user::rw-
user:wang:---
group::r--
mask::r--
other::r--
ACL:删除
setfacl -k dir 删除默认ACL权限
setfacl –b file1清除所有ACL权限
范例:
mount -o acl /directory
getfacl file |directory
setfacl -m u:wang:rwx file|directory
setfacl -m g:admins:rw file| directory
setfacl -x u:wang file |directory
#清除所有ACL权限
setfacl -b file1
#复制file1的acl权限给file2
getfacl file1 | setfacl --set-file=- file2
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权限
setfacl --restore acl.txt
#查看ACL权限
getfacl -R /tmp/dir
mask 权限
mask只影响除所有者和other的之外的人和组的最大权限
mask需要与用户的权限进行逻辑与运算后,才能变成有限的权限(Effective Permission)
用户或组的设置必须存在于mask权限设定范围内才会生效
范例:
setfacl -m mask::rx file
范例:
[root@centos8 data]#ll f1.txt
-rw-rw-r--+ 1 root root 728 Dec 18 14:51 f1.txt
[root@centos8 data]#chmod g=r f1.txt
[root@centos8 data]#ll f1.txt
-rw-r--r--+ 1 root root 728 Dec 18 14:51 f1.txt
[root@centos8 data]#getfacl f1.txt “”
# file: f1.txt
# owner: root
# group: root
user::rwuser:
wang:---
group::r--
group:admins:-w- #effective:---
mask::r--
other::r--
[root@centos8 data]#setfacl -m mask::rw f1.txt
[root@centos8 data]#getfacl f1.txt
# file: f1.txt
# owner: root
# group: root
user::rwuser:
wang:---
group::r--
group:admins:-wmask::
rwother::
r--
[root@centos8 data]#setfacl -m u:wang:rwx f1.txt
[root@centos8 data]#getfacl f1.txt
# file: f1.txt
# owner: root
# group: root
user::rwuser:
wang:rwx
group::r--
group:admins:-wmask::
rwx
other::r--
[root@centos8 data]#setfacl -m mask::rw f1.txt
[root@centos8 data]#getfacl f1.txt
# file: f1.txt
# owner: root
# group: root
user::rwuser:
wang:rwx #effective:rwgroup::
r--
group:admins:-wmask::
rwother::
r--
--set选项会把原有的ACL项都删除,用新的替代,需要注意的是一定要包含UGO的设置,不能象-m一样
只是添加ACL就可以
范例:
setfacl --set u::rw,u:wang:rw,g::r,o::- file1
在/testdir/dir里创建的新文件自动属于webs组,组apps的成员如:
tomcat能对这些新文件有读写权限,组dbs的成员如:mysql只能对新文
件有读权限,其它用户(不属于webs,apps,dbs)不能访问这个文件夹
mkdir /testdir/dir -pv ; chown -R root:webs /testdir/dir; chmod 2750 -R /testdir/dir
setfacl -m g:apps:rwx -R /testdir/dir
setfacl -m g:dbs:rx -R /testdir/dir
备份/testdir/dir里所有文件的ACL权限到/root/acl.txt中,清除
/testdir/dir中所有ACL权限,最后还原ACL权限
#备份
cd /testdir/ ; getfacl -R dir/ > /root/acl.txt
#清除
setfacl -b dir/
#恢复
setfacl -R --set-file=/opt/acl.txt dir/
标签:dmi 必须 rect 选项 other facl lang 常见 访问
原文地址:https://www.cnblogs.com/Coolcoc/p/12607381.html