Ansible 没有报告 Ubuntu 20.04 上的分发信息?

Posted

技术标签:

【中文标题】Ansible 没有报告 Ubuntu 20.04 上的分发信息?【英文标题】:Ansible not reporting distribution info on Ubuntu 20.04? 【发布时间】:2020-08-11 01:59:38 【问题描述】:

关于 Ubuntu 18.04 报告“ansible_facts”中的分发信息的示例:

$ ansible -i hosts ubuntu1804 -u root -m setup -a "filter=ansible_distribution*"
ubuntu1804 | SUCCESS => 
    "ansible_facts": 
        "ansible_distribution": "Ubuntu", 
        "ansible_distribution_file_parsed": true, 
        "ansible_distribution_file_path": "/etc/os-release", 
        "ansible_distribution_file_variety": "Debian", 
        "ansible_distribution_major_version": "18", 
        "ansible_distribution_release": "bionic", 
        "ansible_distribution_version": "18.04"
    , 
    "changed": false

针对 Ubuntu 20.04 的相同命令示例:

$ ansible -i hosts ubuntu2004 -u root -m setup -a "filter=ansible_distribution*"
ubuntu2004 | SUCCESS => 
    "ansible_facts": , 
    "changed": false

这是 Ubuntu 或 Ansible 的问题吗?有解决办法吗?

【问题讨论】:

【参考方案1】:

问题已通过今天更新到 ansible 2.9.7 解决。

【讨论】:

【参考方案2】:

经过大量研究发现 Ubuntu 20.04 版本,我们发布了一个使用 ansible version-2.5.1 的版本

- hosts: localhost
  become: true
  gather_facts: yes
  tasks:
  - name: System details
    debug:
      msg: " ansible_facts['lsb']['release'] "

  - name: ubuntu 18
    shell: echo "hello 18"
    register: ub18
    when: ansible_facts['lsb']['release'] == "18.04"

  - debug:
     msg: " ub18 "

  - name: ubuntu 20
    shell: echo "hello 20"
    register: ub20
    when: ansible_facts['lsb']['release'] == "20.04"

  - debug:
     msg: " ub20 "

【讨论】:

以上是关于Ansible 没有报告 Ubuntu 20.04 上的分发信息?的主要内容,如果未能解决你的问题,请参考以下文章

在 WSL 2 上使用 Ansible 通过 snap 安装 microk8s

Ubuntu 20.04、PHP 7.4:mbstring 已安装但未启用

Docker - Ubuntu 20.04 升级后没有路由到主机

软件包“pgadmin4”没有安装候选,适用于 Ubuntu 20.04 [关闭]

在没有 sudo 的 Ubuntu 20.04 上使用 GPU 设置 Tensorflow 2.4

汇编器消息:没有这样的指令:编译 C - GCC 9.3.0、Ubuntu 20.04 时的“endbr64”