解決修復(fù)npm安裝全局模塊權(quán)限的問(wèn)題
相信我們?cè)?jīng)可能都遇到過(guò)全局安裝某個(gè)模塊包的過(guò)程中提示EACCESS的錯(cuò)誤問(wèn)題。這是由于npm全局安裝模塊的默認(rèn)路徑?jīng)]有權(quán)限導(dǎo)致的。
有三個(gè)方式可以解決該問(wèn)題:
修改全局安裝路徑的權(quán)限
修改默認(rèn)安裝路徑
借助第三方工具安裝node
修改安裝路徑的權(quán)限
查看默認(rèn)全局安裝路徑
npm config get prefix
對(duì)于大多數(shù)系統(tǒng)顯示目錄為:/usr/local
警告:如果默認(rèn)路徑是在/usr/請(qǐng)?zhí)^(guò)該步驟,否則你會(huì)搞亂系統(tǒng)權(quán)限。
修改路徑權(quán)限
sudo chown -R (whoami)(whoami)(npm config get prefix)/{lib/node_modules,bin,share}
執(zhí)行完畢將會(huì)把/usr/local下的lib/node_modules、bin、share所有權(quán)更改為當(dāng)前用戶。
修改默認(rèn)全局安裝路徑
當(dāng)你不想修改默認(rèn)安裝路徑的權(quán)限,因?yàn)橛纱丝赡軙?huì)帶來(lái)一些額外問(wèn)題,譬如說(shuō),修改權(quán)限后無(wú)法跟當(dāng)前系統(tǒng)其他用戶共享。這個(gè)時(shí)候可以考慮修改默認(rèn)的安裝路徑。
在示例下,我把默認(rèn)全局安裝路徑修改到當(dāng)前用戶的home目錄下面:
1、新建一個(gè)全局安裝的路徑
mkdir ~/.npm-global
2、配置npm使用新的路徑
npm config set prefix ‘~/.npm-global'
3、打開(kāi)或者新建~/.profile,加入下面一行
export PATH=~/.npm-global/bin:$PATH
4、更新系統(tǒng)環(huán)境變量
source ~/.profile
安裝一個(gè)全局包試一試:
npm install -g jshint [luncher@localhost aaa]$ ls ~/.npm-global/bin/ jshint [luncher@localhost aaa]$
借助第三方工具安裝node
mac系統(tǒng)借助brew安裝node
brew install node
centos借助yum工具安裝node
yum install node
以上這篇解決修復(fù)npm安裝全局模塊權(quán)限的問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
node.js中的events.emitter.listeners方法使用說(shuō)明
這篇文章主要介紹了node.js中的events.emitter.listeners方法使用說(shuō)明,本文介紹了events.emitter.listeners 的方法說(shuō)明、語(yǔ)法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下2014-12-12
NVM管理Node.js實(shí)現(xiàn)不同版本Angular環(huán)境切換
Node Version Manager(NVM)是一個(gè)用于管理多個(gè)Node.js版本的工具,它允許用戶在同一臺(tái)機(jī)器上安裝和使用多個(gè)Node.js版本,本文將給大家介紹NVM管理Node.js實(shí)現(xiàn)不同版本Angular環(huán)境切換的流程步驟,需要的朋友可以參考下2024-05-05
node.js中的fs.readFileSync方法使用說(shuō)明
這篇文章主要介紹了node.js中的fs.readFileSync方法使用說(shuō)明,本文介紹了fs.readFileSync的方法說(shuō)明、語(yǔ)法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下2014-12-12
NodeJS模塊與ES6模塊系統(tǒng)語(yǔ)法及注意點(diǎn)詳解
這篇文章主要給大家介紹了關(guān)于NodeJS模塊與ES6模塊系統(tǒng)語(yǔ)法及注意點(diǎn)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-01-01
13 個(gè)npm 快速開(kāi)發(fā)技巧(推薦)
這篇文章主要介紹了13 個(gè)npm 快速開(kāi)發(fā)技巧,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-07-07
node.js根據(jù)不同請(qǐng)求路徑返回不同數(shù)據(jù)詳解流程
本篇文章介紹了我在開(kāi)發(fā)過(guò)程中發(fā)現(xiàn)的一個(gè)小問(wèn)題,就是node.js如何能夠根據(jù)不同的請(qǐng)求路徑來(lái)返回得到不同數(shù)據(jù),通讀本篇對(duì)大家的學(xué)習(xí)或工作具有一定的價(jià)值,需要的朋友可以參考下2021-10-10
Node.js中使用計(jì)時(shí)器定時(shí)執(zhí)行函數(shù)詳解
這篇文章主要介紹了Node.js中使用計(jì)時(shí)器定時(shí)執(zhí)行函數(shù)詳解,本文使用了Node.js中的setTimeout和setInterval函數(shù),需要的朋友可以參考下2014-08-08

