私は、ファイルを作成し、簡単なansibleタスクがあります。Ansible許可問題
- name: create fake file
file:
name: /opt/refdata/PROD02/roman.delete
state: touch
を私は公開鍵/秘密鍵を生成し、私がターゲットホスト上として実行しているユーザーのためのauthorized_keys2する公共の1を追加しました。私は、SSHやPythonの問題を持っているかどうかを確認するためにそう
failed: [experiment01] => {"failed": true, "parsed": false}
Traceback (most recent call last):
File "/home/acplus_uat01/.ansible/tmp/ansible-tmp-1441921944.69-3869708445827/file", line 1999, in <module>
main()
File "/home/acplus_uat01/.ansible/tmp/ansible-tmp-1441921944.69-3869708445827/file", line 372, in main
open(path, 'w').close()
IOError: [Errno 2] No such file or directory: '/opt/refdata/PROD02/roman.delete'
、私はこれを試してみました - 私は1つのラインでのpythonファイル作成:
私はそれを実行しようとすると、私は次のエラーを取得する
をopen('/opt/refdata/PROD02/roman.delete', 'w').close()
と私はansible実行するのと同じ場所、同じユーザーからこれを実行しました:
cat test2.py | ssh -i ~/.ssh/myPrivateKey -q [email protected] python -
をし、それが作成 ファイル。
私の質問は - 問題はどこにありますか、なぜファイルを作成できないのですか?
私は脚本を実行する方法はこれです:
ansible-playbook -i inventory/prod/ acc.yml -v --vault-password-file=~/.ansible-vault-pw --private-key ~/.ssh/myPrivateKey
は私も働いていたの/ tmp /とansibleでファイルを作成しようとしました。
編集:もう1つのアップデート - 私は、ファイルをworld writable(777)に書き込んでいて、ファイルを作成しました。だから、質問です -
cat test2.py | ssh -i ~/.ssh/myPrivateKey -q [email protected] python -
作品というAnsibleに異なっあるものとAnsibleを通じて、本質的に同じことをやっていません。
。 – nikobelia
私は単純に/ tmp/fooをAnipal内からタッチして、/ tmp/fooのアクセス権と所有権を調べて、ファイルがAnipalによって期待される属性で作成されていることを確認します。 –
これは私が期待する属性で作成されています - 正しいユーザー/グループ –