1

在 pm2(pm2 start app.js)的帮助下,我有 4 台运行 node.js 的服务器。我想使用 pdsh 从另一台服务器的所有 4 台服务器上重新启动 pm2,但是当我运行时:

pdsh -a "/root/.nvm/v0.10.30/bin/pm2 restart 0"

它返回:

/root/.nvm/v0.10.30/bin/pm2: line 4: exec: : not found

我也做了类似的事情:

pdsh -a "sh /etc/profile && sh ~/.bash_profile && /root/.nvm/v0.10.30/bin/pm2 restart 0"

并发生同样的错误。

谢谢

4

1 回答 1

2

尝试直接从node路径运行 pm2。好像pdsh加载不出来nvm

如果你已经从它安装它nvm应该是这样的:

~/.nvm/v0.10.30/bin/node

另一方面,pm2 应该在 node_modules 目录中:

~/.nvm/v0.10.30/lib/node_modules/pm2/bin/pm2

因此,如果我们将所有这些结合起来,它将变成:

/root/.nvm/v0.10.30/bin/node /root/.nvm/v0.10.30/lib/node_modules/pm2/bin/pm2 restart 0 
于 2014-08-13T07:43:50.203 回答