2012-09-21 13 views
17

Sul mio macbook air posso installare solo pacchetti npm globalmente usando sudo ma ogni volta che vado in una directory locale e provo a installare un pacchetto locale senza il -g mi dà errori .npm non verrà installato da package.json all'interno del progetto

npm ERR! Error: EACCES, open '/Users/mmarze/.npm/53951495-coffee-script.lock' 
npm ERR! { [Error: EACCES, open '/Users/mmarze/.npm/53951495-coffee-script.lock'] 
npm ERR! errno: 3, 
npm ERR! code: 'EACCES', 
npm ERR! path: '/Users/mmarze/.npm/53951495-coffee-script.lock' } 
npm ERR! 
npm ERR! Please try running this command again as root/Administrator. 

npm ERR! System Darwin 12.1.0 
npm ERR! command "node" "/usr/local/bin/npm" "install" "coffee-script" 
npm ERR! cwd /Users/mmarze/sandbox/node.js/test 
npm ERR! node -v v0.8.9 
npm ERR! npm -v 1.1.61 
npm ERR! path /Users/mmarze/.npm/53951495-coffee-script.lock 
npm ERR! code EACCES 
npm ERR! errno 3 
npm ERR! stack Error: EACCES, open '/Users/mmarze/.npm/53951495-coffee-script.lock' 
npm ERR! 
npm ERR! Additional logging details can be found in: 
npm ERR!  /Users/mmarze/sandbox/node.js/test/npm-debug.log 
npm ERR! not ok code 0 

Ho provato a disinstallare e reinstallare nodo e NPM e non posso farlo di installare nulla a livello locale, e se uso sudo installare localmente allora il mio utente locale non dispone di accesso in scrittura a loro. Come posso risolvere questo?

+1

Chi è il proprietario di /Users/mmarze/.npm? Qualcosa di interessante in /Users/mmarze/sandbox/node.js/test/npm-debug.log? –

+2

Sembra che tu possa aver fatto un 'sudo npm install ...' senza '-g', cioè installato pacchetti npm in casa come utente root. Cancellare la directory '.npm' o' chown -R mmarze.mmarze ~/.npm' dovrebbe risolverlo. –

+0

Grazie, sembrava aver fatto il trucco! – Mmarzex

risposta

28

Sulla base del commento da Linus G Thiel Sembra che questo risolve il problema:

Sembra che si può avere fatto un sudo npm install ... senza -g, vale a dire pacchetti NPM installati in casa come utente root. O chiaro la tua directory .npm o chown -R mmarze.mmarze ~/.npm dovrebbe risolvere il problema.

+0

Sembra anche che accada quando la prima cosa che installi usando npm è fatta con sudo. – Akrikos

+0

Solo una nota, su OSX è necessario utilizzare ":" (due punti) anziché il punto tra l'utente e il gruppo. – donleche

+0

Nota che potresti anche dover correggere i permessi per i moduli già installati nel tuo progetto: 'chown -R mmarze: mmarze./Node_modules' –

Problemi correlati