nodo y nodejs tienen versiones diferentes

nodo y nodejs tienen versiones diferentes

Actualicé/instalé con éxito la última versión de node js usando esos comandos (la curlforma oficial no me funciona):

sudo npm cache clean -f
sudo npm install -g n
sudo n stable

sudo ln -sf /usr/local/n/versions/node/<VERSION>/bin/node /usr/bin/node

Sin embargo, la versión de mi nodo y nodejs se vuelve diferente:

$ node --version
v5.0.0
$ nodejs --version
v0.10.25

Parece que el nuevo nodo está instalado /usr/local/bin/node, así que probé:

sudo ln -s /usr/bin/nodejs /usr/local/bin/node

Pero vuelve:

ln: failed to create symbolic link ‘/usr/local/bin/node’: File exists

También uso este enlace:

$ sudo ln -s /usr/bin/nodejs /usr/bin/node
ln: failed to create symbolic link ‘/usr/bin/node’: File exists

Usaré algunos frameworks que dependen de node, como Ionic. ¿Qué versión de nodo utilizará?

¿Qué debo hacer para solucionar esto?

Muchas gracias por tu ayuda

Respuesta1

Pasos que me resolvieron el mismo problema:

sudo apt-get remove nodejs
sudo ln -s /usr/bin/node /usr/bin/nodejs

Explicación

Ha instalado dos versiones de nodejs en su computadora, por lo que necesita eliminar una de ellas. Tu situación:

node v5.0.0 - you will keep this one
nodejs v0.10.25 - this you can remove

Puede eliminar nodejsel paquete mediante apt-get removeel comando. Esto también eliminará el archivo /usr/bin/nodejsy no volverá a recibir el mensaje de error.

Ahora puede crear un enlace simbólico llamado "/usr/bin/nodejs", que apunte a la fuente "/usr/local/bin/node". En su ejemplo, tiene un orden incorrecto de las rutas "desde" y "hacia"

sudo ln -s source_file myfile

Más información sobre la creación de enlaces:Cómo funcionan los enlaces simbólicos

Respuesta2

El error:

ln: failed to create symbolic link ‘/usr/bin/node’: File exists

normalmente se produce cuando realmente tienes dos versiones de los Nodejs, una con el alias de the nodey la otra con el nodejsalias, como podemos ver en el resultado de los comandos node --versionand nodejs --version:

$ node --version
v5.0.0
$ nodejs --version
v0.10.25

por lo que no puedes crear un enlace simbólico para un archivo que ya existe.

Para resolver esto necesitas eliminar completamente los dos paquetes usando:

sudo apt-get purge node
sudo apt-get purge nodejs
sudo rm -rf bin/node bin/node-waf include/node lib/node lib/pkgconfig/nodejs.pc share/man/man1/node

y reinstale solo el nodejspaquete usando el comando:

sudo apt-get install nodejs

y crear un enlace simbólico usando:

ln -s /usr/bin/nodejs /usr/bin/node

o instale el nodejs-legacyque resolverá este problema con el comando:

sudo apt-get install nodejs-legacy 

Respuesta3

Para mí, el nodecomando es el NodeJS instalado por nvmy nodejsel comando es el NodeJS instalado usandoapt-get

información relacionada