努力通过Ansible切换到root用户

时间:2019-02-13 14:52:28

标签: ansible

我是Ansible的初学者,我需要在远程服务器上运行一些基本任务。

过程如下:

  • 我以某些用户(osadmin)身份登录
  • 我运行su -成为root
  • 然后我要做我需要做的任务。

所以,我写我的剧本如下:

---
- name: Some tasks
  become: yes
  become_user: root
  # become_method: su // Also tried with that.
  template: src=repo.j2 dest=/etc/yum.repos.d/test.repo owner=root group=root
  register: copy

此外,我在vars/main.yml中有以下内容:

ansible_user: osadmin
ansible_password: password1
ansible_become_password: password2
[ some other values ]

但是,在运行任务时,Ansible /主机会向我返回以下内容:

  

“错误的sudo密码”

虽然我确定我输入了正确的密码。因此,我想我没有正确执行此操作。

通过su切换到root用户的正确方法是什么?

提前谢谢

1 个答案:

答案 0 :(得分:0)

从您的问题中,我看到变量值存储在<= 2.1.0-dev中。而是将变量放在vars/main.yml中,并取消注释group_vars/all.yml

修改后的代码

# become_method: su

--- - name: Some tasks become: yes become_user: root become_method: su // Also tried with that. template: src=repo.j2 dest=/etc/yum.repos.d/test.repo owner=root group=root register: copy 中有变量

group_vars/all.yml

我尝试过了,对我有用。