Я установил узел и npm из источника и создал символьные ссылки на мой /usr/local/bin
папка.
работы npm как, но пытающийся выполнить узел показывают раздражающее сообщение вместо того, чтобы работать на исполняемом файле /usr/local/bin
Вы видите проблему здесь:
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
Даже если node
и nodese
та же человечность символьной ссылки, сначала ищет node
где-то в другом месте и печать apt-get
сообщение. Как я могу заставить Ubuntu изучить $PATH сначала?
Править
это - вывод типа-a
type -a node
node is aliased to `nodejs'
node is /usr/local/bin/node
node is /usr/local/bin/node
У Вас есть проблемы с именованием ссылки, узел искажается к nodejs, это пытается найти (неудачно) nodejs, в то время как Вашу ссылку называют "узлом"... простым способом зафиксировать, это должно создать новую символьную ссылку, названную nodejs вместо узла в Вашей папке мусорного ведра
ln -s PATH_TO_YOUR_NODEJS /usr/bin/nodejs
Как видно в выводе type -a node
, Вам определили псевдоним для узла. Удалите его:
unalias node
Ищут определение псевдонима в Вашем .bashrc
, .bash_aliases
и другие такие файлы, и удаляют его.