Файл инвентаризации
Создаем файл (по умолчанию ansible смотрит хосты в файле /etc/ansible/hosts) в котором перечисляем хосты
[kab_ikt]
pc-1.local
pc-2.local
Хосты можно группировать, а так же добавлять разные параметры.
Для перенаправления расположения файла hosts используйте ansible.cfg
Модуль SHELL
Выполняет терминальную команду на удаленном хосте Использование:
# ansible kab_ikt -m shell -a "cp /home/* /home/*"
Где -m признак модуля, -a — перечень атрибутов
Плейбуки
1. Flatpak
Пример плейбука для установки через flatpak Arduino IDEv2.
Для начала необходимо установить модуль
ansible-galaxy collection install community.general
После этого создаем yaml файл в папке /etc/ansible/playbook.yaml
Пишем плейбук
---
- hosts: hosts
become: true
tasks:
- name:"Arduino"
community.general.flatpak:
name: "cc.arduino.IDE2"
state: "present"
Пример вывода результата успешного выполнения задачи

Пример плейбука для выполнения shell команды apt-get update
---
- hosts: kab
become: yes
become_method: su
tasks:
- name: upd
shell:
cmd: |
apt-get update
2. AdHoc
Так как apt не сработал в чмоси придется ставить через shell.
# ansible kab_ikt -m shell -a "apt-get install scratch-desktop -y -q" -b
После запуска необходимо ждать вывода ответа ансибль.
3. Copy
Пример плейбука для выполнения команды на копирование файлов
---
- hosts: kab
become: yes
become_method: su
tasks:
- name: chrome policy.json
ansible.builtin.copy:
src: /mnt/share/policy.json
dest: /etc/chromium/policies/managed/policy.json
owner: root
group: root
mode: '0644'
Добавить глобальный параметр
Для работы с чмось необходимо указать глобальный параметр интерпретатора python в файле /etc/ansible/ansible.cfg в разделе [defaults] добавить секцию interpreter_python = python3.9
