在某些地方,我无法使用Ansible在远程主机中读写〜/ .bashrc。 我尝试过,以前使用.bashrc尝试过,现在使用.profile尝试,但都徒劳无功:
- name: install elasticsearch
command: "{{ item }}"
with_items:
- "cd /apps/dmg/ && tar -xzf elasticsearch-6.4.3.tar.gz"
- "cd /apps/dmg/elasticsearch-6.4.3"
#- echo "ES_HOME=/apps/dmg/elasticsearch-6.4.3" >> ~/.profile
#- "source ~/.profile"
我意识到,艰巨的任务不会写到远程主机上的任何文件,因为即使运行此任务后也不存在“〜/ .profile”文件,
changed: [WONTTELLXXXX] => (item=echo "ES_HOME=/apps/dmg/elasticsearch-6.4.3" >> ~/.profile)
答案 0 :(得分:0)
请勿使用扩展名~
(需要引证)
~/.profile
对remote_user
,become_user
或其他任何需要使用完整路径。例如
"/home/{{ remote_user }}/.profile"
$HOME
可能也可以
"$HOME/.profile"
以下任务将有助于找出正在发生的事情
- command: whoami
register: result
- debug: var=result.stdout
- command: pwd
register: result
args:
chdir: $HOME
- debug: var=result.stdout
- command: pwd
register: result
args:
chdir: ~
- debug: var=result.stdout