原文链接 https://www.cnblogs.com/yalong/p/13935503.html
这个提示是找不到npm 跟pm2 命令, 但是我们在服务器上使用 npm -v pm2 -v 是可以查看到版本好的, 也就是安装好的
这个时候提示 command not found 是因为在自动部署的时候 使用的全局下的npm pm2 命令,在全局环境下 找不到这两个命令, 自然就报错了
为了验证, 可以执行 sudo npm -v sudo pm2 -v 也会提示 command not found
为了解决这个问题需要让npm pm2 建立软连接,相当于放在环境变量中
首先查看 npm 的安装位置
可以使用 whereis npm 查看npm 的安装路径, 如果 whereis npm 显示路径为空,
则使用 which npm 比如 这里显示的路径是 /usr/local/src/node-v10.16.3-linux-x64/bin/npm
然后执行
sudo ln -s /usr/local/src/node-v10.16.3-linux-x64/bin/npm /usr/bin/npm
这就相当于把npm 链接到了 全局环境变量中
这时候在执行 sudo npm -v 就不报错了
pm2, node, 甚至其他命令 只要是提示 command not found 的 都可以按照上面的方式解决
比如pm2 建立软连接:
sudo ln -s /usr/local/src/node-v10.16.3-linux-x64/bin/pm2 /usr/bin/pm2