前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >全局安装 npm 包报错没有权限

全局安装 npm 包报错没有权限

作者头像
玖柒的小窝
修改2021-10-20 10:19:35
1.8K0
修改2021-10-20 10:19:35
举报
文章被收录于专栏:各类技术文章~各类技术文章~

问题

在全局安装 npm 包的时候,比如 npm i npm-check -g,可能会报错,提示没有权限

代码语言:javascript
复制
Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
复制代码

解决方式

1.查看 node_modules 目录的所有者

代码语言:javascript
复制
ls -la /usr/local/lib/node_modules

---------------------
total 0
drwxr-xr-x   3 root       wheel   96  6 18 12:42 .
drwxrwxr-x   6 anna       admin  192 12 12 15:45 ..
drwxr-xr-x  23 root       wheel  736 12 26  2018 npm
复制代码

看到 drwxr-xr-x 3 root wheel 96 6 18 12:42 .,这一行,发现 node_module 的所有者是 root 下的,于是需要把所有者转到自己下面

2.看看自己是谁

代码语言:javascript
复制
whoami

------------------
anna
复制代码

通过 whoami 命令,看到我们现在登陆的用户是 anna,不是 root,于是没有权限也是符合预期的,需要把 node_module 的所有者换成 anna(这里只是一个例子,以自己尝试的名字为准)

3.换下目录所有者(注意换下用户名 anna)

sudo chown -R anna: /usr/local/lib/node_modules

chown 命令是将指定文件的拥有者改为指定的用户或组

参数 -R 处理指定目录以及其子目录下的所有文件

具体可以看下 chown 命令的介绍:www.cnblogs.com/peida/archi…

4.结束

这样 /usr/local/lib/node_modules 目录的所有者就更换完毕了,可以正常在全局安装 npm 包。

参考

这个方法参考了 stackoverflow 上的这个问题,感兴趣的同学可以看看~

stackoverflow.com/questions/4…

以上是本文的全部内容,欢迎点赞和评论~

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 问题
  • 解决方式
  • 参考
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档