我刚刚重新安装了 Ubuntu 12.04 LTS,然后我先执行了这些步骤:
使用以下脚本通过包管理器安装 Node
sudo apt-get update sudo apt-get install python-software-properties python g++ make sudo add-apt-repository ppa:chris-lea/node.js sudo apt-get update sudo apt-get install nodejs
尝试全局安装 yeoman, express, n, yeoman 的生成器,都返回同样的错误
npm ERR! Error: EACCES, symlink '../lib/node_modules/n/bin/n'
npm ERR! { [Error: EACCES, symlink '../lib/node_modules/n/bin/n'] errno: 3, code: 'EACCES', path: '../lib/node_modules/n/bin/n' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! System Linux 3.8.0-29-generic
npm ERR! command "/usr/bin/node" "/usr/bin/npm" "install" "-g" "-d" "n"
npm ERR! cwd /home/heberlz
npm ERR! node -v v0.10.20
npm ERR! npm -v 1.3.11
npm ERR! path ../lib/node_modules/n/bin/n
npm ERR! code EACCES
npm ERR! errno 3
npm ERR! stack Error: EACCES, symlink '../lib/node_modules/n/bin/n'
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /home/heberlz/npm-debug.log
npm ERR! not ok code 0
递归地收回以下文件夹的所有权 ~/.npm、/usr/lib/node、/usr/lib/node_modules 和以下符号链接(symbolic link)/usr/bin/node ,/usr/bin/nodejs 完全没有成功
我需要在没有 sudo 的情况下安装 yeoman 及其生成器,以免以后遇到麻烦 :(
最佳答案
Ubuntu 12.04 并使用 Chris Lea 的 PPA 为我安装以下作品:
npm config set prefix '~/.npm-packages'
并将 $HOME/.npm-packages/bin
添加到 $PATH
附加到 .bashrc
export PATH="$PATH:$HOME/.npm-packages/bin"
更多信息请参见 this answer来自@passy
关于node.js - NPM 模块不会在没有 sudo 的情况下全局安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19352976/