npm 在安装的时候提示 没有权限操做的解决办法 Error: EACCES: permission denied

npm 在安装的时候提示 没有权限操做的解决办法 Error: EACCES: permission denied

在安装插件的时候出现这样的错误,权限不够,是由于以前用 root 用户进行了局部安装npm包的操做,留下所属权为 root 的文件,致使普通用户没法访问 root的文件内容。npm

报错日志以下:

clipboard.png

npm ERR! path /Users/Kyle/.npm/_cacache/index-v5/d8/1f/98ab242d0cbad080828ef3e3f4b864c25e506a719121c293fec810b14b3c
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall open
npm ERR! Error: EACCES: permission denied, open '/Users/Kyle/.npm/_cacache/index-v5/d8/1f/98ab242d0cbad080828ef3e3f4b864c25e506a719121c293fec810b14b3c'
npm ERR!  { [Error: EACCES: permission denied, open '/Users/Kyle/.npm/_cacache/index-v5/d8/1f/98ab242d0cbad080828ef3e3f4b864c25e506a719121c293fec810b14b3c']
npm ERR!   cause:
npm ERR!    { Error: EACCES: permission denied, open '/Users/Kyle/.npm/_cacache/index-v5/d8/1f/98ab242d0cbad080828ef3e3f4b864c25e506a719121c293fec810b14b3c'
npm ERR!      errno: -13,
npm ERR!      code: 'EACCES',
npm ERR!      syscall: 'open',
npm ERR!      path:
npm ERR!       '/Users/Kyle/.npm/_cacache/index-v5/d8/1f/98ab242d0cbad080828ef3e3f4b864c25e506a719121c293fec810b14b3c' },
npm ERR!   isOperational: true,
npm ERR!   stack:
npm ERR!    'Error: EACCES: permission denied, open \'/Users/Kyle/.npm/_cacache/index-v5/d8/1f/98ab242d0cbad080828ef3e3f4b864c25e506a719121c293fec810b14b3c\'',
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'open',
npm ERR!   path:
npm ERR!    '/Users/Kyle/.npm/_cacache/index-v5/d8/1f/98ab242d0cbad080828ef3e3f4b864c25e506a719121c293fec810b14b3c',
npm ERR!   parent: 'findup-sync' }
npm ERR! 
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR! 
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator (though this is not recommended).

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/Kyle/.npm/_logs/2019-03-26T07_00_54_812Z-debug.log

错误缘由:

找到报错的文件,会看到它的全部者是 root
以前用 root 进行了局部的安装操做,致使这个文件的全部者是 root ,还包括 .npm 文件夹下部分文件夹的全部权,也是 root,普通用户固然就无权访问了。就会报权限错误。bash

clipboard.png

解决办法

就是把用户目录下的 .npm 文件夹全部权都改为当前用户便可。
好比:当前用户名为 Kylethis

sudo chown -R Kyle ~/.npm

执行后输入 root 密码,文件所属已改成当前用户了,再执行操做就不会出现了。spa

clipboard.png

clipboard.png

注意事项

初学者在用 terminal 操做 npm 的时候,常常会混用 root 和 普通用户。
因为分不清全局安装和局部安装的区别,才会出现乱用root 的问题。插件

通常来讲,全局安装用 root 用户
项目中安装用普通用户,不须要使用 rootdebug

相关文章
相关标签/搜索