前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Ansible 模块

Ansible 模块

作者头像
Alone-林
发布2023-03-17 11:17:31
1.3K0
发布2023-03-17 11:17:31
举报
文章被收录于专栏:Linux云运维Linux云运维

Ansible 模块

1、什么是Ansible模块?

bash无论在命令行上执行,还是bash脚本中,都需要调用cd、ls、copy、yum等命令;模块就是Ansible的“命令”,模块是ansible命令行和脚本中都需要调用的。常用的Ansible模块有yum、copy、template等。

2、Ansible命令及参数

代码语言:javascript
复制
# 语法格式:
ansible <pattern_goes_here> -m <module_name> -a <arguments>
# 也就是:
ansible  匹配模式   -m  模块  -a  '需要执行的内容'

# 解释说明:
匹配模式:即哪些机器生效 (可以是某一台, 或某一组, 或all) , 默认模块为command , 执行常规的shell命令.

# 参数:
-v,--verbose:输出更详细的执行过程信息,-vvv可得到执行过程所有信息。
 
-i,PATH,--inventory(清单)=PATH:指定inventory(清单)信息,默认/etc/ansible/hosts
 
-f NUM,--forks=NUM:并发线程数,默认5个线程。
 
--private-key=PRIVATE_KEY_FILE:指定密钥文件。
 
-m NMAE,--module-name=NAME:指定执行使用的模块。
 
-M DIRECTORY,--module-path=DIRECTORY:指定模块存放路径,默认/usr/share/ansible,也可以通过ANSIBLE_LIBRARY设定默认路径。
 
-a ‘ARGUMENTS’,--args=‘ARGUMENTS’:模块参数。
 
-k,--ask-pass SSH:认证密码
 
-K,--ask-sudo-pass sudo:用户的密码(--sudo时使用)。
 
-o,--one-line:标准输出至一行。
 
-s,--sudo:相当于Linux系统下的sudo命令。
 
-t DIRECTORY,--tree=DIRECTORY:输出信息至DIRECTORY目录下,结果文件以远程主机命名。
 
-T SECONDS,--timeout=SECONDS:指定连接远程主机的最大超时,单位是秒。
 
-B NUM,--background=NUM:后台执行命令,超NUM秒后中止正在执行的任务。
 
-P NUM,--poll=NUM:定期返回后台任务进度。
 
-u USERNAME,--user=USERNAME:指定远程主机以USERNAME运行命令。
 
-U SUDO_USERNAME,--sudo-user=SUDO_USERNAME:使用sudo,相当于LInux下的sudo命令。
 
-c CONNECTION,--connection=CONNECTION:指定连接方式,可用选项paramiko(SSH)、ssh、local,local方式常用于crontab和kickstarts。
 
-l  SUBSET,--limit=SUBSET:指定运行主机。
 
-l ~REGEX,--limit=~REGEX:指定运行主机(正则)。
 
--list-hosts:列出符合条件的主机列表,不执行任何命令。
  

# 执行的状态返回信息:
		--绿色:执行成功并且不需要做改变的动作
		--黄色:执行成功并且对目标主机做变更
		--红色:执行失败

3、Ansible模块

  • 文件模块:
    • copy:将本地文件复制到受控主机
    • file:创建或者和删除远程主机上的文件或者目录
    • lineinfile:替换文件中的内容,添加内容到指定文件位置
    • synchronize:使用rsync同步内容
  • 软件包模块
    • package:使用操作系统本机的自动检测软件包管理器管理软件包
    • yum:使用yum软件包管理器管理软件包
    • apt:使用apt软件包管理器管理软件包
    • dnf:使用dnf软件包管理器管理软件包
    • pip:从PyPI管理Python软件包
  • 系统模块
    • firewalld:使用firewalld管理任意端口和服务
    • reboot:重新启动计算机
    • service:管理服务
    • user:添加、删除和管理用户账户
  • Net Tools模块
    • get_url:通过http、https或者ftp下载文件
    • nmcli:管理网络
    • uri:与WEB服务交互

3、Ansible 常用模块

1 user模块

参数

解释

name

要创建、修改、移除的用户名

password

设置用户密码。此处只能使用加密密码作为值

system

设置为yes表示创建一个系统用户,只能用于创建不能用于修改已有用户为系统用户

state

