Ошибка при установке express с использованием npm

Я уже установил экспресс-использование

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 ответа

Как ясно указывает ошибка, у вас нет прав на создание в /usr/lib. stack Error: EACCES, mkdir '/usr/lib/node_modules/express'

следовательно, установите с разрешения sudo.

sudo npm install -g express


Вы используете fedora?

По крайней мере, в fedora пакет "node" не является node.js, это утилита любительского радио, axconfig - это файл этого программного обеспечения.

npm не находит nodejs, он пытается использовать неправильное программное обеспечение.

Установить пакет nodejs

sudo yum install nodejs

и удалить пакет узла

sudo yum remove node

Теперь npm должен корректно работать для суперпользователя.

edit: Также в репозиториях debian узел "node" не является nodejs


Если вы находитесь в Arch Linux, проверьте пакет npm2arch в AUR. Это позволит вам устанавливать пакеты npm с помощью pacman.

Пример:

npm2archinstall express

licensed under cc by-sa 3.0 with attribution.