Почему не запускается pm2 без root прав?

Столкнулся с популярной проблемой в pm2, без рута не запускаются скрипты. Выполнял

sudo chown -R node:node .pm2/

после перезагрузки часть файлов на которых стояли юзер и группа "root" возвращались к этим параметрам, но до перезагрузки все исправно работало. Вот собственно ошибка:

node@ubuntu:~$ pm2 list
events.js:141
 throw er; // Unhandled 'error' event
  ^

Error: connect EACCES /home/node/.pm2/rpc.sock
 at Object.exports._errnoException (util.js:870:11)
 at exports._exceptionWithHostPort (util.js:893:20)
 at PipeConnectWrap.afterConnect [as oncomplete] (net.js:1063:14)


Вот текущие владельцы и группы, которые при изменении после перезагрузки возвращаются к данному виду:

-rw-rw-r-- 1 node node     5310 Apr  4 10:17 dump.pm2
drwxrwxr-x 2 node node     4096 Apr  3 14:06 logs
-rw-rw-r-- 1 node node        2 Apr  1 16:07 module_conf.json
drwxrwxr-x 2 node node     4096 Apr  4 14:15 pids
-rw-rw-r-- 1 node node 38052371 Apr  4 14:15 pm2.log
-rw-r--r-- 1 root root        3 Apr  4 14:14 pm2.pid
srwxr-xr-x 1 root root        0 Apr  4 14:14 pub.sock
srwxr-xr-x 1 root root        0 Apr  4 14:14 rpc.sock
-rw-rw-r-- 1 node node       13 Apr  1 16:07 touch
  • Вопрос задан
  • 789 просмотров
Пригласить эксперта
Ответы на вопрос 1
@de1m
тут по-моему может быть две причины
1. Ошибка говорит, что не может подсоедениться к /home/node/.pm2/rpc.sock и ниже у вас в правах написано, что только рут может. Попробуёте перед запуском поменять права вручную на "node:node" для rpc.sock.
2. Если у вас где-то в скрпипте открывается сетевой порт до 1024, то нужны права рут.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы