即使目录可写,全局安装时也会出现NPM错误

Kok*_*zzu 12 node.js npm

尝试使用此命令安装coffee-script时出现此错误:

npm install -g --verbose coffee-script opal
Run Code Online (Sandbox Code Playgroud)

这些是错误消息:

npm ERR! Error: EACCES, symlink '../lib/node_modules/coffee-script/bin/coffee'
npm ERR!  { [Error: EACCES, symlink '../lib/node_modules/coffee-script/bin/coffee']
npm ERR!   errno: 3,
npm ERR!   code: 'EACCES',
npm ERR!   path: '../lib/node_modules/coffee-script/bin/coffee' }
npm ERR! 
npm ERR! Please try running this command again as root/Administrator.

npm info postuninstall opal@0.3.2
npm ERR! Error: EACCES, symlink '../lib/node_modules/opal/bin/opal-node'
npm ERR!  { [Error: EACCES, symlink '../lib/node_modules/opal/bin/opal-node']
npm ERR!   errno: 3,
npm ERR!   code: 'EACCES',
npm ERR!   path: '../lib/node_modules/opal/bin/opal-node' }
npm ERR! 
npm ERR! Please try running this command again as root/Administrator.
Run Code Online (Sandbox Code Playgroud)

文件夹/ usr/local/bin和/ usr/local/lib/node_modules是当前用户拥有和写入的,我不想使用root运行那个npm命令,如何知道npm试图创建的文件夹符号链接到?

我正在使用npm 1.2.9-1chl1~quantal1和nodejs 0.8.19-1chl1~quantal1

Pas*_*cle 19

您的节点安装使用系统目录.使用-g时使用sudo

sudo npm install -g --verbose coffee-script opal
Run Code Online (Sandbox Code Playgroud)

  • 这样做我感觉不舒服.我宁愿以不需要sudo的方式安装节点. (7认同)
  • 'npm`的作者不鼓励`sudo npm`,请参见此处:http://stackoverflow.com/a/29787931/1614973 (3认同)

Moh*_*sen 15

你可以使用这个衬里将chownNPM bin改为你的用户名来解决这个问题:

$ chown -R `whoami` `npm -g bin`
Run Code Online (Sandbox Code Playgroud)

  • 小心!在`/ usr/bin /`中更改所有权的所有内容(例如,`sudo`也) (6认同)