寻觅生命中的那一片浅草......

setfacl设置多个用户或者组的权限

背景

过往,大家是root用户,scp/rz文件到远程机器,读写都没有问题,但目前大家都是用个人的普通账号去登录,需要scp/rz更新文件的时候,就比较麻烦:需要先scp/rz到一个临时目录,再通过sudo把文件mv过去

优化

方法一

如果客户端是Linux,比较好做,大不了写个脚本,把scp和mv的步骤都写进去,就可以了。

如果客户端是win,想通过rz上传,服务器端就需要先cd到临时目录,上传了,再通过sudo把文件mv过去。

方法二

不是好办法

chmod -R 777 xxx

方法三

这里再介绍一个方法:setfacl

大家都知道chown只能对一个用户和一个组设置权限,当遇到多组的情况,就处理不了,而setfacl则可以处理多用户,多组

# 先设置开启acl,CentOS系统,默认应该是支持的
# 但我之前遇到某云的系统,defaults挂载参数,却需要再添加acl才可以
mount -o acl /data

# 设置johncan组对test_acl可以读写,这里可以设置任意多个组
cd /data/backup/tmp
setfacl -m g:johncan:rwx -R test_acl/

# 获取权限
getfacl test_acl/

# 以下为输出内容
# file: test_acl/
# owner: root
# group: root
# flags: --t
user::rwx
group::rwx
group:johncan:rwx
mask::rwx
other::rwx
2024年四月
« 5月    
1234567
891011121314
15161718192021
22232425262728
2930