
Soy nuevo en Ansible y busco en Google y veo cómo instalar ClamAV usando Ansible, pero ¿hay alguna manera de obtener la versión actual? Sé que podría ejecutarla de forma remota a través de ssh.
Respuesta1
Como alternativa, configure los repositorios de software para que tengan la versión que desee y luego instálelo con el administrador de paquetes del sistema operativo.
- name: Install ClamAV
package:
state: present
name:
- clamav
- clamd
- name: Enable ClamAV service
service:
name: clamd
enabled: True
Buscar en la galaxia clamavpara más ideas.
Respuesta2
Puede usar el comando Shell para obtener la versión y luego enviarla a través de la salida estándar usando el comando de registro y depuración de esta manera:
- name: check clamAV version
shell: clamscan -V
register: ClamVersion
- debug: msg="{{ ClamVersion.stdout }}"
Respuesta3
La respuesta de DarkEVE incluye Tareas que irían dentro de un Playbook, lo cual es útil si va a ser una tarea repetible.
Si solo necesita hacer esto una vez, puede ejecutar lo mismo desde la línea de comando ansible (cli):
ansible -m shell -a 'clamscan -V' [target host or group]
Esto invoca el módulo integrado shell
(-m) y pasa su comando como argumentos (-a).
Dependiendo de su inventario ansible, puede apuntar a un host específico o a un grupo que haya configurado; esto es excelente, ya que puede ver rápidamente la versión en una gran cantidad de hosts con un solo comando. (Por supuesto, también puedes dirigirte a un grupo con el Playbook).
Creo que usar este método ansible único es más rápido/fácil que introducir ssh en objetivos, y ciertamente mucho más rápido cuando tienes que verificar lo mismo en más de un objetivo.