2
我正在構建一個Ansible操作手冊,我將Vagrant用作測試平臺,然後再將該操作手冊應用到遠程服務器。Ansible同步無法創建目錄作爲根
我有問題讓Synchronize工作。作爲部署的一部分,我有一些需要移動到服務器的文件。
這是我的劇本。我將shell: whoami
放在那裏以確保命令以root身份運行。
---
- hosts: all
sudo: yes
tasks:
- name: who am I
shell: whoami
- name: Sync up www folder
synchronize: src=www dest=/var
當我運行此我得到這個:
failed: [default] => {"cmd": "rsync --delay-updates -FF --compress --archive --rsh 'ssh -i /Users/dan/.vagrant.d/insecure_private_key -o StrictHostKeyChecking=no -o Port=2222' --out-format='<<CHANGED>>%i %n%L' www [email protected]:/var", "failed": true, "rc": 23}
msg: rsync: recv_generator: mkdir "/var/www" failed: Permission denied (13)
*** Skipping any contents from this failed directory ***
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1236) [sender=3.1.1]
FATAL: all hosts have already failed -- aborting
如果我提供sudo: yes
不應該所有的命令以root身份運行,包括同步?
喜歡關於正確權限的建議。所以我試了一下,但是我得到了'msg:不支持的module:user'參數。 – Daniel 2014-10-12 03:30:37
將'user'更改爲'owner',它工作。 – Daniel 2014-10-12 03:39:09
@丹尼爾編輯了答案,糾正了這一點。很高興它的工作! – tedder42 2014-10-12 06:39:54