解决修复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 相关文章推荐
基于JQuery实现鼠标点击文本框显示隐藏提示文本
Feb 23 Javascript
jQuery之自动完成组件的深入解析
Jun 19 Javascript
jquery 实现窗口的最大化不论什么情况
Sep 03 Javascript
yui3的AOP(面向切面编程)和OOP(面向对象编程)
May 01 Javascript
基于jquery实现页面滚动时顶部导航显示隐藏
Apr 20 Javascript
jQuery 更改checkbox的状态,无效的解决方法
Jul 22 Javascript
select下拉框插件jquery.editable-select详解
Jan 22 Javascript
js自定义弹框插件的封装
Aug 24 Javascript
React如何避免重渲染
Apr 10 Javascript
详解vue中async-await的使用误区
Dec 05 Javascript
Openlayers实现扩散的动态点(水纹效果)
Aug 17 Javascript
Vue实现下拉加载更多
May 09 Vue.js
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字符串按照单词进行反转的方法
2015/03/14 PHP
PHP编程计算两个时间段是否有交集的实现方法(不算边界重叠)
2017/05/30 PHP
IE与Firefox在JavaScript上的7个不同句法分享
2011/10/30 Javascript
js中判断对象是否为空的三种实现方法
2013/12/23 Javascript
jQuery过滤选择器详解
2015/01/13 Javascript
JS实现的最简Table选项卡效果
2015/10/14 Javascript
js阻止默认浏览器行为与冒泡行为的实现代码
2016/05/15 Javascript
浅析JavaScript中作用域和作用域链
2016/12/06 Javascript
ES6新特性之Symbol类型用法分析
2017/03/31 Javascript
pace.js和NProgress.js两个加载进度插件的一点小总结
2018/01/31 Javascript
Javascript中prototype与__proto__的关系详解
2018/03/11 Javascript
解决vue-cli项目打包出现空白页和路径错误的问题
2018/09/04 Javascript
vue图片上传本地预览组件使用详解
2019/02/20 Javascript
更强大的vue ssr实现预取数据的方式
2019/07/19 Javascript
JS apply用法总结和使用场景实例分析
2020/03/14 Javascript
Node.js API详解之 os模块用法实例分析
2020/05/06 Javascript
Vue+Element-U实现分页显示效果
2020/11/15 Javascript
[10:14]2018DOTA2国际邀请赛寻真——paiN Gaming不仅为自己而战
2018/08/14 DOTA
Python调用C# Com dll组件实战教程
2017/10/12 Python
Python排序搜索基本算法之冒泡排序实例分析
2017/12/09 Python
Python PyCharm如何进行断点调试
2019/07/05 Python
pytorch获取模型某一层参数名及参数值方式
2019/12/30 Python
Python bytes string相互转换过程解析
2020/03/05 Python
Python面向对象程序设计之私有变量,私有方法原理与用法分析
2020/03/23 Python
Python sublime安装及配置过程详解
2020/06/29 Python
sklearn中的交叉验证的实现(Cross-Validation)
2021/02/22 Python
自主招生自荐信指南
2014/02/04 职场文书
银行批评与自我批评
2014/02/10 职场文书
3.12植树节活动总结2014
2014/03/13 职场文书
无财产无子女离婚协议书范文
2014/09/14 职场文书
打架检讨书
2015/01/27 职场文书
音乐研修感悟
2015/11/18 职场文书
如何利用Matlab制作一款真正的拼图小游戏
2021/05/11 Python
常用的Python代码调试工具总结
2021/06/23 Python
linux中nohup和后台运行进程查看及终止
2021/06/24 Python
SQL Server中常用截取字符串函数介绍
2022/03/16 SQL Server