Могу ли я использовать Ansible для получения номера версии от clamAV?

Могу ли я использовать Ansible для получения номера версии от clamAV?

Я новичок в Ansible и, погуглив, я увидел, как установить ClamAV с помощью Ansible, но есть ли способ просто получить текущую версию? Я знаю, что я могу просто запустить ее удаленно через SSH.

решение1

В качестве альтернативы настройте репозитории программного обеспечения на нужную вам версию, а затем установите ее с помощью менеджера пакетов ОС.

- name: Install ClamAV
  package:
    state: present
    name:
    - clamav
    - clamd

- name: Enable ClamAV service
  service:
    name: clamd
    enabled: True

Поиск по Galaxy для clamavдля получения дополнительных идей.

решение2

Вы можете использовать команду shell, чтобы получить версию, а затем вывести ее через stdout, используя команду register и debug, например:

- name: check clamAV version
  shell: clamscan -V 
  register: ClamVersion

- debug: msg="{{ ClamVersion.stdout }}"

решение3

Ответ DarkEVE включает в себя задачи, которые будут помещены в Playbook, что полезно, если это будет повторяющаяся задача.

Если вам нужно сделать это только один раз, вы можете выполнить то же самое из командной строки Ansible (cli): ansible -m shell -a 'clamscan -V' [target host or group]

Это вызовет встроенный shellмодуль (-m) и передаст вашу команду в качестве аргументов (-a).

В зависимости от вашего инвентаря ansible вы можете выбрать определенный хост или группу, которую вы настроили — это здорово, так как вы можете быстро увидеть версию для большого количества хостов с помощью одной команды. (Конечно, вы также можете выбрать группу с помощью Playbook).

Я считаю, что использование этого одноразового метода Ansible быстрее/проще, чем подключение к целям по SSH, и, безусловно, гораздо быстрее, когда вам нужно проверить одно и то же на нескольких целях.

Связанный контент