permission node mac error eacces node.js lodash

node.js - node - npm permission denied



Error: EACCES: permiso denegado (11)

Ejecuto npm install lodash pero arroja Error: EACCES: error de permiso denegado . Sé que es un problema de permiso, pero que yo sepa, no se requiere permiso sudo para instalar el módulo de nodo localmente. Si lo ejecuto con sudo, se instala dentro de la carpeta ~ / node_modules. drwxrwxr-x es el permiso de archivo de la carpeta existente. No puedo entender qué pudo haber salido mal.

A continuación se muestra el mensaje de error.

npm ERR! tar.unpack untar error /home/rupesh/.npm/lodash/4.13.1/package.tgz npm ERR! Linux 3.13.0-88-generic npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "lodash" npm ERR! node v4.3.1 npm ERR! npm v2.14.12 npm ERR! path /home/rupesh/node_modules/lodash npm ERR! code EACCES npm ERR! errno -13 npm ERR! syscall mkdir npm ERR! Error: EACCES: permission denied, mkdir ''/home/rupesh/node_modules/lodash'' npm ERR! at Error (native) npm ERR! { [Error: EACCES: permission denied, mkdir ''/home/rupesh/node_modules/lodash''] npm ERR! errno: -13, npm ERR! code: ''EACCES'', npm ERR! syscall: ''mkdir'', npm ERR! path: ''/home/rupesh/node_modules/lodash'', npm ERR! fstream_type: ''Directory'', npm ERR! fstream_path: ''/home/rupesh/node_modules/lodash'', npm ERR! fstream_class: ''DirWriter'', npm ERR! fstream_stack: npm ERR! [ ''/usr/local/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:35:25'', npm ERR! ''/usr/local/lib/node_modules/npm/node_modules/mkdirp/index.js:47:53'', npm ERR! ''FSReqWrap.oncomplete (fs.js:82:15)'' ] } npm ERR! npm ERR! Please try running this command again as root/Administrator. npm ERR! Please include the following file with any support request: npm ERR! /home/rupesh/Desktop/es6/npm-debug.log


¡Ejecute estos comandos y el problema se resolverá!

sudo chmod -R 777 /usr/local/bin sudo chmod -R 777 /usr/local/lib/node_modules


Crear package.json usando npm init resolvió mi problema.


Elimine la carpeta dist y esto resolverá mi problema.


Este comando soluciona el problema. A mí me funcionó:

sudo npm install -g --unsafe-perm=true --allow-root


FWIW Tuve los mismos síntomas, pero con un paquete diferente. Crear package.json y ejecutar npm init NO resolvió mi problema.

En este sistema, aparentemente se crearon nuevas carpetas en esta ubicación con permisos de root. Durante la npm install , se crean nuevas carpetas. Esto provocó que la instalación de npm fallara parcialmente, incluso con sudo.

La solución fue ejecutar la npm install app en una ubicación diferente sin umask raíz.


No tiene permisos de escritura para others (rx). Probar con

chmod a+w <folder>

y repetir.


Por lo que puedo ver en tus registros que publicaste:

npm ERR! code: ''EACCES'', npm ERR! syscall: ''mkdir'', npm ERR! path: ''/home/rupesh/node_modules/lodash'', npm ERR! fstream_type: ''Directory'', npm ERR! fstream_path: ''/home/rupesh/node_modules/lodash'', npm ERR! fstream_class: ''DirWriter'',

El directorio /home/rupesh/node_modules/ no tiene los permisos necesarios para crear el directorio, así que ejecute chown -r rupesh:rupesh /home/rupesh/node_modules/ esto debería resolverlo.


Primero instale sin -g (global) en la raíz. Después de intentar usar -g (global) Funcionó para mí.


Resolví este problema cambiando el permiso de mi directorio npm. Fui al directorio global de npm para mí, estaba en

/home/<user-name>

Fui a este directorio ingresando este comando

cd /home/<user-name>

y luego cambió el permiso de la carpeta .npm ingresando este comando.

sudo chmod -R 777 ".npm"

Funcionó como un encanto para mí. Pero hay una falla de seguridad con esto, es decir, su directorio global de paquetes es accesible a todos los niveles.


Tengo el mismo problema con la instalación del servidor webpack en todo el mundo. Siga los pasos de esta URL. Solucioné mi problema, puedo trabajar para usted.

Pasos mencionados anteriormente Allí: Haga una copia de seguridad de su computadora antes de comenzar.

Haga un directorio para instalaciones globales:

1. mkdir ~/.npm-global

Configure npm para usar la nueva ruta del directorio:

2. npm config set prefix ''~/.npm-global''

Abra o cree un archivo ~ / .profile y agregue esta línea:

3. export PATH=~/.npm-global/bin:$PATH

De vuelta en la línea de comando, actualice las variables de su sistema:

4. source ~/.profile

Prueba: descargue un paquete globalmente sin usar sudo.

npm install -g jshint

En lugar de los pasos 2 a 4, puede usar la variable ENV correspondiente (por ejemplo, si no desea modificar ~ / .profile):

NPM_CONFIG_PREFIX=~/.npm-global


Tuve un problema en Linux. escribí

chown -R myUserName ./*

en mi carpeta de proyecto.