En realidad estaba tratando de instalar nodejs junto con npm en mi ubuntu 17.04. Descargué la versión de Linux de nodejs.org y creé un enlace flexible para node y nodejs. Al verificar la versión de nodejs, muestra la versión que instalé y estoy bien con ella.
ahora intenté hacer lo mismo para npm. Traté de crear un enlace suave para npm.
sudo ln -sf /mnt/7A46BE1454633621/softwares/programming/frontend/nodejs/lib/node_modules/npm/bin/npm
/usr/bin/npm
No sé si el enlace que creé es correcto o no. pero al ejecutar el npm -v
comando veo la versión 5.0.3, que es lo que estoy tratando de instalar. se muestra la versión pero justo debajo veo algo como esto.
5.0.3
npm update check failed │
│ Try running with sudo or get access │
│ to the local update config store via │
│ sudo chown -R $USER:$(id -gn $USER) /home/sagar/.config
software-installation
17.04
npm
sagar limbu
fuente
fuente
sudo chown -R $USER:$(id -gn $USER) /home/sagar/.config
aconsejado?Respuestas:
Mi versión npm es 5.0.3 y tengo el mismo problema cuando uso cualquier comando npm:
El comando funciona bien, pero este código sigue apareciendo sin razón aparente. He actualizado de 5.0.3 a 5.2.0 con estos comandos:
npm install -g npm
onpm i -g npm
.Ahora npm está funcionando bien.
fuente
npm
como root consudo npm i -g npm
. NPM actualizado a 6.0.1Exactamente el mismo problema para mí, pero no parece estar relacionado con la versión (estoy usando npm 5.5.1). La fijación de los derechos
~/.config
hizo el truco para mí:Supongo que esto está relacionado con algún problema con el propietario
~/.config/configstore/update-notifier-npm.json
.fuente
Había cambiado el dueño de
y
a $ USER: $ USER.
Supongo que correr
npm
con sudo creó ese archivo. En mi sistema al menos encontramos esto:Entonces, si
sudo npm
está codificado para crear,~/configstore/update-notifier-npm.json
lo hará en el directorio de inicio del usuario ordinario. Eso crea un problema cuando se ejecuta más tardenpm
sin elsudo
cual también quiere leer y tal vez escribir~/configstore/update-notifier-npm.json
. Por alguna razón, los permisos son 600 en ambos.Tenga cuidado cuando
chown
ychmod
-ing todo bajo~/.config
, no puede ser algo sensible allí.fuente
Por favor, no use el
chown
comando proporcionado en el mensaje de error. La ruta~/.config
es utilizada por muchas aplicaciones y es una ruta estándar para almacenar información de configuración. No se recomienda cambiar los derechos de grupo allí. Mejor solo cambie la ruta requerida como:Caso especial: Docker
Un caso común para obtener este error es usar algo como Docker (especialmente montando su propia casa). Considere configurar las variables de entorno como
NPM_CONFIG_CACHE
yXDG_CONFIG_HOME
. El primero establece su ruta de caché y el último está configurando su ruta de configstore. No usaría la.config
carpeta en el directorio de inicio para evitar problemas con la propiedad del archivo. Pero el uso de caché ayuda a servicios como NPM a ahorrar ancho de banda. Intente evitar descargas excesivas en cada compilación y use algo como esto (pero verifique que el destino/tmp
tenga suficiente espacio en disco):fuente
Bueno, lo primero que podemos hacer para resolver estos problemas es
Si esto te ayudó a saber qué hacer.
Nota: El mismo procedimiento también se puede aplicar para configstore solo dentro de la carpeta .config.
fuente