我尝试使用pm2启动node.js应用程序。
我已经安装了pm2:sudo npm install pm2 -g
现在,如果我以非root用户身份启动pm2,它可以正常工作。
但是,如果我尝试运行:sudo pm2 logs
我有一个错误:
pm2: command not found
pm2 logs
工作正常
如果我使用sh脚本启动:sudo sh run.sh
日志中还有另一个错误:
events.js:72
throw er; // Unhandled 'error' event
^ Error: connect EACCES
如何以超级用户身份启动pm2,以确保其他用户可以使用sudo pm2 monit
或sudo pm2 restart appname
等启动和重启应用程序。?
答案 0 :(得分:2)
pm2
显然PATH
未列在根目录的PATH
中。
检查非root用户和root用户的$ echo 'echo $PATH' | sh
$ echo 'echo $PATH' | sudo sh
是否与此相同
pm2
如果没有为{<1}}为根
添加缺少的路径