#启动远程主机vsftpd服务 ansible test -m command -a 'service vsftpf start' #此命令不支持$VARNAME <> | ; &等,建议使用shell模块实现 ansible test -m command -a 'echo tang1611 | passwd --stdin tang' 不成功
Shell
和command相似
ansible test -m shell -a 'echo tang1611 | passwd --stdin tang'
Script
运行脚本
ansible test -m script -a f1.sh
Copy
从控制端复制文件到被控端
#src指向的是要复制的文件,dest指向目标的目录,owner是所属组,mode是权限,backup是备份。如果目标存在,默认是覆盖的 ansible test -m copy -a "src=/root/f1.sh dest=/tem/f2.sh owner=tang mode=600 backup=yes" #也可以利用content向文件写内容 ansible test -m copy -a "content='hello world\n' dest=/tem/f1.txt"
Fetch
从被控端取文件到控制端
#src是被控端需要复制的文件,dest是目标目录 ansible test -m fetch -a "src=/root/a.sh dest=/data/scripts"
File
设置文件属性
ansible test -m file -a "name=/home/var.log state=touch" ansible test -m file -a "path=/root/a.sh owner=tang mode=755" ansible test -m file -a 'src=/app/testfile dest/app/testfile-link state=link'
Hostname
管理主机名
ansible test -m hostname -a "name=webhost"
Cron
计划任务,支持时间:minute,hour,day,month,weekday
#开启任务 ansible test -m cron -a "minute=* weekday=1,3,5 job='/usr/sbin/ntpdate 192.168.136.128 &>/dev/null' name=Synctime" #禁用任务 ansible test -m cron -a 'disabled=yes job='/usr/sbin/ntpdate 192.168.136.128 &>/dev/null' name=Synctime' #删除任务 ansible test -m cron -a 'state=absent job='/usr/sbin/ntpdate 192.168.136.128 &>/dev/null' name=Synctime'
Yum
管理包
#安装 ansible test -m yum -a "name=httpd state=latest" #删除 ansible test -m yum -a "name=httpd state=absent"