Ansible Ad-Hoc 命令基础实战(Linux 系统)

这是纯实操、可直接复制运行的教程,完全适配 openEuler 系统,一步一步跟着做就能完成全部 6 个任务。

前置准备

确保已经:

  1. 安装好 Ansible
  2. 配置好主机清单(/etc/ansible/hosts
  3. 节点之间免密登录

任务 1:查询当前版本 Ansible 有多少个核心模块

运行

复制代码
# 查看 ansible 版本
ansible --version

# 列出所有可用模块(核心+扩展),统计数量
ansible-doc -l | wc -l
  • ansible-doc -l:列出所有模块
  • wc -l:统计行数(即模块总数)

任务 2:查看 ping 模块的帮助信息

运行

复制代码
ansible-doc ping
  • ping 模块不是网络 ping,是 Ansible 测试连通性的模块
  • 帮助内容很少,因为参数极少

任务 3:查看 user 模块的帮助信息,对比 ping 模块

运行

复制代码
ansible-doc user

两者区别

  • ping 模块:功能单一、参数少,仅做连通性测试
  • user 模块:管理系统用户,参数非常多(创建、删除、修改家目录、UID、GID、shell 等)

任务 4:写一个 Ansible ping 指令,修改 ping 的返回值

Ansible ping 模块有一个参数 data,可以自定义返回内容。

运行

复制代码
ansible all -m ping -a "data=hahahaha"

运行后返回结果会变成你自定义的文字,而不是默认的 pong


任务 5:查看 user 模块的用法(简洁版)

运行

复制代码
ansible-doc -s user
  • -s:只显示参数用法,不显示长篇说明
  • 能快速看到:nameshellstate 等关键参数

任务 6:用 user 模块在第 3 台机器添加账号,shell 为 /bin/sh

方式 1:指定第 3 台机器的主机名 / IP

运行

复制代码
ansible "test03" -m user -a "name=zhangsan03 shell=/bin/sh state=present"

方式 2:如果你的主机分组,直接用序号匹配(第 3 台)

运行

复制代码
ansible "all[2]" -m user -a "name=testuser shell=/bin/sh state=present"

命令解释

  • name=testuser:用户名
  • shell=/bin/sh:指定登录 shell
  • state=present:确保用户存在(即创建用户)

验证是否创建成功

运行

复制代码
ansible test03 -m shell -a "grep testuser /etc/passwd"

全套命令汇总(可直接复制执行)

运行

复制代码
# 1. 查看模块数量
ansible-doc -l | wc -l

# 2. 查看 ping 帮助
ansible-doc ping

# 3. 查看 user 帮助
ansible-doc user

# 4. 自定义 ping 返回值
ansible all -m ping -a 'data="自定义返回值:openEuler连通性正常"'

# 5. 查看 user 简化用法
ansible-doc -s user

# 6. 在第3台机器创建用户
ansible test03 -m user -a "name=myuser shell=/bin/sh"

总结

  1. ansible-doc 是查看模块帮助的核心命令
  2. ping 模块简单,user 模块功能强大
  3. Ad-Hoc 命令 = ansible 主机 -m 模块 -a "参数"
  4. openEuler 上 Ansible 用法与 CentOS/RHEL 完全一致
相关推荐
HPFBoy7 分钟前
log4net 数据库存日志正确配置
数据库
liuxiaowei334 分钟前
【绝版教程】新版MySQL DBA高级实战进阶班 MySQL8.0 姜承尧-腾讯数据库总监
数据库·mysql·dba
维天说1 小时前
CLI-Switch 2026年3月版历史设计:Hook、TTY 隔离与 JSON 状态
java·服务器·json
破碎的南瓜1 小时前
sqli--sql注入过关笔记(1,2,3,4,5,9)
数据库·笔记·sql
Zhang~Ling1 小时前
从 fopen 到 struct file:从零开始拆解 Linux 文件 I/O
linux·运维·服务器
DeeplyMind1 小时前
Linux 深入 per-VMA lock:Linux 缺页路径如何摆脱 mmap_lock
linux·per-vma lock
爱写代码的阿森1 小时前
鸿蒙三方库 | harmony-utils之PreferencesUtil首选项数据监听详解
服务器·华为·harmonyos·鸿蒙·huawei
爱写代码的森1 小时前
蒙三方库 | harmony-utils之FileUtil文件重命名与属性查询详解
linux·运维·服务器·华为·harmonyos·鸿蒙·huawei
吠品2 小时前
Zabbix Web界面误报Server未运行的排查与解决
java·服务器·数据库
XMAIPC_Robot2 小时前
软硬协同实时控制|RK3588业务调度+FPGA硬件时序,ethercat实现半导体设备微秒级响应(125us)
linux·arm开发·人工智能·fpga开发