ansible执行linux脚本时出错



我试图用shell模块运行linux脚本,但我得到了以下错误:

/bin/sh: sh: command not found.

要运行这个linux脚本,我需要使用不同于我用来连接的用户(oracle(来运行它

这是战术手册的任务

- name: Execute
become: true
become_user: oracle
become_method: sudo
shell: sh ora_expdp_partition.sh P_05_2021
args:
chdir: /fuentes01/vasmonitor
environment:
ORACLE_BASE: /oracle/oracle/app/oracle
LD_LIBRARY_PATH: /oracle/oracle/app/oracle/product/12.2.0/dbhome_1/lib:/lib:/usr/lib:/usr/lib64
ORACLE_HOME: /oracle/oracle/app/oracle/product/12.2.0/dbhome_1
PATH: /usr/sbin:/oracle/oracle/app/oracle/product/12.2.0/dbhome_1/bin:/usr/local/bin
CLASSPATH: /oracle/oracle/app/oracle/product/12.2.0/dbhome_1/jlib:/oracle/oracle/app/oracle/product/12.2.0/dbhome_1/rdbms/jlib

在任务中,我需要使用用户oracle执行脚本当我用用户预言机手动执行脚本时,它可以正常工作

environment中,您指定的PATH不包括/bin(或/usr/bin(,因此在PATH中找不到sh

最新更新