开心123 发表于 2018-7-29 11:25:04

ansible sudo 用法

  不需要配置免密登陆,即可执行
  /etc/ansible/hosts 文件配置

  sudo.yml文件配置
  - hosts: test
  sudo_user: cloud
  sudo: yes
  tasks:
  - name: echo /root/hosts
  shell:echo "127.0.0.1hostname " >> /root/hosts
  ignore_errors: True
  become: true
  become_user: root
  执行结果:

  become的官方文档说明
  官方文档:http://docs.ansible.com/ansible/become.html
  关于become 的使用,当需要执行某些特殊操作需要专门权限时,可以用become_user那强调切换,同时1.9 版本以前的sudo_user 也依然保留使用;
  当使用了beocome_user时,并且指定需要sudo,需要在hosts 文件指定ansible_sudo_pass 密码,否则become_user 使用sudo 进行操作时无权限执行,不会成功。比如我这里用cloud 账号执行 echo "127.0.0.1 hostname" >>/root/hosts 需要sudo 权限的,所以用 become_user: root,并且指定了ansible_sudo_pass 密码,这样就可以顺利的执行了。
页: [1]
查看完整版本: ansible sudo 用法