文档章节

npm 模块全局安装的权限问题

黑魔法
 黑魔法
发布于 2016/12/07 14:39
字数 328
阅读 12
收藏 0

我们经常需要安装全局 npm 模块,例如:

npm install -g coffee-script

这样写往往会报 EACCES 错误,因为缺省的 npm 全局安装目录(/usr/local/node_modules)没有给当前登录用户以写权限。所以一般我都是直接写 sudo npm install -g coffee-script 来解决这个问题。其实还有更好的方法:https://docs.npmjs.com/getting-started/fixing-npm-permissions

文章列出了两种方法,第一种就是修改 /usr/local/node_modules/usr/local/bin/usr/local/share 这三个目录的 owner:

sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}

这种方法适合这台电脑只有一个开发者使用的场景。

但是我司还有一台电脑是公共的,可以让不同的开发者临时使用,那么就是和方法二:

mkdir ~/.npm-global
npm config set prefix '~/.npm-global'

然后修改你的 .profile 或者 .zshrc(像我这样用zsh的话),添加:

export PATH=~/.npm-global/bin:$PATH

根据 ~/.profile 内容更新当前 Shell:

source ~/.profile

从此以后 npm install -g 安装的模块就都会到该用户名字下面的 ~/.npm-global 目录中,这样就做到了用户隔离。


 

文/jacobbubu(简书作者)
原文链接:http://www.jianshu.com/p/050f74cc7d45
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

本文转载自:http://www.jianshu.com/p/050f74cc7d45

共有 人打赏支持
黑魔法
粉丝 12
博文 173
码字总数 44733
作品 0
武汉
前端工程师
私信 提问
npm 与 package.json 快速入门

npm 是前端开发广泛使用的包管理工具,之前使用 Weex 时看了阮一峰前辈的文章了解了一些,这次结合官方文章总结一下,加深下理解吧! 读完本文你将了解: 什么是 npm 安装 npm 更新 npm pack...

u011240877
2017/08/02
0
0
Linux 上按照 node ccap 的问题

最近在使用 node 做点东西,选定了一个 node ccap 模块来生成验证码,踩坑 20 米 一、Mac 上的顺利 由于 js 本身并不适合密集运算,早就听说了在 node 上安装生成验证码依赖模块不太容易,但...

小虫巨蟹
2017/10/24
0
0
如何使用 npm 管理 NodeJS 包

前一段时间,我们发布了一个使用 pip 管理 Python 包的指南。今天,我们将讨论如何使用 npm 管理 NodeJS 包。npm 是最大的软件注册中心,包含 600,000 多个包。每天,世界各地的开发人员通过...

作者: Sk
05/07
0
0
npm使用过程中的一些错误解决办法及npm常用命令

npm使用过程中的一些错误解决办法及npm常用命令  node,npm在前端开发流程中提供了非常完善的自动化工具链,但是同样由于其复杂性导致有很多奇奇怪怪的问题。本文将记录使用过程中出现的一些...

openthings
2016/12/24
404
0
linux npm全局安装权限不足问题的正确解决办法

相信很多人遇到过这个问题,在linux上,从官网安装nodejs和npm后,每次全局安装模块都会提示权限不足: 问度娘是解决不了任何问题的(概率大于99%),度娘上面的解决方案都是改权限: 这个解...

Angeladaddy
04/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

MariaDB 服务器在 MySQL Workbench 备份数据的时候出错如何解决

服务器是运行在 MariaDB 10.2 上面的,在使用 MySQL Workbench 出现错误: mysqldump: Couldn't execute 'SELECT COLUMN_NAME, JSON_EXTRACT(HISTOGRAM, '$."number-of-buckets-specified"'......

honeymose
今天
3
0
apache顶级项目(二) - B~C

apache顶级项目(二) - B~C https://www.apache.org/ Bahir Apache Bahir provides extensions to multiple distributed analytic platforms, extending their reach with a diversity of s......

晨猫
今天
6
0
day152-2018-11-19-英语流利阅读

“超级食物”竟然是营销噱头? Daniel 2018-11-19 1.今日导读 近几年来,超级食物 superfoods 开始逐渐走红。不难发现,越来越多的轻食餐厅也在不断推出以超级食物为主打食材的健康料理,像是...

飞鱼说编程
今天
12
0
SpringBoot源码:启动过程分析(二)

接着上篇继续分析 SpringBoot 的启动过程。 SpringBoot的版本为:2.1.0 release,最新版本。 一.时序图 一样的,我们先把时序图贴上来,方便理解: 二.源码分析 回顾一下,前面我们分析到了下...

Jacktanger
昨天
4
0
Apache防盗链配置,Directory访问控制,FilesMatch进行访问控制

防盗链配置 通过限制referer来实现防盗链的功能 配置前,使用curl -e 指定referer [root@test-a test-webroot]# curl -e "http://www.test.com/1.html" -x127.0.0.1:80 "www.test.com/1.jpg......

野雪球
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部