在Ansible中,表示非root登录用户的变量是什么?

时间:2018-03-25 00:06:44

标签: ansible

当我在Ansible脚本中使用{{ ansible_user_id }}时,只要使用become=true执行脚本,它就会出现故障,并且总是被转换为root

我需要将其转换为登录远程操作系统的真实登录用户。在这种情况下我应该使用什么变量?

1 个答案:

答案 0 :(得分:1)

<强>答案

ansible_ssh_user包含连接用户的名称。

其他方式/澄清

ansible_user_id包含执行setup任务的用户(或在gather_facts: true时隐式使用),所以:

  1. 您可以设置gather_facts: false,然后使用setup

  2. 执行become: false
  3. 您可以添加游戏,以便在没有become: true(或使用become: false)的情况下收集事实。