ansible2.9 普通用户权限提升, yml怎麽寫?

  1. 方法一:使用sudo切换(推荐)
    若普通用户已在sudoers文件中配置了 sudo 权限(无需密码或需要密码),可通过sudo提权。
    Ansible 配置(inventory或playbook中):

inventory文件示例

[target_hosts]
host1 ansible_host=192.168.1.100

[target_hosts:vars]
ansible_user=普通用户名 # 普通用户
ansible_ssh_pass=普通用户密码 # 普通用户SSH密码
ansible_become=yes
ansible_become_method=su # 使用su提权
ansible_become_user=root # 目标用户为root
ansible_become_pass=root密码 # root密码(su时需要)

  1. 方法二:使用su切换
    若普通用户无sudo权限,但可通过su -切换到 root(需要 root 密码),可配置如下:

inventory文件示例

[target_hosts]
host1 ansible_host=192.168.1.100

[target_hosts:vars]
ansible_user=普通用户名 # 普通用户
ansible_ssh_pass=普通用户密码 # 普通用户SSH密码
ansible_become=yes
ansible_become_method=su # 使用su提权
ansible_become_user=root # 目标用户为root
ansible_become_pass=root密码 # root密码(su时需要)

说明:
su方式需要显式指定ansible_become_user=root,且su默认需要完整的 root 密码,适合没有sudo配置的场景。

posted @ 2025-08-07 16:29  k98091518  阅读(11)  评论(0)    收藏  举报