Ansible处理首次登录时的密码更改可以使用expect模块来实现自动化操作。下面是一个使用expect模块处理密码更改的示例代码:
- name: Change password on first login
hosts: all
gather_facts: false
tasks:
- name: Set initial password
expect:
command: passwd
responses:
'New password:': 'new_password'
'Retype new password:': 'new_password'
上述示例使用expect模块执行passwd命令来更改密码。responses参数用于指定expect模块在遇到不同的提示时输入不同的响应。在这个例子中,当遇到'New password:'提示时,输入new_password作为新密码;当遇到'Retype new password:'提示时,再次输入new_password以确认新密码。
使用上述代码示例,当第一次登录到目标主机时,Ansible会自动更改密码为new_password。