文档章节

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

黑魔法
 黑魔法
发布于 2016/12/07 14:39
字数 328
阅读 14
收藏 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

共有 人打赏支持
黑魔法
粉丝 13
博文 176
码字总数 44775
作品 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使用过程中的一些错误解决办法及npm常用命令

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

openthings
2016/12/24
404
0
如何使用 npm 管理 NodeJS 包

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

作者: Sk
2018/05/07
0
0
linux npm全局安装权限不足问题的正确解决办法

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

Angeladaddy
2018/04/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Python如何开发桌面应用程序?Python基础教程,第十三讲,图形界面

当使用桌面应用程序的时候,有没有那么一瞬间,想学习一下桌面应用程序开发?行业内专业的桌面应用程序开发一般是C++,C#来做,Java开发的也有,但是比较少。本节课会介绍Python的GUI(图形用...

程序员补给栈
21分钟前
1
0
kafka在的使用

一、基本概念 介绍 Kafka是一个分布式的、可分区的、可复制的消息系统。它提供了普通消息系统的功能,但具有自己独特的设计。 这个独特的设计是什么样的呢? 首先让我们看几个基本的消息系统...

狼王黄师傅
27分钟前
1
0
Android JNI总结

0x01 JNI介绍 JNI是Java Native Interface的缩写,JNI不是Android专有的东西,它是从Java继承而来,但是在Android中,JNI的作用和重要性大大增强。 JNI在Android中起着连接Java和C/C++层的作...

天王盖地虎626
昨天
1
0
大数据教程(11.8)Hive1.2.2简介&初体验

上一篇文章分析了Hive1.2.2的安装,本节博主将分享Hive的体验&Hive服务端和客户端的使用方法。 一、Hive与hadoop直接的关系 Hive利用HDFS存储数据,利用MapReduce查询数据。 二、Hive与传统数...

em_aaron
昨天
3
0
跟我学Spring Cloud(Finchley版)-15-Hystrix监控详解

Hystrix提供了监控Hystrix Command的能力,本节来详细探讨。 监控端点与数据 应用整合Hystrix,同时应用包含spring-boot-starter-actuator 依赖,就会存在一个/actuator/hystrix.stream 端点...

周立_ITMuch
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部