Ansible Apt

2024 年 8 月 29 日 | 阅读 3 分钟

APT代表“高级打包工具”,是Ubuntu中首选的软件包管理工具集。 它允许我们安装新软件包,更新它们,以及从Ubuntu或Debian系统中删除软件包。 这里有3个与APT相关的命令行工具,例如

Apt-get: 所有基本的软件包管理操作都可以使用此工具完成。 Ansible apt-get 模块提供此功能。

Apt-add-repository: 用于向存储库列表中添加新的存储库。 默认存储库可能没有所有软件包的最新版本。 因此,您需要为某些软件维护者添加其他存储库。 Ansible apt_repository 模块提供了添加新存储库的功能。

Apt-key: 用于管理用于验证 apt 软件包的密钥列表。 Ansible apt_key 模块用于管理密钥。

安装新的 Apt 软件包

要安装新软件包,您必须在 name 参数中给出软件包的名称以及软件包的所需状态。

软件包的默认状态是“present”。 此外,最好将 update_cache 设置为 true。 这样您就可以确保索引与源列表同步。 这与在安装软件包之前运行 apt-get update 命令相同。

下面的示例将进行缓存更新以同步索引。 检查目标服务器上是否安装了“zip”软件包。 如果尚未安装,则将安装该软件包。 如果软件包已安装,则不会升级。

1. 安装软件包的最新版本

如果将软件包的状态设置为“present”,则 Ansible 将仅检查软件包是否存在。 因此,如果新软件包可用,它将无法安装。

如果要安装最新的 apt 软件包,则必须将 state 参数设置为 latest。

这将确保安装具有最新版本的软件包。 下面的示例将首先更新缓存,然后安装 zip 的最新软件包,例如

2. Ansible 安装多个软件包

您可以不用编写多个任务来安装软件包,而是使用 with_items 并组合这些任务。

在下面的示例中,我们将安装 3 个软件包:docker-ce、Nginx 和 git。

3. Ansible Apt 临时命令

您还可以使用临时方法使用 apt 模块安装新软件包,例如

删除 Apt 软件包

您还可以通过将 state 参数设置为 absent 来使用 apt 模块删除软件包。

下面的示例将删除 zip 软件包。 由于该模块是幂等的,因此如果该软件包不存在,它将不会出现错误。


下一主题Ansible Lineinfile