> yum模块可以帮助我们在远程主机上通过 yum 源管理软件包。
## 1、选项
### name参数:
> 必须参数,用于指定需要管理的软件包,比如 nginx。
### state参数:
用于指定软件包的状态 :
> 默认值为。present,表示确保软件包已经安装,除了。present,其他可用值有 installed、latest、absent、removed,其中 installed 与present 等效,**latest 表示安装 yum 中最新的版本**absent 和 removed 等效,表示删除对应的软件包。
### disable_gpg_check参数:
> 用于禁用对 rpm 包的公钥 gpg 验证。默认值为 no,表示不禁用验证,设置为 yes 表示禁用验证,即不验证包,直接安装。在对应的 yum 源没有开启 gpg 验证的情况下,需要将此参数的值设置为 yes,否则会报错而无法进行安装。
### enablerepo参数:
> 用于指定安装软件包时临时启用的 yum 源。假如你想要从A源中安装软件,但是你不确定A源是否启用了,你可以在安装软件包时将此参数的值设置为 yes,即使A源的设置是未启用,也可以在安装软件包时临时启用A源。
### disablerepo参数:
> 用于指定安装软件包时临时禁用的 yum 源。某些场景下需要此参数,比如,当多个 yum 源中同时存在要安装的软件包时,你可以使用此参数临时禁用某个源,这样设置后,在安装软件包时则不会从对应的源中选择安装包。
>
> enablerepo 参数和 disablerepo 参数可以同时使用。
2、示例
1. 确保 ansible-demo3 主机上通过 yum 源安装了 nginx (对应 yum 源未开启 gpg 验证,所以需要设置 disable_gpg_check=yes),如下三条命令的效果相同。
```
ansible ansible-demo3 -m yum -a 'name=nginx disable_gpg_check=yes'
ansible ansible-demo3 -m yum -a 'name=nginx state=present disable_gpg_check=yes'
ansible ansible-demo3 -m yum -a 'name=nginx state=installed disable_gpg_check=yes'
```
2. 确保 ansible-demo3 主机上安装了 yum 源中最新版本的 nginx。
```
ansible ansible-demo3 -m yum -a 'name=nginx state=latest disable_gpg_check=yes'
```
3. 确保 ansible-demo3 主机上通过 yum 源安装的 nginx 被卸载了。如下两条命令效果相同。
```
ansible ansible-demo3 -m yum -a 'name=nginx state=absent'
ansible ansible-demo3 -m yum -a 'name=nginx state=removed'
```
4. 在 ansible-demo3 主机上安装 telnet 时不确定 local 源是否启用,使用 enablerepo=local确保临时启用 local 源。
```
ansible ansible-demo3 -m yum -a 'name=telnet disable_gpg_check=yes enablerepo=local'
```
5. 在 ansible-demo3 主机上安装 telnet 时,确定多个源中都有 telnet,但是不想从 local 源中安装,所以在安装时临时禁用 local 源。
```
ansible ansible-demo3 -m yum -a 'name=telnet disable_gpg_check=yes disablerepo=local'
```
- Linux
- 高级
- 杀毒
- 记一次中毒事件
- clamav查毒软件
- 处理挖矿病毒
- 定时任务
- kill
- chattr文件保护
- 运行级别
- Linux启动
- 文件加密
- ssh免密登录
- .ssh
- 问题
- 脚本
- 阿里云域名解析
- yum源
- 时间同步
- keepalived实现高可用
- dos字符与unix字符
- 大文件上传
- 基础
- proc目录
- 设置宋体
- 基础命令_01
- 基础命令_02
- SELinux
- 文件描述符
- 基础命令_03
- awk
- 系统日志
- date命令
- bc命令
- lsof
- vim快捷键
- shell
- 循环控制
- expr
- 执行脚本的方式
- declare
- shell脚本
- 控制启停脚本
- 数值计算
- centos
- 配置网络
- 环境
- 灰度环境
- ansible
- 模块
- 语法
- file模块
- setup模块
- ping模块
- copy模块
- command模块
- shell模块
- service模块
- cron模块
- yum模块
- user 模块
- group模块
- 指定用户
- playbook
- 实例
- ansible安装
- Jenkins
- shell部署
- 导入已有项目的配置
- 执行shell
- tungsten数据同步
- 防火墙
- netfilter