IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

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

    夜行人发表于 2016-04-28 08:46:27
    love 0

    背景

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

    优化

    方法一

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

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

    方法二

    不是好办法

    chown -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


沪ICP备19023445号-2号
友情链接