创建用户(present)还是删除用户(absent)。 默认为present

createhome

创建家目录,或者已有的用户但家目录不存在也会创建。设置为no则不创建家目录

home

指定要创建的家目录路径

move_home

如果设置为yes,则"home="则表示将家目录移动到此选项指定的路径下

uid

设置用户的uid

group

设置用户的primary group

groups

将用户加入到辅助组列表中。如果设置"groups=", 则会将此用户从所有辅助组中移除

shell

设置用户的shell

force

配合’state=absent’时,等价于’userdel --force’, 即强制删除用户、家目录和邮件列表

remove

配合’state=absent’时, 等价于’userdel --remove’, 即删除家目录和邮件列表

update_password

user是幂 等模块,"always"将总是修改密码。"on_.create"将只在创建用户时设置密码

示例:

代码语言:javascript
复制
# 临时命令使用user模块来确保newbie用户存在于node1上,并且其UID为4000
[student@ansible ~/ansible]$ansible node1 -m user -a 'name=newbie uid=4000 state=present'
[root@node1 ~]#id newbie
uid=4000(newbie) gid=4000(newbie) 组=4000(newbie)

# 设置newbie用户密码
[student@ansible ~/ansible]$ansible node1 -m user -a 'name=newbie password=$1$x5dsadpB$PqzHJZD//CqCaxOZoZcj71'

# 创建无家目录,不能登录的用户
[student@ansible ~/ansible]$ansible node1 -m user -a 'name=zhao create_home=no shell=/sbin/nologin state=present'
2 shell模块

在远程主机上执行复杂的命令

代码语言:javascript
复制
# 语法:
ansible 主机清单 -m  shell -a  '执行命令'

# 示例:
--临时命令使用shell模块来删除node1.example.com节点中的用户newbie
[student@ansible ~/ansible]$ansible node1 -m shell -a 'userdel -r newbie'
node1 | CHANGED | rc=0 >>
3 copy模块

参数

模块

backup=[yes|no]

拷贝的同时也创建一个包含时间戳信息的备份文件,默认为no

dest

目标路径,只能是绝对路径,如果拷贝的文件是目录,则目标路径必须也是目录

content

直接以content给定的字符串或变量值作为文件内容保存到远程主机上,它会替代src选项

directory_mode

当对目录做递归拷贝时,设置了directory_mode将会使得只拷贝新建文件

follow=[yes|no]

是否追踪到链接的源文件

force=[yes|no]

设置为yes(默认)时, 将覆盖远程同名文件。设置为no时,忽略同名文件的拷贝

group

设置远程文件的所属组

owner

设置远程文件的所有者

mode

设置远程文件的权限。使用数值表示时不能省略第一位,如0644。也可以使用’u+rwx’或’u=rw,g=r,0=r’等方式设置

src

拷贝本地源文件到远程,可使用绝对路径或相对路径。如果路径是目录,且目录后加了斜杠"/",则只会拷贝目录中的内容到远程,如果目录后不加斜杠,则拷贝目录本身和目录内的内容到远程。

示例:

代码语言:javascript
复制
# 将源文件,copy到被控端
[student@ansible ~/ansible]$ansible node1 -m copy -a 'src=/etc/fstab dest=/var/tmp/fstab'
4 template模块

参数

解释

backup

拷贝的同时也创建一个包含时间戳信息的备份文件,默认为no

dest

目标路径

force

设置为yes (默认)时,将覆盖远程同名文件。设置为no时,忽略同名文件的拷贝

group

设置远程文件的所属组

owner

设置远程文件的所有者

mode

设置远程文件的权限。使用数值表示时不能省略第一位,如0644。也可以使用’u+rwx’ or 'u=rw,g=r,0=r’等 方式设置

src

ansible控制器上Jinja2格式的模板所在位置,可以是相对或绝对路径

validate

在复制到目标主机后但放到目标位置之前,执行此选项指定的命令。一般用于检查配置文件语法,语法正确则保存到目标位置。如果要引用目标文件名,则使用%s, 下面的示例 中的s%即表示目标机器上的/etc/nginx/nginx. conf.

示例:

代码语言:javascript
复制
[student@ansible ~/ansible]$ansible node1 -m template -a 'src=/usr/share/doc/httpd/httpd-vhosts.conf dest=/etc/httpd/conf.d/httpd-vhosts.conf group=root owner=root mode=0644'
5 file模块

