使用npm安装express时出错

时间:2013-10-06 15:44:48

标签: node.js

我已经使用

安装了快递
npm install express

但看起来为了创建应用程序我应该全局安装它。所以我用过:

npm install -g express

但收到了:

npm ERR! Error: EACCES, mkdir '/usr/lib/node_modules/express'
npm ERR!  { [Error: EACCES, mkdir '/usr/lib/node_modules/express']
npm ERR!   errno: 3,
npm ERR!   code: 'EACCES',
npm ERR!   path: '/usr/lib/node_modules/express',
npm ERR!   fstream_type: 'Directory',
npm ERR!   fstream_path: '/usr/lib/node_modules/express',
npm ERR!   fstream_class: 'DirWriter',
npm ERR!   fstream_stack: 
npm ERR!    [ '/usr/lib/node_modules/fstream/lib/dir-writer.js:36:23',
npm ERR!      '/usr/lib/node_modules/mkdirp/index.js:37:53',
npm ERR!      'Object.oncomplete (fs.js:107:15)' ] }
npm ERR! 
npm ERR! Please try running this command again as root/Administrator.

npm ERR! System Linux 3.11.2-201.fc19.x86_64
npm ERR! command "node" "/usr/bin/npm" "install" "-g" "express"
npm ERR! cwd /home/parisa
npm ERR! node -v v0.10.19
npm ERR! npm -v 1.3.6
npm ERR! path /usr/lib/node_modules/express
npm ERR! fstream_path /usr/lib/node_modules/express
npm ERR! fstream_type Directory
npm ERR! fstream_class DirWriter
npm ERR! code EACCES
npm ERR! errno 3
npm ERR! stack Error: EACCES, mkdir '/usr/lib/node_modules/express'
npm ERR! fstream_stack /usr/lib/node_modules/fstream/lib/dir-writer.js:36:23
npm ERR! fstream_stack /usr/lib/node_modules/mkdirp/index.js:37:53
npm ERR! fstream_stack Object.oncomplete (fs.js:107:15)
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /home/parisa/npm-debug.log
npm ERR! not ok code 0

然后在尝试sudo之后:

sudo npm install -g express

我明白了:

axconfig: unable to open axports file /etc/ax25/axports (No such file or directory)

为什么是???

3 个答案:

答案 0 :(得分:3)

您使用的是fedora吗?

至少在fedora中,“node”包是不是 node.js,它是一个业余无线电工具, axconfig是该软件的文件。

npm没有找到nodejs,它试图使用错误的软件。

安装nodejs包

sudo yum install nodejs

并删除节点包

sudo yum remove node

现在npm必须适合超级用户。

编辑:同样在debian存储库中,包'node'不是nodejs

答案 1 :(得分:2)

由于错误明确指出,您无权在/ usr / lib中创建。     堆栈错误:EACCES,mkdir'/ usr / lib / node_modules / express'

因此使用sudo权限安装..

sudo npm install -g express

答案 2 :(得分:0)

如果您使用的是Arch Linux,请查看AUR中的npm2arch包。它允许你使用pacman安装npm包。

示例:

npm2archinstall express