2012-11-23 19 views
9

'u npm install grunt kullanarak yerel olarak yükleyebilirim. Ben küresel npm install grunt -g yüklemek çalışıyorum zamanGlobal grunch.js yüklemesi

Ama ben bir hata alıyorum: sudo ile

npm ERR! Error: EACCES, symlink '../lib/node_modules/grunt/bin/grunt' 
npm ERR! 
npm ERR! Please try running this command again as root/Administrator. 
npm ERR! 
npm ERR! System Linux 2.6.18-92.el5xen 
npm ERR! command "nodejs" "/usr/bin/npm" "install" "grunt" "-g" 
npm ERR! cwd /home/lj 
npm ERR! node -v v0.6.18 
npm ERR! npm -v 1.1.19 
npm ERR! path ../lib/node_modules/grunt/bin/grunt 
npm ERR! code EACCES 
npm ERR! message EACCES, symlink '../lib/node_modules/grunt/bin/grunt' 
npm ERR! errno {} 

npm ERR! Error: EACCES, open 'npm-debug.log' 
npm ERR! 
npm ERR! Please try running this command again as root/Administrator. 
npm ERR! 
npm ERR! System Linux 2.6.18-92.el5xen 
npm ERR! command "nodejs" "/usr/bin/npm" "install" "grunt" "-g" 
npm ERR! cwd /home/lj 
npm ERR! node -v v0.6.18 
npm ERR! npm -v 1.1.19 
npm ERR! path npm-debug.log 
npm ERR! code EACCES 
npm ERR! message EACCES, open 'npm-debug.log' 
npm ERR! errno {} 
npm ERR! 
npm ERR! Additional logging details can be found in: 
npm ERR!  /home/lj/npm-debug.log 
npm not ok 

hata da var:

npm ERR! Error: spawn ENOENT 
npm ERR!  at errnoException (child_process.js:483:11) 
npm ERR!  at ChildProcess.spawn (child_process.js:446:11) 
npm ERR!  at child_process.js:342:9 
npm ERR!  at Object.execFile (child_process.js:252:15) 
npm ERR!  at uidNumber (/usr/lib/nodejs/uid-number/uid-number.js:33:17) 
npm ERR!  at loadUid (/usr/lib/nodejs/npm/lib/npm.js:336:5) 
npm ERR!  at Array.2 (/usr/lib/nodejs/bind-actor.js:15:8) 
npm ERR!  at LOOP (/usr/lib/nodejs/chain.js:15:13) 
npm ERR!  at /usr/lib/nodejs/chain.js:18:7 
npm ERR!  at setUser (/usr/lib/nodejs/npm/lib/npm.js:346:32) 
npm ERR! You may report this log at: 
npm ERR!  <http://github.com/isaacs/npm/issues> 
npm ERR! or email it to: 
npm ERR!  <[email protected]> 
npm ERR! 
npm ERR! System Linux 2.6.18-92.el5xen 
npm ERR! command "nodejs" "/usr/bin/npm" "install" "grunt" "-g" 
npm ERR! cwd /home/lj 
npm ERR! node -v v0.6.18 
npm ERR! npm -v 1.1.19 
npm ERR! syscall spawn 
npm ERR! code ENOENT 
npm ERR! message spawn ENOENT 
npm ERR! errno {} 
npm ERR! 
npm ERR! Additional logging details can be found in: 
npm ERR!  /home/lj/npm-debug.log 
npm not ok 

yüklemem neler yapabileceğini o?

P.S. Bazı klasörler için hakların gelmesi, kullanıcı için değil root:root içindir. Bizim yöneticileri VM bu şekilde yüklü Cuz ...

+3

deneyin için

npm install -g --no-bin-links yo 

= D

' npm önbellek temiz 'ilk. –

+1

Kullanıldım. Ne yapmalıyım? – ValeriiVasin

+0

Gibi görünüyor Bu düğüm kurulum tipine bağlıdır: yerel veya global ... – ValeriiVasin

cevap

4

node_modules klasörünü Chowning deneyin ve yeniden yüklemeye çalıştığınızda:

sudo chown -R $USER /path/to/node_modules/folder 
+0

Bu yöntem benim için çalıştı, söylendiğinde sudo npm 'bir komut değildi – iabw

3

sudo npm install -g grunt deneyin? Ben de hırıltı ve kulübeye ile bu sorunu yaşadım

+0

Teşekkürler, bu benim durumumda yardımcı oldu – Andrija

10

buldum çözümü önek patikayı

prefix = /usr/local 
ayarlamanız gerekir sizin .npmrc bu maddeye NPM config

içindedir

veya böyle terminalden yapabilirsiniz:

npm config set prefix "/usr/local" 

Böylece düğüm bunları yüklemek için nereye bilecek: NPM 1.0'da

şeyler yüklemek için iki yol vardır: küresel

- Bu {önek}/lib/node_modules modülleri düşer ve çalıştırılabilir dosyaları koyar {prefix}/bin dizininde, {prefix} genellikle/usr/local gibi bir şeydir. Ayrıca, sağladıkları takdirde, kullanıcı sayfalarını {önek}/paylaşım/ada'ya yükler.

Yerel olarak —- Paketinizi geçerli çalışma dizinine yükler. Düğüm modülleri ./node_modules içine girer, yürütülebilir dosyalar ./node_modules/.bin/ adresinde bulunur ve man sayfaları hiç yüklenmez.

4

Aynı sorunla karşılaşıldı. Benim için aşağıdaki çalışmaları:

sudo npm install -g grunt-cli 
3

iyi çalışır--no-bin-link seçeneği ekleniyor. Her şeyi denedim ve sadece bu benim problemimi çözdü. Ben ubuntu 12.04 tarihinde Yeoman yükleme yapıldı ve her zaman hata dönüyordu: Sonra

npm ERR! Error: EACCES, symlink '../lib/node_modules/yo/cli.js' 

yaptım: Daha fazla ayrıntı https://github.com/isaacs/npm/issues/2380