错误:EACCES:权限被拒绝

新手上路,请多包涵

我运行 npm install 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

原文由 xruptronics 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 620
2 个回答

使用 npm init 创建 package.json 解决了我的问题。

原文由 xruptronics 发布,翻译遵循 CC BY-SA 3.0 许可协议

此命令修复了该问题。它对我有用:

 sudo npm install -g --unsafe-perm=true --allow-root

原文由 Saniya syed qureshi 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题