Я пытаюсь запустить файл инвентаризации Ansible ansible -i hosts-prod all -u root -m ping
, и он не работает с этим сообщением:
ERROR: The file hosts-prod is marked as executable,
but failed to execute correctly. If this is not supposed
to be an executable script, correct this with
`chmod -x hosts-prod`.
Я считаю, что это потому, что я использую Virtual Box и общие папки, которые заставляют все мои файлы использовать ug + rwx. И vbox не позволяет изменять разрешения для общих папок (по крайней мере, для общих папок, исходящих из Windows, что является моей ситуацией)
Есть ли способ разрешить Ansible запускать этот файл? Я вижу несколько вариантов:
- Отредактируйте
hosts-prod
, чтобы он стал исполняемым файлом. Я не знаю, с чем это связано (очевидно, я новичок в Ansible). - Установите параметр конфигурации в Ansible, чтобы он не запускал этот файл как исполняемый файл — просто относитесь к нему как к статическому файлу конфигурации. Я не могу найти вариант сделать это, поэтому я подозреваю, что это невозможно.
- Переместите файл за пределы общих папок: в моем случае это не вариант.
- Ваша лучшая идея ..
Вся помощь/идеи приветствуются!
Фактический файл конфигурации hosts-prod
выглядит следующим образом, поэтому приветствуются любые советы по его внутреннему исполняемому файлу:
web01 ansible_ssh_host=web01.example.com
db01 ansible_ssh_host=db01.example.com
[webservers]
web01
[dbservers]
db01
[all:vars]
ansible_ssh_user=root