参数

解释

group

设置文件的所属组

owner

设置文件的所有组

mode

修改权限

path

指定代操作的文件

recurse

递归修改文件属性,要求state=directory

src

原文件名

state

directory:如果目录不存在则递归创建 file:文件不存在时,不会被创建(默认值)touch:创建新文件link:修改或创建软链接hard:修改或创建硬链接absent:目录和其中的文件会被递归删除,文件或链接将取消链接状态

示例:

代码语言:javascript
复制
# 修改文件的权限属性和context值
[student@ansible ~/ansible]$ansible node1 -m file -a 'path=/var/tmp/fstab mode=g+w mode=o+w group=galaxy owner=galaxy setype=samba_share_t'

# 新建文件
[student@ansible ~/ansible]$ansible node1 -m file -a 'path=/var/tmp/bbb state=touch'

# 新建目录
[student@ansible ~/ansible]$ansible node1 -m file -a 'path=/var/tmp/cc state=directory'

# 删除文件或者目录
[student@ansible ~/ansible]$ansible node1 -m file -a 'path=/var/tmp/cc state=absent'

# 创建软链接
[student@ansible ~/ansible]$ansible node1 -m file -a 'dest=/var/tmp/chenyu src=/var/tmp/bbb state=link'

# 创建硬链接
[student@ansible ~/ansible]$ansible node1 -m file -a 'dest=/var/tmp/chenyu1 src=/var/tmp/aaa state=hard'
6 lineinfile模块

参数

解释

path

必须参数,指定要操作的文件路径

line

必须参数,指定要替换的文本内容

regexp

匹配正则语句,与要过滤的关键字

state

状态语句:state=absent则是删除,state=present默认

backrefs

表示是否开启反向引用,默认no

create

当文件不存在时,是否创建对应的文件

backup

是否在修改文件之前对文件进行备份

insertafter

借助insertafter参数可以将文本插入到"指定的行"之后

insertbefore

借助insertbefore参数可以将文本插入到"指定的行"之前

示例:

代码语言:javascript
复制
# 通过正则匹配查找/etc/selinux/config 文本中开头是SELINUX=的行,并替换成SELINUX=disabled
[student@ansible ~/ansible]$ansible node1 -m lineinfile -a 'path=/etc/selinux/config regexp="^SELINUX=" line="SELINUX=disabled"'

# 通过正则匹配查找/etc/selinux/config文本,并在文本末尾插入一行www.alone.com
[student@ansible ~/ansible]$ansible node1 -m lineinfile -a 'path=/etc/selinux/config regexp="EOF" line="www.alone.com"'

# 通过正则匹配查找/etc/selinux/config文本,并在文本行首插入一行www.alone.com
[student@ansible ~/ansible]$ansible node1 -m lineinfile -a 'path=/etc/selinux/config regexp="BOF" line="www.alone.com"'

# 4.通过正则匹配查找/etc/selinux/config文本,删除所有的www.alone.com字段.
[student@ansible ~/ansible]$ansible node1 -m lineinfile -a 'path=/etc/selinux/config regexp="^www.alone.com" state=absent'

# 5.通过正则匹配查找/etc/selinux/config文本中在开头是SELINUX=disabled行的行后插入一段话www.alone.com
[student@ansible ~/ansible]$ansible node1 -m lineinfile -a 'path=/etc/selinux/config insertafter="^SELINUX=" line="www.alone.com"'

# 6.通过正则匹配查找/etc/selinux/config文本中在开头是SELINUX=disabled行的行前插入一段话www.alone.com
[student@ansible ~/ansible]$ansible node1 -m lineinfile -a 'path=/etc/selinux/config insertbefore="^SELINUX=" line="www.alone.com"'
7 yum_repository模块

参数

解释

baseurl

地址

mirrorlist

设置mirrorlist地址

description

描述信息

enabled

是否启用该仓库

file

保存此仓库的文件,不设置该项的话则默认以name选项中的名称命名

gpgcheck

是否要进行gpgcheck

name

仓库的名称

reposdir

保存.repo文件的目录

state

repo文件的状态,present/absent

示例:

