linux - ansible文件和目录权限

标签 linux ansible

尝试获得 ansible 文件/目录权限以工作。

在 ansible 中我创建了一个用户:

user: name=testuser shell=/sbin/nologin uid=1234 comment="Test User"

然后我尝试更改文件目录的所有权:

file: path=/etc/myfile state=directory owner=testuser group=testuser mode=0644 recurse=yes

我也试过为文件设置 facl:

acl:
     name: /var/log/audit/audit.log
     entity: filebeat
     etype: user
     permissions: rx
     state: present

观察文件权限和 facl 时,它们似乎设置正确。但是,如果我更改测试用户的 shell 并登录,我发现我实际上并没有 ansible 可能设置的权限。我不断收到“权限被拒绝”消息。

最佳答案

如果我明白你的意思,当你尝试访问目录内容时,你会得到“权限被拒绝”,例如运行 ls -l/etc/myfile 。 这是正确的 *nix 行为,因为您将访问权限设置为 mode=0644

关于目录,执行位允许受影响的用户进入目录,并访问里面的文件和目录。

因此,要允许您的测试用户浏览目录,请至少设置 mode=0744

允许测试用户组 mode=0754 并允许所有人 mode=0755

关于linux - ansible文件和目录权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39373006/

相关文章:

linux - 使用 shell 脚本解析 json

roles - 根据环境定制 ansible 角色

python - Ansible/分子 : service docker daemon/engine won’t start

ansible - 在 Ansible 中循环嵌套字典

linux - Linux 中是否有一个变量显示我上次打开机器的时间?

java - 将复杂的命令放入变量中并作为参数传递给另一个脚本以供稍后运行

java - 从Linux终端上的用户输入读取文件名 - JAVA

python - 两个 Python 程序之间的进程间消息传递

linux - 这是在 ansible 的 conf 文件中进行配置更改的最佳方法

ruby-on-rails - 如何使用 Ansible 检查文件中是否存在行?