
npm
我正在使用一個自動運行的框架webpack
,該目錄/usr/lib/node_modules
有 755 權限,需要npm
運行sudo
.我使用的框架不允許添加sudo
到命令。
現在我需要以全域形式(例如npm install webpack -g
)安裝 npm 套件而不使用sudo
.
哪些權限可以使用/usr/lib/node_modules
?如果我設定 777 權限就可以且安全嗎?
謝謝你!
答案1
你不需要改變允許的npm
能夠在沒有sudo
.要設定npm
運行,無需sudo
執行以下步驟:
選項1:
取得npm目錄的路徑:
npm config get prefix
如果你有
/usr
轉到選項 2否則將 npm 目錄的擁有者變更為您的:sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}
選項2:
為全域安裝建立目錄:
mkdir ~/.npm-global
配置以使用該目錄:
npm config set prefix '~/.npm-global'
開啟或建立
~/.profile
並新增以下內容:export PATH=~/.npm-global/bin:$PATH
將此也添加到您的
~/.bashrc
文件中(可選):export PATH=/home/username/.npm-global/bin:$PATH export NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript:/home/username/.npm-global/lib/node_modules
刷新檔案:
source ~/.bashrc
通過運行測試:
npm install -g jshint
來源:
https://docs.npmjs.com/getting-started/fixing-npm-permissions