代码语言:javascript
复制
# 配置yum仓库
[student@ansible ~/ansible]$ansible done1 -m yum_repository -a 'file=server name=BaseOS description=BaseOS baseurl=file:///mnt/BaseOS enabled=yes gpgcheck=no'
[student@ansible ~/ansible]$ansible done1 -m yum_repository -a 'file=server name=AppStream description=AppStream baseurl=file:///mnt/AppStream enabled=yes gpgcheck=no'
8 yum模块

参数

解释

name

用于指定安装包的包名

state

用于指定软件包的状态,默认值为present

disable_gpg_check

用于禁用对 rpm 包的公钥 gpg 验证,默认值为 no

enablerepo

用于指定安装软件包时临时启用的 yum 源

disablerepo

用于指定安装软件包时临时禁用的 yum 源

exclude

排除哪些包不安装,仅在state=present或latest时生效

list

类似于yum list

update_cache

强制更新yum的cache

示例:

代码语言:javascript
复制
# 安装软件:通过Yum模块批量的安装httpd服务到指定主机上.
[student@ansible ~/ansible]$ansible node1 -m yum -a "name=httpd state=installed"

# 卸载软件:通过Yum模块批量的卸载httpd服务主机.
[student@ansible ~/ansible]$ansible node1 -m yum -a "name=httpd state=removed" 
9 service模块

参数

解释

name

此参数用于指定需要操作的服务名称

state

此参数用于指定服务的状态,started、stopped、restarted、reloaded

enabled

此参数用于指定是否将服务设置为开机 启动项

示例:

代码语言:javascript
复制
# 设置服务开机自启动,设置httpd服务开机自启动.
[student@ansible ~/ansible]$ansible node1 -m service -a "name=httpd state=started enabled=yes"

# 关闭服务开机自启动,关闭httpd服务开机自启动.
[student@ansible ~/ansible]$ansible node1 -m service -a "name=httpd state=stopped enabled=no"
10 fetch模块

参数

解释

dest

目标绝对路径

src

复制的源文件路径,源文件只能是文件

flat

改变拉取后的路径存储方式。如果设置为yes, 且当dest以"/"结尾时, 将直接把源文件的basename存储在dest下。显然,应该考虑多个主机拉取时的文件覆盖情况。

fail on missing

当设置为yes时,如果拉取的源文件不存在,则此任务失败。默认为no.

validate_checksum

远程主机上的源文件。只能是文件,不支持目录。在未来的版本中可能会支持目录递归拉取。

示例:

代码语言:javascript
复制
# 将远程主机的/etc/fstab文件拉取到本地来,存储的名字为/tmp/node1/etc/fstab
[student@ansible ~/ansible]$ansible node1-m fetch -a 'src=/etc/fstab dest=/tmp'

# 将某台远程主机的/etc/fstab文件拉取到本地来,存储的名字为/tmp/fstab
[student@ansible ~/ansible]$ansible node1 -m fetch -a 'src=/etc/fstab dest=/tmp/ flat=yes'

# 将远程主机的/etc/fstab文件拉取到本地来,存储的名字为/tmp/fstab-node1
[student@ansible ~/ansible]$ansible node1 -m fetch -a 'src=/etc/fstab dest=/tmp/fstab-{{inventory_hostname}} flat=yes'
11 firewalld模块

参数

解释

icmp_block

在防火墙中添加或者移除的ICMP块

icmp_bolck_inversion

开启/关闭防火墙区域ICMP报文反转功能

immediate

如果将此配置设置为永久性,则应立即应用此配置,yes or no,默认no

interface

在防火墙中添加或移除interface

masquerade

在在防火墙中开启或关闭masquerade功能

offline

是否在防火墙离线时运行此模块,yes or no

permanent

该配置是否在运行的防火墙配置中,或者在重新启动时仍然存在。注意,如果这是no, immediate被假定为yes。

port

在防火墙中添加或移除端口名称或端口范围。端口范围必须为PORT/PROTOCOL或PORT-PORT/PROTOCOL格式

rich_rule

rich_rule添加或删除到防火墙

service

在防火墙中添加或移除服务名称该服务必须在firewall-cmd --get-services的输出中列出

source

在防火墙中添加或移除某个来源的网络

state

启用或禁用一项设置。对于端口:该端口是否接受(enabled)或拒绝(disabled)连接。状态的(present)和(absent)只能在区域级别操作中使用(即,当除了zone和state没有设置其他参数时)。

