Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

543
Views
sudo: npm: comando no encontrado

Estoy tratando de actualizar a la última versión de node. Estoy siguiendo las instrucciones en http://davidwalsh.name/upgrade-nodejs

Pero cuando lo hago:

 sudo npm install -gn

me sale el error:

 sudo: npm: command not found

npm funciona sin sudo. Cuando lo hago:

 whereis node

Veo:

 node: /usr/bin/node /usr/lib/node /usr/bin/X11/node /usr/local/node

Corriendo:

 which npm

Muestra:

 /usr/local/node/bin/npm

Probé la solución en https://stackoverflow.com/a/5062718/1246159

Pero sigo recibiendo el mismo error. También miré el archivo /etc/sudoers y la línea relevante es:

 Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

Esto me parece bien. ¿Cómo puedo hacer que NPM funcione con el comando sudo?

over 4 years ago · Santiago Trujillo
26 answers
Answer question

0

El archivo npm debe estar en /usr/local/bin/npm . Si no está allí, instale node.js nuevamente con el paquete en su sitio web . Esto funcionó en mi caso.

over 4 years ago · Santiago Trujillo Report

0

Para los usuarios de MAC, los siguientes pasos me funcionaron.

Si obtiene un error para Brew, este es el comando que debe escribir primero en la terminal:

 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

Luego ejecute los siguientes comandos:
 $ brew update $ brew uninstall node $ brew install node $ brew postinstall
over 4 years ago · Santiago Trujillo Report

0

Tuve que hacer lo siguiente:

  1. brew update
  2. brew uninstall node
  3. Visite https://nodejs.org/en/ descargue el archivo
  4. Instalar el archivo descargado
over 4 years ago · Santiago Trujillo Report

0

Tenía que hacer

 sudo apt-get install npm

eso funcionó para mí.

over 4 years ago · Santiago Trujillo Report

0

Instale node.js y simplemente ejecute

 npm install -g bower

desde el directorio de su proyecto

over 4 years ago · Santiago Trujillo Report

0

Se agregó la ruta binaria npm a la ruta sudo usando visudo y editando "secure_path"

Ahora "sudo npm" funciona

over 4 years ago · Santiago Trujillo Report

0

Si descargó el paquete de nodos y lo extrajo en algún lugar como /opt , simplemente puede crear un enlace simbólico dentro /usr/local/bin .

 /usr/local/bin/npm -> /opt/node-v4.6.0-linux-x64/bin/npm /usr/local/bin/node -> /opt/node-v4.6.0-linux-x64/bin/node
over 4 years ago · Santiago Trujillo Report

0

Yo tuve el mismo problema; Aquí están los comandos para solucionarlo:

  • sudo ln -s /usr/local/bin/node /usr/bin/node
  • sudo ln -s /usr/local/lib/node /usr/lib/node
  • sudo ln -s /usr/local/bin/npm /usr/bin/npm
  • sudo ln -s /usr/local/bin/node-waf /usr/bin/node-waf
over 4 years ago · Santiago Trujillo Report

0

Para debian después de instalar el nodo ingrese

 curl -k -O -L https://npmjs.org/install.sh ln -s /usr/bin/nodejs /usr/bin/node sh install.sh
over 4 years ago · Santiago Trujillo Report

0

Resolví este problema por

 apt-get install npm2deb
over 4 years ago · Santiago Trujillo Report

0

Si instaló node/npm con nvm, el archivo de configuración del entorno nvm debe ejecutarse antes de poder usar cualquiera de los paquetes.

Esto generalmente se encuentra en ~/.nvm/nvm.sh.

Para ejecutar esto automáticamente, incluya:

 source ~/.nvm/nvm.sh

en el archivo .bash_profile para su usuario

Si luego desea usar sudo con ese usuario, asegúrese de incluir el parámetro -i para que sudo configure el entorno del usuario. p.ej

 sudo -iu jenkins npm install grunt-cli
over 4 years ago · Santiago Trujillo Report

0

** EDITAR **

