我可以使用 Ansible 从 clamAV 获取版本号吗

我可以使用 Ansible 从 clamAV 获取版本号吗

我是 Ansible 的新手,在 google 上搜索后,我知道如何用 Ansible 安装 ClamAV,但是有没有办法只获取当前版本,我知道我可以通过 ssh 远程运行它

答案1

或者,配置软件存储库以获取您想要的版本,然后使用 OS 包管理器进行安装。

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

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

在 Galaxy 中搜索 clamav了解更多想法。

答案2

您可以使用 shell 命令获取版本,然后使用注册和调试命令通过 stdout 将其输出,如下所示:

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

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

答案3

DarkEVE 的答案包括剧本中的任务,如果这是一项可重复的任务,这将很有用。

如果您只需要执行一次,您可以从 ansible 命令行(cli)执行相同操作: ansible -m shell -a 'clamscan -V' [target host or group]

这将调用内置shell模块(-m),并将您的命令作为参数传递(-a)。

根据您的 ansible Inventory,您可以定位您设置的特定主机或组 - 这很棒,因为您可以通过单个命令快速查看大量主机的版本。(当然,您也可以使用 Playbook 定位一个组)。

我发现使用这种一次性的 ansible 方法比 ssh 到目标更快/更容易,而且当你必须在多个目标上检查同一件事时肯定会快得多。

相关内容