NPM Ma c Ошибка ОС: EACCES: доступ запрещен, доступ '/ usr / local / lib / node_modules' - PullRequest
0 голосов
/ 07 мая 2020

Я пытаюсь установить gatsby-cli глобально:

npm install -g gatsby-cli

Я все время получаю ошибку доступа и не знаю, как ее исправить.

enter image description here

Ответы [ 3 ]

3 голосов
/ 07 мая 2020

Добавление sudo - неправильный подход, потому что, когда npm запускается под sudo, файлы, которые он создает, будут владеть root. Который вы не можете получить доступ / только для чтения от вашего текущего пользователя, отличного от su.

Рекомендуемый способ - переустановить node и npm, возможно, когда вы установили node, вы установили его как sudo. Или изменить глобальную папку на NPM.

Подробнее об этом можно прочитать здесь .

Другой способ - вернуть папку node_modules. Просто вставьте эту строку ниже в терминал, это должно работать как есть.

sudo chown -R $(whoami) /usr/local/lib/node_modules

Предупреждение : Пожалуйста, используйте точный путь /usr/local/lib/node_modules. Не используйте /usr/local/lib/ или что-то в этом роде.

2 голосов
/ 07 мая 2020

попробуйте выполнить в режиме суперпользователя (root пользователь), как это

sudo npm install -g gatsby-cli
2 голосов
/ 07 мая 2020

Если вы не являетесь администратором на своем компьютере, вам необходимо установить глобальные пакеты, используя sudo.

sudo npm install -g gatsby-cli
...