
Estoy usando un marco que se ejecuta npm
automáticamente webpack
, el directorio /usr/lib/node_modules
tiene 755 permisos que requieren npm
ejecutarse sudo
. El marco que uso no permite agregar sudo
al comando.
Ahora necesito instalar paquetes npm en forma global (por ejemplo, npm install webpack -g
) sin usar sudo
.
¿Para qué permisos estarán bien /usr/lib/node_modules
? Si configuro los permisos 777, ¿estará bien y será seguro?
¡Gracias!
Respuesta1
No necesitas alterarpermisode npm
poder usarlo sin sudo
. PARA configurar npm
para ejecutar sin sudo
seguir estos pasos:
Opción 1:
Obtener la ruta del directorio npm:
npm config get prefix
si tienes
/usr
ir a la opción 2De lo contrario, cambie el propietario de los directorios npm al suyo:sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}
Opcion 2:
Crear directorio para instalaciones globales:
mkdir ~/.npm-global
Configure para usar ese directorio:
npm config set prefix '~/.npm-global'
Abra o cree
~/.profile
y agregue esto:export PATH=~/.npm-global/bin:$PATH
Agregue esto también a su
~/.bashrc
archivo (opcional):export PATH=/home/username/.npm-global/bin:$PATH export NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript:/home/username/.npm-global/lib/node_modules
Actualizar los archivos:
source ~/.bashrc
Pruebe ejecutando:
npm install -g jshint
fuente:
https://docs.npmjs.com/getting-started/fixing-npm-permissions