You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Ansible为目录设置多个用户组的访问权限

实现多用户组目录权限配置方案

Linux原生文件权限体系仅支持单属主、单属组,要为第二个用户组td-agent开放权限,推荐使用ACL(访问控制列表)实现,这是最安全且不影响原有权限配置的方案,操作步骤如下:

  1. 先确认系统安装ACL依赖包,Ansible配置示例:
# RHEL/CentOS系列系统用yum,Debian/Ubuntu系列替换为apt模块即可
- name: Install acl dependency package
  yum:
    name: acl
    state: present
  1. 使用Ansible的acl模块为td-agent组递归配置/app目录的读、执行权限(目录需要执行权限才能进入访问内部文件),如果需要后续新建的文件/目录也自动继承该权限,可添加默认ACL规则,配置示例:
- name: Grant td-agent group access permission for /app
  acl:
    path: /app
    entity: td-agent
    etype: group
    # 大写X代表仅为目录添加执行权限,不会给普通文件额外添加执行位,适配日志目录场景
    permissions: rX
    recursive: yes
    # 新增default参数则规则会继承到路径下新创建的文件/目录
    default: yes
    state: present

配置完成后可通过getfacl /app/app1/product/001.log命令验证权限是否生效。

mode: o+rx的权限变更说明

使用o+rx这种符号模式修改权限时,仅会修改其他用户权限位,为其他用户新增读、执行权限,不会改动属主、属组的现有权限位,所以app_user和app_group的原有权限不会发生变化。
但该操作存在安全风险:会放开系统内所有普通用户对/app目录的读访问权限,不符合最小权限原则,不推荐使用该方式满足td-agent的访问需求。

内容的提问来源于stack exchange,提问作者Miantian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 11:15:02