Я выполняю установку npm lodash, но она бросает Ошибку: EACCES: разрешение отклонило ошибку. Я знаю, что это - проблема разрешения, но насколько я знаю, sudo разрешение не требуется для установки модуля узла локально. Если я выполняю его с sudo, это установлено внутри ~/node_modules папка. drwxrwxr-x является разрешением файла существующей папки. Я не могу выяснить то, что, возможно, пошло не так, как надо.
Ниже сообщение об ошибке.
npm ERR! tar.unpack untar error /home/rupesh/.npm/lodash/4.13.1/package.tgz
npm ERR! Linux 3.13.0-88-generic
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "lodash"
npm ERR! node v4.3.1
npm ERR! npm v2.14.12
npm ERR! path /home/rupesh/node_modules/lodash
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall mkdir
npm ERR! Error: EACCES: permission denied, mkdir '/home/rupesh/node_modules/lodash'
npm ERR! at Error (native)
npm ERR! { [Error: EACCES: permission denied, mkdir '/home/rupesh/node_modules/lodash']
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'mkdir',
npm ERR! path: '/home/rupesh/node_modules/lodash',
npm ERR! fstream_type: 'Directory',
npm ERR! fstream_path: '/home/rupesh/node_modules/lodash',
npm ERR! fstream_class: 'DirWriter',
npm ERR! fstream_stack:
npm ERR! [ '/usr/local/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:35:25',
npm ERR! '/usr/local/lib/node_modules/npm/node_modules/mkdirp/index.js:47:53',
npm ERR! 'FSReqWrap.oncomplete (fs.js:82:15)' ] }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! Please include the following file with any support request:
npm ERR! /home/rupesh/Desktop/es6/npm-debug.log
Это немедленно решило мою проблему - Mac Мохаве 10.14.6 - PhpStorm.
Необработанная Ошибка отклонения: EACCES: отклоненное разрешение, mkdir '/Users/myname/.npm / _ cacache/index-v5/fb/5a'
sudo chown -R $USER:$GROUP ~/.npm
sudo chown -R $USER:$GROUP ~/.config
Исходное сообщение: https://stackoverflow.com/a/50639828
Я решил эту проблему путем изменения разрешения моего npm каталога. Я перешел к npm глобальному каталогу для меня, это было по телефону
/home/<user-name>
, я перешел к этому каталогу путем ввода этой команды
cd /home/<user-name>
и затем изменил разрешение .npm папки путем ввода этой команды.
sudo chmod -R 777 ".npm"
Это работало как очарование мне. Но существует дефект безопасности с этим, т.е. Ваш глобальный каталог пакетов доступен для всех уровней.
Выполняют эти команды, и проблема будет решена!
sudo chmod -R 777 /usr/local/bin
sudo chmod -R 777 /usr/local/lib/node_modules
Попытайтесь дать все разрешение своей папке проекта с ниже команды
sudo chmod -R 777 /yourProjectDirectoryName
, выполненной с
sudo npm install lodash
Вот решение для GNU/Linux (Debian) пользователи (Замена ИМЯ ПОЛЬЗОВАТЕЛЯ с Ваше имя пользователя ):
sudo chown -R $USER:$(id -gn $USER) /home/USERNAME/.config