如何使用ansible上的A用户操作其它服务上的B用户目录下的文件

通过在Ansible主机清单中为目标组指定 ansible_user=B(即其他服务器上的B用户),就能让Ansible以B用户的身份连接目标服务器,从而操作B用户目录下的文件(前提是B用户对自身目录有读写权限,且已配置Ansible到目标服务器B用户的免密登录)。

简单来说,核心逻辑是:Ansible连接目标服务器时使用的"远程用户",决定了它能操作该用户权限范围内的文件。只要将 ansible_user 设为目标服务器上的B用户,就能直接操作B用户目录下的文件(如 /home/B/ 下的内容),无需依赖Ansible所在机器的A用户。

shell 复制代码
# 1. 先定义主机组(例如:web服务器组、数据库组)
[web_servers]
web01.example.com  # 组内主机1
web02.example.com  # 组内主机2

[db_servers]
db01.example.com   # 组内主机1
db02.example.com   # 组内主机2

# 2. 为每个组指定专属远程用户(关键:[组名:vars] 段)
[web_servers:vars]
ansible_user=webadmin  # web_servers组所有主机,默认用webadmin用户登录

[db_servers:vars]
ansible_user=dbadmin   # db_servers组所有主机,默认用dbadmin用户登录

# (可选)全局默认用户:未单独指定的组,使用此用户(放在清单最顶部或[all:vars])
[all:vars]
ansible_user=default_user  # 如test_servers组未配置,就用default_user
相关推荐
炸炸鱼.2 天前
Ansible 企业级实战:Playbook 与 Roles 完全指南
网络·ansible
风曦Kisaki3 天前
# 自动化运维Day03:Ansible模块进阶(setup,debug),四种常用变量,进阶语法;Ansible Roles(角色)
运维·自动化·ansible
炸炸鱼.5 天前
Ansible 部署应用:从入门到精通
ansible
Peace5 天前
【Ansible】
linux·运维·ansible
Plastic garden6 天前
K8s(1)前置ansible准备环境
容器·kubernetes·ansible
遇见火星8 天前
从0到1掌握Ansible:让自动化运维不再是梦想
运维·自动化·ansible
遇见火星9 天前
Jenkins + Ansible 集成实战:把配置管理焊进流水线里
运维·ansible·jenkins
江华森10 天前
Ansible 自动化运维:从入门到实战
运维·自动化·ansible
JackSparrow41411 天前
使用Ansible批量管理+更新产品环境服务器配置
运维·服务器·ci/cd·kubernetes·自动化·ansible·sre
Cat_Rocky14 天前
Linux-ansible之Playbook简单应用
linux·网络·ansible