Ubuntu não encontra executável no PATH

0

Eu instalei node e npm do sorce e criei links simbólicos para minha pasta /usr/local/bin .

npm funciona como, mas tentar executar o nó mostra uma mensagem irritante em vez de executar o executável em /usr/local/bin

Você pode ver o problema aqui:

ubuntu@ip-172-31-31-104:/usr/local/bin$ ls
f2py  node    npm
mvn   nodese  tensorboard
ubuntu@ip-172-31-31-104:/usr/local/bin$ npm -v 
2.14.20
ubuntu@ip-172-31-31-104:/usr/local/bin$ nodese -v
v4.4.1
ubuntu@ip-172-31-31-104:/usr/local/bin$ node -v
The program 'nodejs' is currently not installed. You can install it by typing:
sudo apt-get install nodejs
ubuntu@ip-172-31-31-104:/usr/local/bin$ ./node
> 
(To exit, press ^C again or type .exit)
> 
ubuntu@ip-172-31-31-104:/usr/local/bin$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/bin

Mesmo se node e nodese forem o mesmo link simbólico, o ubuntu primeiro procura node em outro local e imprime a mensagem apt-get . Como posso fazer o Ubuntu examinar o $ PATH primeiro?

EDITAR

esta é a saída do tipo -a

type -a node
node is aliased to 'nodejs'
node is /usr/local/bin/node
node is /usr/local/bin/node
    
por Jesus Gomez 30.03.2016 / 19:09

2 respostas

0

Você está tendo problemas com a nomeação do link, o nó é aliased para nodejs, ele tenta encontrar (sem sucesso) o nodejs, enquanto seu link é chamado de "node" ... uma maneira fácil de corrigir isso é criar um novo link simbólico chamado nodejs em vez de nó na sua pasta bin

ln -s PATH_TO_YOUR_NODEJS /usr/bin/nodejs
    
por Andrés Rangel 30.03.2016 / 20:00
1

Como pode ser visto na saída de type -a node , você tem um alias definido para o nó. Remova-o:

unalias node

Procure a definição de alias no seu .bashrc , .bash_aliases e outros arquivos desse tipo e remova-a.

    
por muru 30.03.2016 / 19:58