timeout

该规则应在非永久性时生效的时间,默认0

zone

添加或移除的防火墙区域。注意,可以为每个系统配置默认的区域,可能的值有block, dmz, drop, external, home, internal, public, trusted, work,public

示例:

代码语言:javascript
复制
# 允许http流量的传入
[student@ansible ~/ansible]$ansible node1 -m firewalld -a 'service=http   permanent=yes state=enabled immediate=yes'

# 副规则 允许192.168.111.0/24主机http流量的传入
[student@ansible ~/ansible]$ansible node1 -m firewalld -a ‘zone=public rich_rule="rule family=ipv4 source address=192.168.111.0/24 service name=http accept" permanent=yes state=enabled immediate=yes'
12 replace模块

参数

解释

path

必须参数,指定要操作的文件名称

regexp

必须参数,指定一个正则表达式

replace

指定最终要替换成的文本

backup

在修改文件之前对文件进行备份,yes/no

示例:

代码语言:javascript
复制
# 将/tmp/zsl文件中的“abc”替换成“yyy”
[student@ansible ~/ansible]$ansible node1 -m replace -a 'path=/tmp/zsl regexp="abc" replace="yyy"'

# 将/tmp/zsl文件中的“yyy”替换成“iii”,且把替换前的/tmp/zsl文件备份
[student@ansible ~/ansible]$ansible node1 -m replace -a 'path=/tmp/zsl regexp="yyy" replace="iii" backup=yes'
13 parted模块

参数

解释

device

指定硬盘设备路径 比如 /dev/vdb

label

指定分区表类型 gpt mbr

number

指定分区序号

part_start

分区起始位置

part_end

分区结束位置

state

指定操作方式 创建(present) 、删除(absent) 、查信息(info)

示例:

代码语言:javascript
复制
# 新建扩展分区
[student@ansible ~/ansible]$ansible node1 -m parted -a 'device=/dev/sda number=4 part_type=extended part_start=46GiB part_end=49.8GiB state=present'

# 新建逻辑分区
[student@ansible ~/ansible]$ansible node1 -m parted -a 'device=/dev/sda number=5 part_type=logical part_start=46.1GiB part_end=48.2GiB state=present'
14 filesystem模块

参数

解释

dev

要格式化的分区

fstype

文件系统类型 比如 ext4 xfs

force

强制格式化,如果以前分区中有数据

示例:

代码语言:javascript
复制
# 给/dev/sda5格式化,类型是xfs
[student@ansible ~/ansible]$ansible node1 -m filesystem -a 'fstype=xfs dev=/dev/sda5'
15 mount模块

参数

解释

path

挂载点

src

挂载的文件

fstype

挂载的硬盘类型 比如iso9660、ext4、xfs、nfs、cifs samba的共享文件系统ntfs windows磁盘文件系统

opts

传递给mount命令的参数

state

present 开机挂载,仅将挂载配置写入/etc/fstab并不会真的挂载mounted 挂载设备,并将配置写入/etc/fstabunmounted 卸载设备,不会清除/etc/fstab写入的配置absent 卸载设备,并清理/etc/fstab写入的配置

示例:

代码语言:javascript
复制
# 新建挂载点/common
[student@ansible ~/ansible]$ansible node1 -m file -a 'path=/common state=directory'

# 查看/dev/sda5的UUID
[student@ansible ~/ansible]$ansible node1 -m shell -a 'blkid /dev/sda5'

# 将分区/dev/sda5挂载到/common目录
[student@ansible ~/ansible]$ansible node1 -m mount -a 'path=/common src="UUID=d162b8b9-2326-4ee4-a559-80861461c4f0" fstype=xfs state=mounted'

# 卸载
[student@ansible ~/ansible]$ansible node1 -m mount -a 'path=/common src="UUID=d162b8b9-2326-4ee4-a559-80861461c4f0" fstype=xfs state=absent'
16 lvg模块

参数

解释

vg

卷组名称

state

present创建(默认) 或者 absent删除

force

可以在删除时使用

pvs

指定物理卷

pesize

设定pe大小

示例:

代码语言:javascript
复制
# 新建卷组vg0
[student@ansible ~/ansible]$ansible node1 -m lvg -a 'vg=vg0 pesize=16M pvs=/dev/sda5
17 lvol模块

