Linux-Ansible基础模块

发布于:2025-02-23 ⋅ 阅读:(13) ⋅ 点赞:(0)

https://i-blog.csdnimg.cn/blog_migrate/58966ddd9b29aabe8841f5ec34f0d31c.gif

🏡作者主页:点击!

🤖Linux专栏:点击!

⏰️创作时间:2025年02月22日19点21分

在这里插入图片描述

模块

Command模块

在这里插入图片描述

Command模块实践

ansible 192.168.1.100 -m command -a "chdir=/ ls"    #在控制端查看被控制端根目录下的所有文件
ansible 192.168.1.100 -m command -a "chdir=/ mkdir data"    #在控制端对被控制端根目录下创建date文件夹忽略报错
ansible 192.168.1.100 -m command -a "chdir=/etc cp resolv.conf /data"  #进入etc下将 resolv.conf文件拷贝/date

ansible 192.168.1.100 -m command -a "creates=/data/resolv.conf cat /data/resolv.conf" #创建文件并查看文件内容
#当然这个会提示报错,因为本地已经通过上一条命令已经将文件进行了拷贝

ansible 192.168.1.100 -m command -a "removes=/data/resolv.conf cat /data/resolv.conf" #移除/date/resolv.conf文件

ansible 192.168.1.100 -m command -a "pwd"    #显示当前所在目录
Shell模块

在这里插入图片描述

Shell模块实践

ansible 192.168.1.100 -a "adduser test"    #控制端在被控制端上创建用户 test
ansible 192.168.1.100 -m shell -a "echo admin@123 | passwd --stdin test"    #为 test 用户设置密码

# ssh test@192.168.1.100    admin@123  进行测试是否创建成功

ansible 192.168.1.100 -m shell -a "cat /etc/passwd"    #使用shell模块查看/etc/passwd

ansible 192.168.1.100 -m shell -a "ls /"    #使用ls命令查看根目录下的所有文件
Script模块

在这里插入图片描述

Script模块实践

nano host_ip.sh

#!/bin/bash
if [$HOSTNAME = "Zabbix"];then
	hostname -i
fi

ansible all -m script -a "/root/host_ip.sh" | grep "stdout"