Puppetによって配布されたbashスクリプトのPM2は機能しません。

Puppetによって配布されたbashスクリプトのPM2は機能しません。
#!/bin/bash

# install needed RPMS
yum -y install gcc-c++ git

# downlaod and compile node
wget https://nodejs.org/dist/v0.12.7/node-v0.12.7.tar.gz
tar -xvzf  node-v0.12.7.tar.gz
cd node-v0.12.7
./configure
make
sudo make install

# install pm2 via npm
/usr/local/bin/npm install pm2 -g

# start processes.json
cd /home/admin/Order-Management/
/usr/local/lib/node_modules/pm2/bin/pm2 start processes.json

上記のスクリプトをローカルで実行すると正常に実行されますが、クライアントコンピュータでpuppetを使用して実行しようとすると、最後の行で次のエラーが発生します。

    /usr/bin/env: node: No such file or directory

私はRedHat 6マスターとRedHat 6クライアントを使用しています。ここで解決策を見ました。 https://stackoverflow.com/questions/30281057/node-forever-usr-bin-env-node-no-such-file-or-directorしかし、それは私には効果がありません。

答え1

Puppetの実行中にノードがPATHに存在しない可能性があります。次のスクリプトを試してください。

#!/bin/bash

# install needed RPMS
yum -y install gcc-c++ git

# downlaod and compile node
wget https://nodejs.org/dist/v0.12.7/node-v0.12.7.tar.gz
tar -xvzf  node-v0.12.7.tar.gz
cd node-v0.12.7
./configure
make
sudo make install

# install pm2 via npm
/usr/local/bin/node /usr/local/bin/npm install pm2 -g

# start processes.json
cd /home/admin/Order-Management/
/usr/local/bin/node /usr/local/lib/node_modules/pm2/bin/pm2 start processes.json

関連情報