node e nodejs têm versões diferentes

node e nodejs têm versões diferentes

Atualizei/instalei com êxito a versão mais recente do node js usando esses comandos (a curlforma oficial não funciona para mim):

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

No entanto, a versão do meu node e do nodejs se tornam diferentes:

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

Parece que o novo nó está instalado /usr/local/bin/node, então tentei:

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

Mas ele retorna:

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

Também uso esse link:

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

Usarei alguns frameworks que dependem de node, como Ionic. Qual versão do nó ele usará?

O que devo fazer para resolver isso?

Muito obrigado por sua ajuda

Responder1

Etapas que resolveram o mesmo problema para mim:

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

Explicação

Você instalou duas versões do nodejs em seu computador, então precisa remover uma delas. Sua situação:

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

Você pode remover nodejso pacote via apt-get removecomando. Isso também removerá o arquivo /usr/bin/nodejse você não receberá a mensagem de erro novamente.

Agora você pode criar um link simbólico chamado "/usr/bin/nodejs", que aponta para a fonte "/usr/local/bin/node". No seu exemplo, você tem uma ordem errada de caminhos "de" e "para"

sudo ln -s source_file myfile

Mais informações sobre criação de links:Como funcionam os links simbólicos

Responder2

O erro:

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

normalmente é causado quando você realmente tem duas versões do Nodejs, uma com o alias do nodee outra com o nodejsalias, como podemos ver no resultado dos comandos node --versione nodejs --version:

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

portanto, você não pode criar um link simbólico para um arquivo que já existe.

Para resolver isso você precisa remover completamente os dois pacotes 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

e reinstale apenas o nodejspacote usando o comando:

sudo apt-get install nodejs

e crie um link simbólico usando:

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

ou instale o nodejs-legacyque resolverá esse problema com o comando:

sudo apt-get install nodejs-legacy 

Responder3

Para mim o nodecomando é o NodeJS instalado nvme nodejso comando é o NodeJS instalado usandoapt-get

informação relacionada