Я установил nodejs на Ubuntu из приведенных здесь инструкций
Когда я пишу node --version
в терминале, я вижу это:
-bash: /usr/sbin/node: No such file or directory
Я могу видеть узел в /usr/sbin/
каталоге, хотя.
Написание npm --version
шоу 1.3.5
Написание nodejs --version
шоуv0.10.15
Также я вижу узел в /usr/bin/
каталоге.
Итак, как мне node
работать?
Также, если я использую zsh вместо bash, то node
команда работает.
ls -l /usr/bin/node
?lrwxrwxrwx 1 root root 22 Jan 1 2013 /usr/bin/node -> /etc/alternatives/node
export | grep PATH
выводит, когда не используетсяzsh
? (он должен печатать/usr/bin
среди прочего)Ответы:
Вам нужно вручную создать символическую ссылку
/usr/bin/node
. Ярлык для bash-совместимых оболочек:Или, если вы используете нестандартные оболочки, просто жестко закодируйте путь, который вы найдете
which nodejs
:Позже редактировать
Я нашел это объяснение в ссылке, которую вы разместили
Позже позже редактировать
Прошло много времени с тех пор как я ответил на это. Хотя решение, которое я разместил здесь, работало для меня несколько раз, пользователи сообщили о нескольких других решениях в комментариях:
От @ user229115
sudo update-alternatives --install /usr/bin/node node /usr/bin/nodejs 10
От AskUbuntu (пользователь leftium)
источник
zsh
, тоnode
команда работает.sudo apt-get remove node
но это говоритPackage node is not installed, so not removed
/usr/bin/env node
не сработает. Решение @ BennyMcBenBen сработалоnodejs-legacy
. Описание пакета. Ответ, связанный @BennyMcBenBen, также был обновлен аналогичными инструкциями.Я думаю, что это так:
Использование альтернатив Debian.
источник
update-alternative
документы. Если это действительно работает, то это лучшее решение :)update-alternatives --install /usr/local/bin/fribjazt node /usr/bin/nodejs 10
.) Каждому свое, но я предпочитаю равнинуln
.source ~/.bashrc
это вступило в силуВидимо, решение отличается в разных версиях Ubuntu. Следующее работает для меня на Ubuntu 13.10:
НТН
Изменить: правило:
Если вы установили,
nodejs
но отсутствует/usr/bin/node
двоичный файл, то также установитеnodejs-legacy
. Это просто создает недостающую мягкую ссылку.В соответствии с моими тестами, Ubuntu 17.10 и выше уже имеет совместимость-softlink
/usr/bin/node
на месте послеnodejs
установки, поэтомуnodejs-legacy
отсутствует в этих выпусках, так как больше не нужен.источник
nodejs-legacy
не нужно много поддержки. Это просто добавляет мягкую ссылку, похожуюsudo ln -s nodejs /usr/bin/node
, по крайней мере, на LTS 14.04У меня такая же проблема в Ubuntu 14.04.
Я установил «nodejs», и он работает, но только если я использую команду «nodejs». Если я пытаюсь использовать «узел», ничего не происходит.
Я исправил эту проблему следующим образом:
Установите nodejs-legacy
После этого, когда я набираю «узел» в командной строке, я получаю сообщение об ошибке «/ usr / sbin / node: нет такого файла или каталога»
Во-вторых, то, что я сделал, это символическая ссылка на "nodejs":
источник
node
должен быть установлен в/usr/bin/
и нет/usr/sbin/
. Это выглядит для меня , как если бы вы установили Ubuntunode
пакет из радиолюбителей ранее (см packages.ubuntu.com/trusty/all/node/filelist ) и забыли запуститьhash -r
на уровне оболочки, так что оболочка до сих пор помнит неправильный путь. Второйln
исправил это, но он больше не нужен после того, как вы покинете оболочку.node
(/usr/sbin/node
для чего-то совершенно другого),nodejs
(/usr/bin/nodejs
) иnodejs-legacy
(/usr/bin/node
, зависит от пакетаnodejs
).node -v => 0.10.2
в то времяnodejs -v => 5.5.0
. Запуск командыwhich node
всегда указывал на эту локальную установку. В итоге мне пришлосьunset NODE_PATH
, что указывало на локальную установку, чтобы это исправить. После этогоnode -v => 5.5.0
иnpm install
начали работать пакеты в зависимости от Node => 5.0.Это случилось и со мной.
Проблема была в том, что я установил узел из источника некоторое время назад. Бег
всегда указывал на эту локальную установку. Также,
указал на локальную установку.
удаление каталога с исходной установкой не помогло. Это просто сломало команду узла. В конце концов, сброс переменной среды NODE_PATH и очистка, а затем переустановка nodejs сделали свое дело.
После этого,
и npm install начал работать для пакетов в зависимости от Node => 5.0.
источник
Диспетчер версий узлов (nvm)
Если вы хотите установить несколько версий nodejs и легко переключаться между ними, я бы предложил использовать Node Version Manger . Это также решает проблему именования (
node
противnodejs
)Все довольно просто:
Установите версию nodejs:
Теперь у вас есть nodejs 4.4 в дополнение к уже установленной версии, и вы можете просто использовать
node
команду для доступа к недавно установленной версии:Вы можете установить больше версий nodejs и легко переключаться между ними:
источник
nvm
на том , как установить Node.js на сервере Ubuntu 14.04Я новичок во всем этом, но для меня простой псевдоним работал:
по крайней мере, для запуска вещей непосредственно в bash и выполнения файлов .js.
источник
rlwrap
. Спасибо!Как насчет использования официальных инструкций с сайта nodejs :
Для v7:
Для v6:
Для v4:
Я тестировал их из Windows bash (через подсистему для Linux - 14.04) и raspbian (на основе ARM Debian). Запуск
sudo apt-get install -y nodejs
без предварительного запуска установочного скрипта приведет к получению узла 0.10.Если вы планируете установить собственные модули npm, требующие сборки, также запустите:
Примечание: это рекомендуемый путь для любого дистрибутива на основе Debian для всех архитектур.
источник
Добавление к правильному ответу @ randunel (пока не могу комментировать SO):
Мне также пришлось использовать символическую ссылку / usr / local / bin / node на / usr / bin / nodejs.
Очевидно, это переопределяло команду / usr / bin / node.
Не знаю, как это получилось, но надеюсь, что это поможет кому-то другому, так как было больно понять, почему вышеупомянутое не работает для меня.
источник
Поздний ответ, но для актуальной информации ...
Если вы устанавливаете node.js, используя метод рекомендуемого файла readme для установки github, рекомендуется следовать инструкциям, приведенным в статье блога nodeource , вместо установки из устаревшего репозитория apt-get, node.js должен запускаться с помощью
node
команды: а такжеnodejs
команда, без необходимости создавать новую символическую ссылку.Этот метод из статьи:
Обратите внимание, что это для версии 0.12, которая, скорее всего, устареет в недалеком будущем.
Кроме того, если вы находитесь за корпоративным прокси (например, я), вам нужно добавить опцию -E в команду sudo, чтобы сохранить переменные env, необходимые для прокси:
curl -sL https://deb.nodesource.com/setup_0.12 | sudo -E bash -
источник
Это работает для меня:
После следования инструкциям в этой ссылке.
источник
Если вы работаете с экземпляром AWS EC2, на котором запущен экземпляр Ubuntu (протестирован на Ubuntu 16.x), то эти шаги могут работать для вас:
Если все правильно, последняя команда должна иметь вывод типа: v6.xx
Если нет, то выполните следующее:
Надеюсь, это поможет. Это помогло мне волшебным образом (хе-хе).
источник
У меня была такая же проблема, символическая ссылка помогла мне: sudo ln -s / usr / bin / nodejs / usr / bin / node после этого sudo npm install -g phantomjs-prebuilt
прошло гладко
источник
Лучший способ установить nodejs - через NVM (Node Version Manager)
Удалить предыдущие версии:
Также удалите все node_modules
$ sudo rm -rf node_modules
в каталоге, содержащем эту папку.Node & Nodejs технически одно и то же. Просто название изменилось.
Сначала установите или обновите nvm
бежать от имени root
затем
ИЛИ
Проверьте NVM к пути
если вы получили сообщение об ошибке, установите git.
Перезапустить:
ИЛИПроверка версии
ИНФОРМАЦИОННЫЙ КУРТЕС:
источник
Я создал символическую ссылку, но она все еще не работала.
Я забыл перезапустить свой терминал (соединение с замазкой). После того, как у меня это работало без символической ссылки :)
источник
Хотя, вы получили ответ, просто хотели указать, что
node
команда (без каких-либо параметров) запустит узел в режиме REPL read-eval-print-loop для выполнения необработанного кода javascript.Другой способ использовать
node
команду - предоставить ейjs
файл в качестве параметра. Вот как мы в основном используем это.источник
Не обязательно удалять существующие node и nodejs, но нужно альтернативно установить последнюю версию 7.x nodejs.
источник
Просто используйте NVM (Node Version Manager) - https://github.com/creationix/nvm
Это стало стандартом для управления Node.js.
Когда вам нужна новая версия:
Если что-то пойдет не так, вы всегда можете вернуться с
источник
Вы можете выполнить эту команду, чтобы включить nodejs:
Примечание. Проверьте версию своего узла.
Источник: https://developers.redhat.com/products/softwarecollections/hello-world/
источник
https://nodejs.org/en/download/
источник