Red Hat Enterprise Linux Download | Red Hat Developer(无需登录)
Red Hat Enterprise Linux for x86_64 9 - Red Hat 客户门户网站(需要登陆用户名密码)
注册后可yum在线下载软件
#注册命令
subscription-manager register
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9HuGA0Ab-1664370470334)(E:\tmp\image-20220821172120706.png)]
#查看所有订阅
subscription-manager list --available --all
#更新订阅
subscription-manager attach --auto
yun list |grep ansible
yum install ansible-core
#撤销安装 可删除全部的安装包
##查看安装记录
yum history
##撤销安装
yum history undo ansible-core
主机组
[center]
192.168.7.10
192.168.7.11
[client]
192.168.7.11
192.168.7.12
ansible all -m ping
# 包括 192.168.7.10、192.168.7.11、192.168.7.12、
ansible "*" -m ping
ansible "192.168.7.1*" -m ping
ansible "*192.168.7.1*" -m ping
# 包括 192.168.7.10、192.168.7.11、192.168.7.12、
ansible "center:client" -m ping
ansible "192.168.7.10:192.168.7.11" -m ping
# 包括 192.168.7.10、192.168.7.11、192.168.7.12、
ansible 'center:&client' -m ping
# 在center组并且也在client组:192.168.7.11
ansible 'center:!client' -m ping
#在center组但不在client组:192.168.7.10
ansible "~ent" -m ping
#包含 ent 的组
# 包括 192.168.7.10、192.168.7.11、192.168.7.12
[center] #单个主机变量
192.168.7.2 ansible_ssh_port=22 ansible_ssh_user=root ansible_ssh_pass='root'
192.168.7.3
[client]
192.168.7.11
192.168.7.12
[clinent:vars] #组变量
ansible_ssh_port=22
ansible_ssh_user=root
ansible_ssh_pass='root'
#使用格式
#ansible 指定主机清单 主机组 指定模块 指定动作(参数)
ansible -i ./hosts centos -m ping -a 'data=ok'
command 模块适用于简单命令,不支持特殊字符。为默认模块,不加 -m 时 默认使用command模块
ansible centso -m command -a 'ls'
shell 模块适用于复杂shell命令,支持特殊字符。
#简单shell
#【查看SSH 监听会话】
ansible redhat -m shell -a 'ss -ntpl sport == 22'
#-a 双引号用法
#【查看SSH 监听会话并格式化输出】
ansible redhat -m shell -a "ss -ntpl sport == 22|awk 'BEGIN{print \"状态\t本地IP:端口\t程序\"} /ssh/{print \$1\"\t\"\$4\"\t\t\"\$6}'"
#【查看用户名】
ansible centos -m shell -a "echo \${HOSTNAME}"
#-a 单引号用法
#【查看用户名】
ansible redhat -m shell -a 'echo ${HOSTNAME}'
-a 单引号双引号未找到介绍,根据使用总结应该是双引号先执行特殊字符组装字符串在传参,单引号为当作字符串传参,特别是参数中含有单引号时需要用双引号组装字符串在传参
script 模块为分发脚本并执行脚本
参数 | 评论 |
---|---|
chdir string |
在运行脚本之前,请在远程节点上切换到此目录。 |
cmd string |
要运行的本地脚本的路径,后跟可选参数。 |
creates string |
远程节点上的文件名,如果它已经存在,则不会运行此步骤。 |
decrypt boolean |
此选项控制使用 Vault 自动解密源文件。选择: ⋅ \cdot ⋅ no ⋅ \cdot ⋅ yes ← (default) |
executable string |
用于调用脚本的可执行文件的名称或路径。 |
free_form string |
本地脚本文件的路径,后跟可选参数。 |
removes string |
远程节点上的文件名,当它不存在时,此步骤将不会运行。 |
属性 | 支持 | 描述 |
---|---|---|
check_mode | partial 虽然脚本本身是任意的,并且不受检查模式语义的约束,但它添加/选项作为解决方法 creates removes |
可以在check_mode中运行,并在不修改目标的情况下返回更改的状态预测 |
diff_mode | none | 在差异模式下,将返回已更改的内容(或可能需要在check_mode中更改)的详细信息 |
pltform | Platforms: all 此操作是少数几个不需要在远程数据库上使用 Python 的操作之一,因为它将命令直接传递到连接字符串中 |
可针对其操作的目标操作系统/系列 |
raw | full | 指示操作是否将“原始”或“自由格式”字符串作为选项,并具有自己的特殊解析 |
safe_file_operations | n o n e \color{red}{none} none | 使用安思必尔严格的文件操作功能,确保权限正确,避免数据损坏 |
vault | full | 可以自动解密 Ansible 的保险存储文件 |
ansible centos -m script -a 'ABBBB/data/ansible/text.sh'
file 创建、删除 目录、文件、软连接。
主要参数 :path
(目标对象)、state
(状态)、src
(源对象)
参数选项:state
(状态):absent
(删除),directory
(目录),file
← (default),hard
(硬链接),link
(软连接),touch
(文件)
参数 | 评论 |
---|---|
access_time string |
该参数表示应该设置文件访问时间的时间。 |
access_time_format string |
与 一起使用时,指示必须使用的时间格式。access_time 基于默认的Python格式(参见time.strftime doc)。默认值:“%Y%m%d%H%M.%S” |
attributes aliases: attr string |
生成的文件系统对象应具有的属性。要获得受支持的标志,请查看目标系统上的 chattr 手册页。此字符串应包含与 lsattr 显示的属性顺序相同的属性。假定运算符为默认值,否则或运算符需要包含在字符串中。= + - |
follow boolean |
此标志指示应遵循文件系统链接(如果存在)。在 Ansible 2.5 之前,这是默认设置。no 选择:不是 ←(默认) |
forceboolean |
在两种情况下强制创建符号链接:源文件不存在(但稍后会出现);目标存在并且是一个文件(因此,我们需要取消链接该文件并创建指向该文件的符号链接来代替它)。path``src 选择:****无←(默认)是的 |
groupstring |
应拥有文件系统对象的组的名称,如将提供给 chown。如果未指定,它将使用当前用户的当前组,除非您是 root 用户,在这种情况下,它可以保留以前的所有权。 |
mode raw |
生成的文件系统对象应具有的权限。对于那些习惯于 /usr/bin/chmod 的人来说,请记住,模式实际上是八进制数。您必须添加一个前导零,以便 Ansible 的 YAML 解析器知道它是一个八进制数(like or ),或者用引号(like or )来表示,以便 Ansible 接收字符串并可以自己从字符串转换为数字。0644``01777``'644'``'1777' 在不遵循这些规则之一的情况下给 Ansible 一个数字,最终会得到一个十进制数,这将产生意外的结果。从 Ansible 1.8 开始,该模式可以指定为符号模式(例如,或 )。u+rwx``u=rw,g=r,o=r 如果未指定 且目标文件系统对象不存在,则在为新创建的文件系统对象设置模式时,将使用系统上的缺省值。mode``umask 如果未指定,并且目标文件系统对象确实存在,则将使用现有文件系统对象的模式。mode 指定是确保使用正确的权限创建文件系统对象的最佳方法。有关更多详细信息,请参阅 CVE-2020-1736。mode |
modification_time string |
此参数指示应将文件的修改时间设置为的时间。应该在不需要修改时、使用默认时间格式时或 .preserve``YYYYMMDDHHMM.SS``now 缺省值为 无 表示 是 的缺省值,并且是 的缺省值。preserve``state=[file,directory,link,hard]``now``state=touch |
modification_time_format string |
与 一起使用时,指示必须使用的时间格式。modification_time 基于默认的Python格式(参见time.strftime doc)。默认值:“%Y%m%d%H%M.%S” |
owner string |
应该拥有文件系统对象的用户的名称,如将提供给 chown。如果未指定,它将使用当前用户,除非您是 root 用户,在这种情况下,它可以保留以前的所有权。 |
path aliases:dest,name path / required |
正在管理的文件的路径。 |
recurseboolean |
以递归方式在目录内容上设置指定的文件属性。仅当 设置为 时,此值才适用。state``directory 选择:****无←(默认)是的 |
selevel string |
SELinux 文件系统对象上下文的级别部分。这是 MLS/MCS 属性,有时称为 .range 设置为 时,它将使用策略的部分(如果可用)。_default``level |
serole string |
SELinux 文件系统对象上下文的角色部分。设置为 时,它将使用策略的部分(如果可用)。_default``role |
setype string |
SELinux 文件系统对象上下文的类型部分。设置为 时,它将使用策略的部分(如果可用)。_default``type |
seuser string |
SELinux 文件系统对象上下文的用户部分。默认情况下,它使用策略(如果适用)。system 设置为 时,它将使用策略的部分(如果可用)。_default``user |
srcpath |
要链接到的文件的路径。这仅适用于 和 。state=link state=hard 对于 ,这也将接受不存在的路径。state=link 相对路径相对于正在创建的文件 (),这是 Unix 命令处理相对路径的方式。path``ln -s SRC DEST |
state string |
如果 ,则目录将被递归删除,文件或符号链接将被取消链接。对于目录,如果声明了 ,您将看到删除的文件和文件夹列在 下。请注意,如果 不存在,则不会导致失败,因为状态没有更改。absent diff path_contents absent file path 如果 ,则将创建所有中间子目录(如果它们不存在)。从 Ansible 1.7 开始,它们将使用提供的权限创建。 directory 如果 没有其他选项,则返回 的当前状态。 file path 如果使用 ,即使使用其他选项(如 ),如果文件存在,也会对其进行修改,但如果文件不存在,则不会创建该文件。如果要创建文件(如果该文件不存在),请设置为或使用 ansible.builtin.copy 或 ansible.builtin.template 模块。 file``mode``touch 如果 ,将创建或更改硬链接。 hard 如果 ,符号链接将被创建或更改。 link 如果(1.4 中的新增功能),则如果文件不存在,则将创建一个空文件,而现有文件或目录将接收更新的文件访问和修改时间(类似于命令行的工作方式)。 touch 选项: absent,directory,file ← (default),hard,link,touch |
unsafe_writes boolean |
影响何时使用原子操作来防止数据损坏或从目标文件系统对象读取不一致。默认情况下,此模块使用原子操作来防止数据损坏或从目标文件系统对象读取不一致,但有时系统被配置或只是以阻止这种情况的方式中断。一个例子是 docker 挂载的文件系统对象,它不能从容器内部以原子方式更新,只能以不安全的方式编写。此选项允许 Ansible 在原子操作失败时回退到更新文件系统对象的不安全方法(但是,它不会强制 Ansible 执行不安全的写入)。重要!不安全的写入受争用条件的影响,并可能导致数据损坏。选择:****无←(默认)是的 |
属性 | 支持 | 描述 |
---|---|---|
check_mode | full | 可以在check_mode中运行,并在不修改目标的情况下返回更改的状态预测 |
diff_mode | partial | 在差异模式下,将返回已更改的内容(或可能需要在check_mode中更改)的详细信息 |
platform | Platform: posix | 可针对其操作的目标操作系统/系列 |
#创建目录
ansible -i hosts centos -m file -a 'path="/home/soft" state=directory'
#创建软连接
ansible -i hosts centos -m file -a 'path="/soft" state=link src=/home/soft'
#删除软连接
ansible -i hosts centos -m file -a 'path="/soft" state=absent'
#删除目录
ansible -i hosts centos -m file -a 'path="/home/soft" state=absent'
copy 模块将文件从本地或远程计算机复制到远程计算机上的某个位置。
主要参数: src
(源文件),dest
(目的文件),mode
(目的文件),owner
(归属用户),group
(归属组),
参数 | 评论 |
---|---|
attributes aliases: attr string |
生成的文件系统对象应具有的属性。要获得受支持的标志,请查看目标系统上的 chattr 手册页。此字符串应包含与 lsattr 显示的属性顺序相同的属性。假定运算符为默认值,否则或运算符需要包含在字符串中。=``+``- |
backupboolen |
创建一个包含时间戳信息的备份文件,以便在以某种方式错误地破坏原始文件时可以取回原始文件。选择:****无←(默认)是的 |
checksumstring |
正在传输的文件的 SHA1 校验和。用于验证文件复制是否成功。如果未提供此信息,ansible 将使用 src 文件的本地计算校验和。 |
contentstring |
当使用 而不是 时,将文件的内容直接设置为指定的值。src 仅当 是 文件时才有效。如果文件不存在,则创建该文件。dest 对于高级格式设置或包含变量,请使用 ansible.builtin.template 模块。content |
decryptstring |
此选项控制使用 Vault 自动解密源文件。选择:不是 ←(默认) |
destpath / 必填 |
应将文件复制到的远程绝对路径。如果 是目录,则此目录也必须是目录。src if 是一个不存在的路径,并且如果以“/”结尾或为目录,则创建。dest``dest``src``dest 如果 dest 是相对路径,则起始目录由远程主机确定。如果 和 是文件,则不会创建 的父目录,如果任务尚不存在,则任务将失败。src``dest``dest |
directory_mode raw |
执行递归复制时,请设置目录的模式。如果未设置,我们将使用系统默认值。该模式仅在新创建的目录上设置,不会影响已存在的目录。 |
followstring |
此标志指示应遵循目标中的文件系统链接(如果存在)。选择:****无←(默认)是的 |
forcestring |
影响是否必须始终替换远程文件。如果 ,则当内容与源文件不同时,将替换远程文件。yes 如果 ,则仅当目标不存在时,才会传输该文件。no 选择:不是 ←(默认) |
groupstring |
应拥有文件系统对象的组的名称,如将提供给 chown。如果未指定,它将使用当前用户的当前组,除非您是 root 用户,在这种情况下,它可以保留以前的所有权。 |
local_followstring |
应遵循源代码树中的文件系统链接(如果存在)。选择:不是 ←(默认) |
modestring |
目标文件或目录的权限。对于那些习惯于记住模式实际上是八进制数的人来说。您必须添加一个前导零,以便 Ansible 的 YAML 解析器知道它是一个八进制数(like or ),或者用引号(like or )来表示,以便 Ansible 接收字符串并可以自己从字符串转换为数字。在不遵循这些规则之一的情况下给 Ansible 一个数字,最终会得到一个十进制数,这将产生意外的结果。/usr/bin/chmod``0644``01777``'644'``'1777' 从 Ansible 1.8 开始,该模式可以指定为符号模式(例如,或 )。u+rwx``u=rw,g=r,o=r 从 Ansible 2.3 开始,模式也可能是 特殊字符串 。preserve``preserve 表示将向该文件授予与源文件相同的权限。执行递归复制时,另请参阅。directory_mode 如果未指定 且目标文件不存在,则在为新创建的文件设置模式时,将使用系统上的默认值。mode``umask 如果未指定 ,并且目标文件确实存在,则将使用现有文件的模式。mode 指定是确保使用正确权限创建文件的最佳方法。有关更多详细信息,请参阅 CVE-2020-1736。mode |
ownerstring |
应该拥有文件系统对象的用户的名称,如将提供给 chown。如果未指定,它将使用当前用户,除非您是 root 用户,在这种情况下,它可以保留以前的所有权。 |
remote_srcstring |
影响是否需要转移或是否已经存在远程。src 如果 ,它将在控制器节点上搜索 。no``src 是否将在受管(远程)节点上搜索。yes``src``remote_src 从版本 2.8 开始支持递归复制。remote_src 仅适用于 2.6 版。mode=preserve 在 出现时,文件的自动解密不起作用。remote_src=yes 选择:****无←(默认)是的 |
selevelstring |
SELinux 文件系统对象上下文的级别部分。这是 MLS/MCS 属性,有时称为 .range 设置为 时,它将使用策略的部分(如果可用)。_default``level |
serolestring |
SELinux 文件系统对象上下文的角色部分。设置为 时,它将使用策略的部分(如果可用)。_default``role |
setypestring |
SELinux 文件系统对象上下文的类型部分。设置为 时,它将使用策略的部分(如果可用)。_default``type |
seuserstring |
SELinux 文件系统对象上下文的用户部分。默认情况下,它使用策略(如果适用)。system 设置为 时,它将使用策略的部分(如果可用)。_default``user |
srcstring |
要复制到远程服务器的文件的本地路径。这可以是绝对的,也可以是相对的。如果 path 是一个目录,则以递归方式复制它。在这种情况下,如果 path 以 “/” 结尾,则只有该目录的内部内容会复制到目标。否则,如果它不以“/”结尾,则复制包含所有内容的目录本身。此行为类似于命令行工具。rsync |
unsafe_writesstring |
影响何时使用原子操作来防止数据损坏或从目标文件系统对象读取不一致。默认情况下,此模块使用原子操作来防止数据损坏或从目标文件系统对象读取不一致,但有时系统被配置或只是以阻止这种情况的方式中断。一个例子是 docker 挂载的文件系统对象,它不能从容器内部以原子方式更新,只能以不安全的方式编写。此选项允许 Ansible 在原子操作失败时回退到更新文件系统对象的不安全方法(但是,它不会强制 Ansible 执行不安全的写入)。重要!不安全的写入受争用条件的影响,并可能导致数据损坏。选择:****无←(默认)是的 |
validate string |
在将更新的文件复制到最终目标之前要运行的验证命令。临时文件路径用于验证,通过 ‘%s’ 传入,该路径必须存在,如下面的示例所示。此外,该命令可以安全地传递,因此扩展和管道等外壳功能将不起作用。有关如何处理比此选项提供的更复杂的验证的示例,请参阅复杂配置验证。 |
属性 | 支持 | 描述 |
---|---|---|
action | full | 指示这具有相应的操作插件,因此可以在控制器上执行选项的某些部分 |
async | none | 支持与关键字一起使用async |
bypass_host_loop | none | 强制执行不按主机执行的“全局”任务,这将绕过每个主机的模板以及串行、限制和其他循环注意事项条件将像正在使用一样工作,使用的变量将来自第一个可用的主机run_once 此操作在锁步策略之外将无法正常工作 |
check_mode | full | 可以在check_mode中运行,并在不修改目标的情况下返回更改的状态预测 |
diff_mode | full | 在差异模式下,将返回已更改的内容(或可能需要在check_mode中更改)的详细信息 |
platform | Platform: posix | 可针对其操作的目标操作系统/系列 |
safe_file_operations | full | 使用安思必尔严格的文件操作功能,确保权限正确,避免数据损坏 |
vault | full | 可以自动解密 Ansible 的保险存储文件 |
#拷贝文件 并修改权限
ansible -i hosts centos -m copy -a 'src=/data/ansible/ dest=/home/tmp/ mode=777 owner=root group=root'
systemd 控制远程主机上的系统单元(服务、计时器等)。
主要参数 :name
(服务名)、state
(状态)、enabled
(开机启动)
参数选项:state
(状态):reloaded
(承载),restarted
(重启),started
(启动),stoped
(停止)
参数 | 评论 |
---|---|
daemon_reexec aliases:daemon-reexec boolean |
在执行任何其他操作之前运行daemon_reexec命令,systemd 管理器将序列化管理器状态。 选项: ** no **← (default),yes |
daemon_reload aliases:daemon-reload boolean |
在执行任何其他操作之前运行守护程序重新加载,以确保 systemd 已读取任何更改。 设置为 true 时,即使模块不启动或停止任何内容,也会运行守护程序重新加载。选项: ** no **← (default),yes |
enabledboolean |
设备是否应在启动时启动。至少需要一个状态和已启用。 选项:** no ,yes |
force boolean |
是否覆盖现有符号链接。 选项:** no ,yes |
maskedboolean |
无论是否应屏蔽该单元,屏蔽单元都无法启动。 选项:** no ,yes |
name aliases:service,unit string |
设备的名称。此参数只采用一个要使用的单元的名称。当没有给出扩展时,它被暗示为as systemd。.service 在 chroot 环境中使用时,您始终需要指定带有扩展名的单元的名称。例如。crond.service |
no_blockboolean |
不要同步等待请求的操作完成。排队的作业将继续,完成时不会阻止 Ansible。 选项:** ** no **← (default),yes |
scopestring |
在给定的服务管理器作用域内运行 systemctl,可以是默认系统作用域、当前用户作用域,也可以是所有用户的作用域。system``user``global 为了使 systemd 与“user”一起使用,执行用户必须启动并访问自己的 dbus 实例(systemd 要求)。用户 dbus 进程通常在正常登录期间启动,但在运行 Ansible 任务期间不会启动。否则,您可能会收到“无法连接到总线:没有此类文件或目录”错误。用户必须具有访问权限,通常通过设置变量来授予访问权限,请参阅下面的示例。XDG_RUNTIME_DIR 选项:** ** system **← (default),user ,global |
statestring |
started /stopped 是幂等操作,除非必要,否则不会运行命令。 将始终反弹设备。 将始终重新加载。restarted reloaded 选项: reloaded ,restarted ,started ,stopped |
属性 | 支持 | 描述 |
---|---|---|
check_mode | full | 可以在check_mode中运行,并在不修改目标的情况下返回更改的状态预测 |
diff_mode | none | 在差异模式下,将返回已更改的内容(或可能需要在check_mode中更改)的详细信息 |
platform | Platform: posix | 可针对其操作的目标操作系统/系列 |
ansible centos -m systemd -a 'name=sshd state=restarted'
service : 控制远程主机上的服务。
主要参数 :name
(服务名)、state
(状态)、enabled
(开机启动)
参数选项:state
(状态):reloaded
(承载),restarted
(重启),started
(启动),stoped
(停止)
参数 | 评论 |
---|---|
arguments aliases:args string |
命令行上提供的其他参数。将远程主机与 systemd 一起使用时,此设置将被忽略。 |
enabledboolean |
服务是否应在启动时启动。至少需要一个状态和已启用。 选项: no ,yes |
namestring / required |
服务的名称。 |
patternstring |
如果服务不响应 status 命令,请将要查找的子字符串命名为 ps 命令的输出中所示的子字符串,作为状态结果的替身。如果找到该字符串,则假定服务已启动。将远程主机与 systemd 一起使用时,此设置将被忽略。 |
runlevelstring |
仅适用于OpenRC初始化脚本(例如Gentoo)。此服务所属的运行级别。将远程主机与 systemd 一起使用时,此设置将被忽略。默认值:“默认” |
sleepinteger |
如果服务正在运行,则在停止和启动命令之间休眠这么多秒。restarted 这有助于解决行为恶劣的初始化脚本,这些脚本在发出停止信号后立即退出。并非所有服务管理器都支持睡眠,即在使用 systemd 时,此设置将被忽略。 |
statestring |
started /stopped 是幂等操作,除非必要,否则不会运行命令。restarted 将始终反弹服务。reloaded 将始终重新加载。**至少需要一个状态和已启用。**请注意,如果服务尚未启动,则重新加载将启动服务,即使您选择的初始化系统通常不会启动也是如此。选项: reloaded ,restarted ,started ,stopped |
usestring |
服务模块实际使用系统特定的模块,通常通过自动检测,此设置可以强制特定模块。通常,它使用“ansible_service_mgr”事实的值,并在找不到匹配项时回退到旧的“服务”模块。默认值:“自动” |
属性 | 支持 | 描述 |
---|---|---|
action | full | 指示这具有相应的操作插件,因此可以在控制器上执行选项的某些部分 |
asybc | full | 支持与关键字一起使用async |
bypass_host_loop | none | 强制执行不按主机执行的“全局”任务,这将绕过每个主机的模板以及串行、限制和其他循环注意事项条件将像正在使用一样工作,使用的变量将来自第一个可用的主机run_once 此操作在锁步策略之外将无法正常工作 |
check_mode | 不适用支持取决于调用的基础插件 | 可以在check_mode中运行,并在不修改目标的情况下返回更改的状态预测 |
diff_mode | 不适用支持取决于调用的基础插件 | 在差异模式下,将返回已更改的内容(或可能需要在check_mode中更改)的详细信息 |
platform | **平台:**全部 支持取决于每个平台的特定插件的可用性以及事实收集是否能够检测到它 |
可针对其操作的目标操作系统/系列 |
ansible -m service -a 'name=sshd state=started'
yum-repository 在基于 RPM 的 Linux 发行版中添加或删除 YUM 存储库
主要参数 :name
(yum源中名字[epel])、description
(yum源中name)、baseurl
(yum源中baseurl)、enabled
(yum源中enable)、gpgcheck
(yum源中gpgcheck)、file
(yum源的/etc/yum.repos.d/XXX.repo的文件名,默认与模块name一直)
#几个变量:
#$releasever,发行版的版本,从[main]部分的distroverpkg获取,如果没有,则根据redhat-release包进行判断。
#$arch,cpu体系,如i686,athlon等
#$basearch,cpu的基本体系组,如i686和athlon同属i386,alpha和alphaev6同属alpha。
#必选值,定义软件仓库(Repository)的名称,用作Yum识别不同仓库,因此满足唯一性#其中serverid是用于区别各个不同的repository,必须有一个独一无二的名称。 重复了 前面覆盖后面--还是反过来呢???用enabled 测试是后面覆盖前面
[base]
#定义仓库仓库名和描述信息,也可用作配置说明等用途,通常设置该值是为了方便阅读仓库配置文件,支持$releasever $basearch这样的变量,可省略#name,是对repository的描述,支持像$releasever $basearch这样的变量; name=Fedora Core $releasever - $basearch - Released Updates
name=CentOS $releasever base
#指定当前仓库的镜像地址
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#yum源地址,包括HTTP(http://)、本地(file:///)、FTP(ftp://)
#必选值,定义仓库文件路径。可选的协议值为http, https, file:///, ftp:// ;后跟一个或多个URL(但只能有一个baseurl),需要特别注意的是,URL必须指向该Repository软件列表目录的上一级,简练的说明就是必须指向Repository repodata的上一级目录;特别需要注意的是,由于在类Unix系统(Unix Like OS) 中,正斜杠"/"用作路径分隔符及根目录,因此使用绝对路径表示本地RPM仓库路径时,必须使用3个正斜杠。变量$releasever用于识别系统发行版本,通常是5,6,7等数字; $basearch用于识别CPU架构,可能的值为i386、i686、x86_64等,设置这些变量是为了方便通过yum安装或升级仓库软件包。
baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
#是否开启当前仓库,0表示关闭,1表示开启。如未指明,默认为1
enabled={1|0}
#是否检查软件包的GPG签名,1为开启,0为关闭。若为官方源或其它可信机构源可设置为0,否则建议开启GPG检查
gpgcheck={1|0}
#用于指定GPG签名文件的URL,当gpgcheck=1时,该项为必选项,否则yum安装时将报错,提示当前Repository不被信任
gpgkey==file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
参数 | 评论 |
---|---|
asyncboolean |
如果设置为yes, Yum将从这个repo并行下载包和元数据,如果可能的话。 选项: no,yes ←(默认) |
attributrs 别名: attr string |
生成的文件系统对象应具有的属性。 要获得支持的标志,请查看 目标系统上 chattr lsattr 显示的顺序相同的属性 。 这 = 运算符被假定为默认值,否则 + 或者 - 运算符需要包含在字符串中。 |
bandwidthstring |
最大可用网络带宽(以字节/秒为单位)。 与 油门 选项一起使用。 如果 油门 是一个百分比并且带宽是 0 那么带宽限制将被禁用。 如果 节流阀 表示为数据速率(字节/秒),则忽略此选项。 默认为0 (没有带宽限制)。 默认值: “0” |
baseurllist / elements=string |
指向 yum 存储库的“repodata”目录所在的目录的 URL。它也可以是多个 URL 的列表。这样,如果 state 设置为present ,则需要 metalink 或 mirrorlist 参数。 |
coststring |
访问此存储库的相对成本。 用于衡量一个 repo 的包是否大于/小于任何其他包。 默认值: “1000” |
deltarpm_metadata_percentagestring |
当 deltarpm 元数据与 pkgs 的相对大小大于此值时,不会从 repo 下载 deltarpm 元数据。 请注意,您可以在 100 , 所以 200 意味着元数据需要是包大小的一半。 利用 0 关闭此检查,并始终下载元数据。 默认值: “100” |
deltarpm_percentagestring |
当 delta 与 pkg 的相对大小大于此值时,不使用 delta。 利用 0 关闭增量 rpm 处理。 [本地存储库(使用 ](file://) file:// baseurl )默认关闭 delta rpm。 默认值: “75” |
descriptionstring |
描述存储库的人类可读字符串。此选项对应于存储库文件中的“name”属性。仅当 state 设置为present 时,才需要此参数。 |
enabledboolean |
这告诉 yum 是否使用此存储库。Yum 默认值为 true 。选项:no ,yes |
enablegroupsboolean |
确定 yum 是否允许对此存储库使用包组。Yum 默认值为true 。选项:no ,yes |
excludelist / elements=string |
要从更新或安装中排除的程序包的列表。这应该是一个以空格分隔的列表。使用通配符(例如。 和 ) 是允许的。*``? 该列表也可以是常规的 YAML 数组。 |
failovermethodstring |
roundrobin 从要开始的 URL 列表中随机选择一个 URL,并在遇到联系主机的故障时继续浏览每个 URL。priority 从列出的第一个基URL开始,并按顺序读取它们。选项: roundrobin ←(默认),priority |
filestring |
用于保存存储库的不带.repo 扩展名的文件名。默认值为 name 的值。 |
gpgcakeystring |
指向存储库的 ASCII 装甲 CA 密钥文件的 URL。 |
gpgcheckboolean |
告诉 yum 是否应该对包执行 GPG 签名检查。 没有默认设置。 如果未设置该值,系统设置从 /etc/yum.conf 或系统默认 no 将会被使用。 选择: 不 是的 |
gpgkeylist / elements=string |
指向存储库的 ASCII 防护 GPG 密钥文件的 URL。它也可以是多个 URL 的列表。 |
groupstring |
应拥有文件系统对象的组的名称,如将提供给 chown。如果未指定,它将使用当前用户的当前组,除非您是 root 用户,在这种情况下,它可以保留以前的所有权。 |
http_cachingstring |
确定如何指示上游 HTTP 缓存处理 Yum 执行的任何 HTTP 下载。all 表示应缓存所有 HTTP 下载。packages 意味着只应缓存 RPM 包下载(但不应缓存存储库元数据下载)。none 意味着不应缓存 HTTP 下载。选择:****所有←(默认)包没有 |
includestring |
包括外部配置文件。同时支持本地路径和 URL。配置文件将插入到 include= 行的位置。包含的文件可能包含其他包含行。如果检测到包含环路,Yum 将因错误而中止。 |
includepkgslist / elements=string |
您只想从存储库中使用的软件包列表。 这应该是一个空格分隔的列表。 使用通配符的 Shell glob(例如。 * 和 ? ) 被允许。 替代变量(例如 $releasever ) 在这里很荣幸。 该列表也可以是常规 YAML 数组。 |
ip_resolvestring |
确定 yum 如何解析主机名。 4 或者 IPv4 - 仅解析为 IPv4 地址。 6 或者 IPv6 - 仅解析为 IPv6 地址。 选择: 4 6 IPv4 IPv6 任意 ←(默认) |
keepaliveboolean |
这告诉 yum 是否应该将 HTTP/1.1 keepalive 与此存储库一起使用。这可以通过在从存储库下载多个文件时使用一个连接来提高传输速度。选择:****无←(默认)是的 |
keepcachestring |
任何一个 1 或者 0 . 确定 yum 安装成功后是否保留头文件和包的缓存。 选择: 0 1 ←(默认) |
metadata_expirestring |
元数据过期的时间(以秒为单位)。默认值为 6 小时。默认值:“21600” |
metadata_expire_filterstring |
过滤metadata_expire时间,如果命令不需要,则允许以速度换取准确性。每个 yum 命令都可以指定它需要远程存储库提供一定程度的及时性质量。从“我即将安装/升级,所以最好是最新的”到“任何可用的都足够好”。never - 没有任何东西被过滤,总是服从metadata_expire。read-only:past - 仅关注过去信息的命令将从即将过期的元数据中筛选出来。例如。yum 历史信息(如果历史记录需要查找有关以前事务的任何内容,则根据定义,远程包在过去是可用的)。read-only:present - 在过去和未来之间平衡的命令。例如。嗯,香香列表。read-only:future - 可能导致运行其他需要最新元数据的命令的命令。例如。嗯,检查更新。请注意,此选项不会覆盖“yum clean expire-cache”。.**选择:**never,read-only:oast,read-only:present ← (default),read-only:future |
metalinkstring |
指定 repomd 的 metalink 文件的 URL.xml,通过将 repomd.xml 文件的镜像转换为 baseurl 来生成整个存储库的镜像列表。如果 state 设置为 present ,则需要 baseurl 或mirrorlist 。 |
mirrorliststring |
指定指向包含 baseurl 列表的文件的 URL。如果 state 设置为present ,则需要 baseurl 或 metalink 参数。 |
mirrorlist_expirestring |
时间(以秒为单位),在此时间之后,本地缓存的镜像列表将过期。默认值为 6 小时。默认值:“21600” |
modestring |
生成的文件系统对象应具有的权限。 对于那些习惯于 /usr/bin/chmod 的人,请记住模式实际上是八进制数。 您必须添加一个前导零,以便 Ansible 的 YAML 解析器知道它是一个八进制数(如0644 或者 01777 )或引用它(如 '644' 或者 '1777' ) 所以 Ansible 接收一个字符串并且可以自己将字符串转换为数字。 在不遵循这些规则之一的情况下给 Ansible 一个数字最终会得到一个十进制数字,这将产生意想不到的结果。 从 Ansible 1.8 开始,可以将模式指定为符号模式(例如, u+rwx 或者 u=rw,g=r,o=r ). 如果 mode 未指定且目标文件系统对象 不 存在,默认 umask 在为新创建的文件系统对象设置模式时将使用系统上的。 如果 mode 未指定且目标文件系统对象 确实 存在,将使用现有文件系统对象的模式。 指定 mode 是确保使用正确权限创建文件系统对象的最佳方法。 有关详细信息,请参阅 CVE-2020-1736。 |
module_hotfixesboolean |
禁用模块 RPM 过滤并使存储库中的所有 RPM 可用。 默认是 None . 选择: 不 是的 |
namestring / required |
唯一的存储库 ID。此选项在存储库文件中生成存储库的节名称。仅当 state 设置为present 或absent 时,才需要此参数。 |
ownerstring |
应该拥有文件系统对象的用户的名称,如将提供给 chown。如果未指定,它将使用当前用户,除非您是 root 用户,在这种情况下,它可以保留以前的所有权。 |
passwordstring |
用于基本身份验证的用户名的密码。 |
prioritystring |
强制对存储库进行有序保护。该值是从 1 到 99 的整数。此选项仅在安装了 YUM 优先级插件时才有效。默认值:“99” |
protectboolean |
保护包免受来自其他存储库的更新。选择:****无←(默认)是的 |
proxystring |
yum 应使用的代理服务器的 URL。设置为 以禁用全局代理设置。_none_ |
proxy_passwordstring |
此代理的密码。 |
proxy_usernamestring |
用于代理的用户名。 |
repo_gpgcheckboolean |
这告诉 yum 它是否应该从此存储库对 repodata 执行 GPG 签名检查。选择:****无←(默认)是的 |
reposdirpath |
.repo 文件将被存储的目录。 默认值: “/etc/yum.repos.d” |
retriesstring |
设置任何检索文件的尝试在返回错误之前应重试的次数。 将此设置为 0 让yum永远尝试。 默认值: “10” |
s3_enabledboolean |
启用对 S3 存储库的支持。此选项仅在安装了 YUM S3 插件时才有效。选择:****无←(默认)是的 |
selevelstring |
SELinux 文件系统对象上下文的级别部分。 这是 MLS/MCS 属性,有时称为 range . 当设置为 _default ,它将使用 level 政策的一部分(如果有)。 |
serolestring |
SELinux 文件系统对象上下文的角色部分。 当设置为 _default ,它将使用 role 政策的一部分(如果有)。 |
setypestring |
SELinux 文件系统对象上下文的类型部分。 当设置为 _default ,它将使用 type 政策的一部分(如果有)。 |
seuserstring |
SELinux 文件系统对象上下文的用户部分。 默认情况下,它使用 system 政策,如适用。 当设置为 _default ,它将使用 user 政策的一部分(如果有)。 |
skip_if_unavailableboolean |
如果设置为 yes 如果由于任何原因无法联系此存储库,yum 将继续运行。 这应该仔细设置,因为任何给定的命令都会咨询所有 repos。 选择: 没有 ←(默认) 是的 |
ssl_check_cert_permissionsboolean |
yum 是否应该检查存储库(远程和本地)证书路径的权限。 如果我们无法读取任何文件,则 yum 将强制 skip_if_unavailable 为 yes . 这对于在具有客户端证书文件的存储库上使用 yum 的非 root 进程最有用,这些文件只能由 root 读取。 选择: 没有 ←(默认) 是的 |
sslcacert aliases: ca_certstring string |
包含证书颁发机构数据库的目录的路径 yum 应该用于验证 SSL 证书。 |
sslclientcert aliases: client_certstring string |
SSL 客户端证书 yum 的路径应用于连接到存储库/远程站点。 |
sslclientkey aliases: client_keystring string |
SSL 客户端密钥 yum 的路径应用于连接到存储库/远程站点。 |
sslverify aliases: validate_certs string |
定义 yum 是否应验证 SSL 证书/主机。 **选择:**no, yes ←(默认) |
statestring |
存储库文件的状态。 **选择:**absent, present←(默认) |
throttlestring |
为下载启用带宽限制。此选项可以表示为绝对数据速率(以字节/秒为单位)。可以将 SI 前缀(k、M 或 G)附加到带宽值。 |
timeoutstring |
超时之前等待连接的秒数。默认值:“30” |
ui_repoid_varsstring |
当显示存储库 ID 时,如果这些 yum 变量在 baseurl/etc 中使用,则将这些 yum 变量附加到字符串中。变量按列出(和找到)的顺序追加。默认值:“发布服务器 basearch” |
unsafe_writes 布尔*boolean * |
影响何时使用原子操作来防止数据损坏或从目标文件系统对象读取不一致。默认情况下,此模块使用原子操作来防止数据损坏或从目标文件系统对象读取不一致,但有时系统被配置或只是以阻止这种情况的方式中断。一个例子是 docker 挂载的文件系统对象,它不能从容器内部以原子方式更新,只能以不安全的方式编写。此选项允许 Ansible 在原子操作失败时回退到更新文件系统对象的不安全方法(但是,它不会强制 Ansible 执行不安全的写入)。重要!不安全的写入受争用条件的影响,并可能导致数据损坏。选择:****无←(默认)是的 |
usernamestring |
用于对存储库或实际任何 URL 进行基本身份验证的用户名。 |
属性 | 支持 | 描述 |
---|---|---|
check_mode | full | 可以在check_mode中运行,并在不修改目标的情况下返回更改的状态预测 |
diff_mode | full | 在差异模式下,将返回已更改的内容(或可能需要在check_mode中更改)的详细信息 |
平台 | Platform: rhel | 可针对其操作的目标操作系统/系列 |