¡ADVERTENCIA! - Hacer un chmod 777 es una solución bastante radical. Pruebe estos primero, uno a la vez, y deténgase cuando uno funcione:

  • $ sudo chmod -R 777 /usr/local/lib/node_modules/npm
  • $ sudo chmod -R 777 /usr/local/lib/node_modules
  • $ sudo chmod g+w /usr/local/lib
  • $ sudo chmod g+rwx /usr/local/lib

$ brew postinstall node es la única parte de instalación en la que tendría un problema

 Permission denied - /usr/local/lib/node_modules/npm/.github

Asique

 // !! READ EDIT ABOVE BEFORE RUNNING THIS CODE !! $ sudo chmod -R 777 /usr/local/lib $ brew postinstall node

y viola, npm ahora está vinculado

 $ npm -v 3.10.10

Extra

Si usó -R 777 en lib , mi recomendación sería establecer archivos y directorios anidados en una configuración predeterminada:

  • $ find /usr/local/lib -type f -print -exec chmod 644 {} \;
  • $ find /usr/local/lib -type d -print -exec chmod 755 {} \;
  • $ chmod /usr/local/lib 755
over 4 years ago · Santiago Trujillo Report

0

Para los usuarios de CentOS, esto funciona para mí:

 sudo yum install npm
over 4 years ago · Santiago Trujillo Report

0

Tuve el mismo problema, el motivo fue que el administrador de paquetes npm no se instaló al instalar el nodo. Esto se debió al siguiente error: en el proceso de instalación hay un paso llamado "Configuración personalizada", aquí tiene la opción de elegir uno de los siguientes: 1) Tiempo de ejecución de Node.js (Esto está seleccionado de manera predeterminada). 2) Administrador de paquetes npm 3) Atajos de documentación en línea. 4) Agregar a la ruta. Si continúa como está, el administrador de paquetes npm no se instalará y, por lo tanto, obtendrá el error.

Solución: seleccione el administrador de paquetes npm cuando obtenga estas opciones. Esto funcionó para mí.

over 4 years ago · Santiago Trujillo Report

0

Eliminar nodo por completo:

 brew uninstall --force node

Instalar de nuevo:

 brew install node; which node # => /usr/local/bin/node export NODE_PATH='/usr/local/lib/node_modules'
over 4 years ago · Santiago Trujillo Report

0

Para instalar paquetes npm globalmente con permiso sudo, /usr/bin/npm debe estar disponible. Si npm existe en algún otro directorio, cree un enlace suave como:

 sudo ln -s /usr/local/bin/npm /usr/bin/npm

Funciona en Fedora 25, node8.0.0 y npm5.0.0

over 4 years ago · Santiago Trujillo Report

0

simplemente reinstale.

En RHEL, CentOS y Fedora

 sudo yum remove nodejs npm sudo dnf remove nodejs npm [On Fedora 22+ versions]

luego

 yum -y install nodejs npm dnf -y install nodejs npm [On Fedora 22+ versions]

¡Fácil! ... ¡tanto el nodo como el npm funcionan a la perfección ahora!

over 4 years ago · Santiago Trujillo Report

0

También tuve el mismo problema en Homestead y probé de muchas maneras. probé con

sudo apt-get install nodejs

Obtuve el siguiente error:

 The following packages have unmet dependencies: npm : Depends: nodejs but it is not going to be installed Depends: node-abbrev (>= 1.0.4) but it is not going to be installed Depends: node-ansi (>= 0.3.0-2) but it is not going to be installed Depends: node-ansi-color-table but it is not going to be installed Depends: node-archy but it is not going to be installed Depends: node-block-stream but it is not going to be installed Depends: node-fstream (>= 0.1.22) but it is not going to be installed Depends: node-fstream-ignore but it is not going to be installed Depends: node-github-url-from-git but it is not going to be installed Depends: node-glob (>= 3.1.21) but it is not going to be installed Depends: node-graceful-fs (>= 2.0.0) but it is not going to be installed Depends: node-inherits but it is not going to be installed Depends: node-ini (>= 1.1.0) but it is not going to be installed Depends: node-lockfile but it is not going to be installed Depends: node-lru-cache (>= 2.3.0) but it is not going to be installed Depends: node-minimatch (>= 0.2.11) but it is not going to be installed Depends: node-mkdirp (>= 0.3.3) but it is not going to be installed Depends: node-gyp (>= 0.10.9) but it is not going to be installed Depends: node-nopt (>= 3.0.1) but it is not going to be installed Depends: node-npmlog but it is not going to be installed Depends: node-once but it is not going to be installed Depends: node-osenv but it is not going to be installed Depends: node-read but it is not going to be installed Depends: node-read-package-json (>= 1.1.0) but it is not going to be installed Depends: node-request (>= 2.25.0) but it is not going to be installed Depends: node-retry but it is not going to be installed Depends: node-rimraf (>= 2.2.2) but it is not going to be installed Depends: node-semver (>= 2.1.0) but it is not going to be installed Depends: node-sha but it is not going to be installed Depends: node-slide but it is not going to be installed Depends: node-tar (>= 0.1.18) but it is not going to be installed Depends: node-underscore but it is not going to be installed Depends: node-which but it is not going to be installed E: Unable to correct problems, you have held broken packages.

