Я работаю над созданием загрузочной книги Ansible, и я использую Vagrant в качестве тестовой платформы, прежде чем применять игру к удаленному серверу.Ansible Synchronize не удается создать каталог с правами root
У меня возникли проблемы с синхронизацией работы. У меня есть некоторые файлы, которые мне нужно переместить на сервер как часть развертывания.
Вот моя книжка. Я поставил 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
не все команды будут работать с правами администратора, в том числе Синхронизировать?
Люблю предложение о надлежащих разрешениях. Поэтому я попробовал, но я получаю 'msg: unsupported параметр для module: user'. – Daniel
Изменен 'user'' 'owner', и он сработал. – Daniel
@ daniel отредактировал ответ, чтобы исправить это. рад, что сработало! – tedder42