代码之家  ›  专栏  ›  技术社区  ›  Jaeger

使用Ansible切换到根用户时遇到困难

  •  1
  • Jaeger  · 技术社区  · 7 年前

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

    程序如下:

    • 我以用户身份登录(osadmin)
    • 我跑 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
    

    另外,我还有以下内容 vars/main.yml :

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

    “sudo密码不正确”

    我确定我给了它正确的密码。所以,我想我做得不对。

    su ?

    提前谢谢你

    0 回复  |  直到 7 年前
        1
  •  0
  •   Sriram    7 年前

    从您的问题中,我看到变量值存储在 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
    

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

    我试过了,对我很管用。