shell 为什么我仍然需要源代码的.bashrc或.配置文件,即使在使用成为用户在ansible

1tu0hz3e  于 2023-08-07  发布在  Shell
关注(0)|答案(1)|浏览(106)
  • 名称:测试播放主机:“{{hosts_list}}”gather_facts:假的

任务:

  • name:Run command as db2 id ansible.builtin.shell:cmd:db2level become:true成为用户:db2icm1 become_method:须藤
rsl1atfo

rsl1atfo1#

这与运行su - db2icm1与运行su db2icm1在您的主机上。第一个版本将切换到用户 db2icm1 并加载它的配置文件,但是第二个版本只切换到这个用户。通常你会在你的配置文件中为你的交互式shell设置一些东西,所以当你通过Ansible运行命令时,你不想执行这些东西是有道理的。所以它不支持这个。
但是...在本例中,您需要加载db2profile,因为这是您想要运行的DB2命令所必需的。
在另一个问题中,我建议使用runscript,它提供DB2概要文件. /home/db2icm1/sqllib/db2profile,然后运行您作为参数给出的(DB2)命令。并使用此设置您的Ansible剧本。你可以读answer here

相关问题