参数

解释

lv

定义逻辑卷名称

size

定义逻辑卷大小

vg

逻辑卷的空间来自哪个vg

state

present创建(默认) 或者 absent删除

force

强制删除或者调整逻辑卷大小

示例:

代码语言:javascript
复制
# 新建逻辑卷lv0
[student@ansible ~/ansible]$ansible node1 -m lvol -a 'lv=lv0 size=1000M vg=vg0'

# 在线扩容逻辑卷
[student@ansible ~/ansible]$ansible node1 -m lvol -a 'lv=lv0 size=1600M vg=vg0 resizefs=yes'
18 sefcontext模块

参数

解释

target

指定目标目录

setype

设置安全性本文

state

模块状态:present代表增加目录的安全性本文;absent代表删除目录的安全性本文

示例:

代码语言:javascript
复制
# 修改context值
[student@ansible ~/ansible]$ansible node1 -m sefcontext -a 'target="/share(/.*)?" setype=samba_share_t state=present'

# 应用新的selinux 文件的context值
[student@ansible ~/ansible]$ansible node1 -m command -a 'restorecon -Rv /share'
19 debug模块

参数

解释

msg

调试输出的消息

var

将某个任务执行的输出作为变量传递给debug模块,debug会直接将其打印输出

verbosity

debug的级别(默认是0级,全部显示)

示例:

代码语言:javascript
复制
# 输出Alone
[student@ansible ~/ansible]$ansible node1 -m debug -a 'msg=Alone'
20 cron模块

参数

解释

user

用于设置当前计划任务属于哪个用户,当不使用此参数时,默认为管理员用户

job

指定计划的任务中需要实际执行的命令或者脚本

name

用于设置计划任务的名称,计划任务的名称会在注释中显示

state

相关状态信息,当删除计划任务时,需要将 state 的值设置为 absent,用于创建present(默认)|用于移除absent

disabled

当计划任务有名称时,我们可以根据名称使对应的任务失效

backup

此参数的值设置为yes,那么当修改或者删除对应的计划任务时,会对计划任务备份

$time

指定具体的执行时间、minute分、hour时、day天、month月、weekday、0-7 代表周

示例:

代码语言:javascript
复制
# 创建计划任务,任务名称为mkdirs test 任务于每天1点5分,执行输出一段话echo hello lyshark
[student@ansible ~/ansible]$ansible node1 -m cron -a "name='mkdirs test' minute=5 hour=1 job='echo hello lyshark'"

# 删除计划任务mkdirs test,删除前做好备份.
[student@ansible ~/ansible]$ansible node1 -m cron -a "name='mkdirs test' state=absent backup=yes"
21 get_url模块

参数

解释

dest

文件下载到远程的那个目录下如果dest是一个目录,则使用url的base name作为文件名如果dest是一个目录,则’force’选项不生效如果dest是一个目录,则总是会下载目标文件,但只在已存在的文件变化了才会替换旧文件如果设置为yes, 且dest不是一个目录时,则总是会下载文件,但只在已存在的文件变化了才会替换旧文件如果设置为no(默认),则只会在目录路径下不存在该文件时才会进行下载

force

是否强制覆盖yes/no

url

指定一个URL地址

backup

下载文件时间时创建一个名称中包含时问戳的备份文件

tmp_dest

下载时临时存放目录,在任务执行完成前会删除下载的临时文件

group

文件/目录的所属组

owner

文件/目录的所有者

timeout

请求ur1时的超时时间,默认10秒钟

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-10-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Ansible 模块
    • 1、什么是Ansible模块?
      • 2、Ansible命令及参数
        • 3、Ansible模块
          • 3、Ansible 常用模块
            • 1 user模块
            • 2 shell模块
            • 3 copy模块
            • 4 template模块
            • 5 file模块
            • 6 lineinfile模块
            • 7 yum_repository模块
            • 8 yum模块
            • 9 service模块
            • 10 fetch模块
            • 11 firewalld模块
            • 12 replace模块
            • 13 parted模块
            • 14 filesystem模块
            • 15 mount模块
            • 16 lvg模块
            • 17 lvol模块
            • 18 sefcontext模块
            • 19 debug模块
            • 20 cron模块
            • 21 get_url模块
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档