之前在使用ansible的时候没有注意,一直使用的root用户。但是现在root用户被回收了
我们使用普通用户的时候会发现很多操作都无法实现,各种权限都没有
案例
#这里我们先在被控端(192.168.1.21)上创建一个用户zhangsan
useradd zhangsan
passwd zhangsan
#设置密码为123
#设置hosts文件如下
[master]
192.168.1.21 ansible_ssh_user=zhangsan ansible_ssh_pass=123
我们尝试去用户普通用户到root家目录创建一个文件,他会报你没有权限
而普通用户如果想要做超出权限的操作,就需要配置sudo 来授权,我们同样要配置
(一般系统初始化的时候都应该做了)
1. 开启sudo权限
visudo
#添加
zhangsan ALL=(ALL) ALL
当然这还是不能用的,因为在sudo的时候需要添加上你当前用户的一个密码,ansible同理
2.添加sudo的密码
vi hosts
#添加ansible_become_password=123
#这里的密码是zhangsan的密码用于在sudo的时候交密码用
[master]
192.168.1.21 ansible_ssh_user=zhangsan ansible_ssh_pass=123 ansible_become_password=123
3. 开启become
vi /etc/ansible/ansible.cfg
340 [privilege_escalation]
341 become=True #将这个注释去掉
4. 测试