解决修复npm安装全局模块权限的问题


Posted in Javascript onMay 17, 2018

相信我们曾经可能都遇到过全局安装某个模块包的过程中提示EACCESS的错误问题。这是由于npm全局安装模块的默认路径没有权限导致的。

有三个方式可以解决该问题:

 修改全局安装路径的权限

 修改默认安装路径

 借助第三方工具安装node

修改安装路径的权限

查看默认全局安装路径

npm config get prefix

对于大多数系统显示目录为:/usr/local

警告:如果默认路径是在/usr/请跳过该步骤,否则你会搞乱系统权限。

修改路径权限

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

执行完毕将会把/usr/local下的lib/node_modules、bin、share所有权更改为当前用户。

修改默认全局安装路径

当你不想修改默认安装路径的权限,因为由此可能会带来一些额外问题,譬如说,修改权限后无法跟当前系统其他用户共享。这个时候可以考虑修改默认的安装路径。

在示例下,我把默认全局安装路径修改到当前用户的home目录下面:

1、新建一个全局安装的路径

mkdir ~/.npm-global

2、配置npm使用新的路径

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

3、打开或者新建~/.profile,加入下面一行

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

4、更新系统环境变量

source ~/.profile

安装一个全局包试一试:

npm install -g jshint

[luncher@localhost aaa]$ ls ~/.npm-global/bin/
jshint
[luncher@localhost aaa]$

借助第三方工具安装node

mac系统借助brew安装node

brew install node

centos借助yum工具安装node

yum install node

以上这篇解决修复npm安装全局模块权限的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript去除空格的几种方法
Oct 03 Javascript
JS左右无缝滚动(一般方法+面向对象方法)
Aug 17 Javascript
javascript中new关键字详解
Dec 14 Javascript
一篇文章掌握RequireJS常用知识
Jan 26 Javascript
JavaScript实现Fly Bird小游戏
Dec 15 Javascript
Bootstrap3 内联单选和多选框
Dec 29 Javascript
原生js实现节日时间倒计时功能
Jan 18 Javascript
ES6 javascript中class静态方法、属性与实例属性用法示例
Oct 30 Javascript
深入分析element ScrollBar滚动组件源码
Jan 22 Javascript
JS添加或删除HTML dom元素的方法实例分析
Mar 05 Javascript
Vue解析带html标签的字符串为dom的实例
Nov 13 Javascript
Vue filter 过滤当前时间 实现实时更新效果
Dec 20 Javascript
npm 下载指定版本的组件方法
May 17 #Javascript
ES6之模版字符串的具体使用
May 17 #Javascript
解决淘宝cnpm 安装后cnpm不是内部或外部命令的问题
May 17 #Javascript
使用淘宝镜像cnpm安装Vue.js的图文教程
May 17 #Javascript
解决Mac安装thrift因bison报错的问题
May 17 #Javascript
Vue中的字符串模板的使用
May 17 #Javascript
快速解决brew安装特定版本flow的问题
May 17 #Javascript
You might like
php数组合并的二种方法
2014/03/21 PHP
PHP使用逆波兰式计算工资的方法
2015/07/29 PHP
thinkPHP删除前弹出确认框的简单实现方法
2016/05/16 PHP
学习js在线html(富文本,所见即所得)编辑器
2012/12/18 Javascript
如何用js控制frame的隐藏或显示的解决办法
2013/03/20 Javascript
javascript中的parseInt和parseFloat区别
2013/07/12 Javascript
js触发onchange事件的方法说明
2014/03/08 Javascript
javascript实例分享---具有立体效果的图片特效
2014/06/08 Javascript
Javascript之Math对象详解
2016/06/07 Javascript
jquery.tableSort.js表格排序插件使用方法详解
2020/08/12 Javascript
微信小程序 开发经验整理
2017/02/15 Javascript
jQuery中layer分页器的使用
2017/03/13 Javascript
mui框架移动开发初体验详解
2017/10/11 Javascript
深入浅析Node环境和浏览器的区别
2018/08/14 Javascript
layer 关闭指定弹出层的例子
2019/09/25 Javascript
js实现内置计时器
2019/12/16 Javascript
[03:24]DOTA2超级联赛专访hao 大翻盘就是逆袭
2013/05/24 DOTA
[04:59]DOTA2-DPC中国联赛 正赛 Ehome vs iG 选手采访
2021/03/11 DOTA
python爬虫教程之爬取百度贴吧并下载的示例
2014/03/07 Python
python网络编程学习笔记(三):socket网络服务器
2014/06/09 Python
python使用urllib2实现发送带cookie的请求
2015/04/28 Python
Python中list初始化方法示例
2016/09/18 Python
python并发编程之多进程、多线程、异步和协程详解
2016/10/28 Python
Python实现数据库并行读取和写入实例
2017/06/09 Python
pandas 取出表中一列数据所有的值并转换为array类型的方法
2018/04/11 Python
python  ceiling divide 除法向上取整(或小数向上取整)的实例
2019/12/27 Python
深入浅析Python 函数注解与匿名函数
2020/02/24 Python
python字符串的index和find的区别详解
2020/06/20 Python
植村秀美国官网:Shu Uemura美国
2019/03/19 全球购物
药学专业毕业生求职信
2013/10/20 职场文书
实习教师自我鉴定
2013/12/12 职场文书
高三学习决心书
2014/03/11 职场文书
房地产广告词大全
2014/03/19 职场文书
工作疏忽、懈怠的检讨书
2014/09/11 职场文书
运动会加油稿30字
2015/07/21 职场文书
pandas DataFrame.shift()函数的具体使用
2021/05/24 Python