Finalmente probé con

sudo apt-get dist-upgrade

Funcionó bien.

 root@homestead:/usr/local/bin# npm -v 3.10.10 root@homestead:/usr/local/bin# node -v v6.13.0
over 4 years ago · Santiago Trujillo Report

0

Mi solución es:

 sudo -E env "PATH=$PATH" n stable

Funciona bien para mí.

Lo encontré aquí: https://stackoverflow.com/a/29400598/861615

Esto sucede porque ha cambiado el directorio de paquetes globales predeterminado

over 4 years ago · Santiago Trujillo Report

0

En caso de que pueda ser útil para cualquiera que use paquetes rh-* , esto funcionó para mí:

 sudo ln -s /opt/rh/rh-nodejs8/root/usr/bin/npm /usr/local/bin/npm
over 4 years ago · Santiago Trujillo Report

0

En macOS, esto funcionó para mí:

 brew reinstall node
over 4 years ago · Santiago Trujillo Report

0

Como instalé node.js usando el archivo .tar disponible en node.js, tuve que poner la ubicación del directorio del nodo en:

~/.bashrc

de root cambiando de usuario normal a root usando el comando:

sudo -i

luego tuve que agregar la ruta al nodo donde lo extraje en el archivo .bashrc como se muestra a continuación: ingrese la descripción de la imagen aquí

luego refirió .bashrc usando

. ~/.bashrc

después de eso

 npm: command not found

se fue

over 4 years ago · Santiago Trujillo Report

0

Trabaja para mí Resolviendo errores de permisos EACCES al instalar paquetes globalmente

Para minimizar la posibilidad de errores de permisos, puede configurar npm para usar un directorio diferente. En este ejemplo, creará y usará un directorio oculto en su directorio de inicio.

Copia de seguridad de tu computadora. En la línea de comando, en su directorio de inicio, cree un directorio para instalaciones globales:

 mkdir ~/.npm-global

Configure npm para usar la nueva ruta del directorio:

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

En su editor de texto preferido, abra o cree un archivo ~/.profile y agregue esta línea:

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

En la línea de comando, actualice las variables de su sistema:

 source ~/.profile

Para probar su nueva configuración, instale un paquete globalmente sin usar sudo:

 npm install -g jshint
over 4 years ago · Santiago Trujillo Report

0

Para mí, ninguno de los métodos mencionados anteriormente usando Homebrew no funcionó en macOS. Entonces, desinstalé el nodo usando Homebrew y descargué el paquete del nodo de https://nodejs.org/en/download/ y lo instalé. Funcionó a las mil maravillas.

over 4 years ago · Santiago Trujillo Report

0

Puedes hacer un enlace simbólico y funciona para mí.

  1. encontrar la ruta del npm actual

which npm

  1. hacer un enlace simbólico siguiendo el comando

sudo ln -s cual/npm /usr/local/bin/npm

  1. Probar y verificar.

sudo npm -v

over 4 years ago · Santiago Trujillo Report

0

En lugar de instalar el nodo nuevamente, lo que parece ser la solución aceptada, el problema es que no hay permisos para la carpeta nodejs/usr/local.
Ingrese el siguiente comando sudo chmod -R 777 /usr/local/nodejs/

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!