我正在使用lineinfile来更新configuration文件。 该文件存在, ansible_ssh_user拥有该文件并具有写入权限,但包含的目录由root拥有。 当我的任务运行时,我的错误:
目标目录(/父/目录/名称)不能由当前用户写入。
我可以使用vim手工编辑文件,我的lineinfile任务包括create=no ,所以我不明白为什么Ansible需要向父目录写入权限。 有什么我失踪? 有没有办法允许可以写入文件而不授予它所在目录的权限?
PS – 我真的不想在这个剧本中使用become或sudo ; 它的目的是一个简单的手册,而不必input密码。
使用源码,卢克! 🙂
如果查看lineinfile模块的源代码 ,可以看到它将更改写入临时文件,然后将primefaces文件复制到目标文件名,覆盖旧版本的文件。
您正在运行的用户将需要父目录的写权限。