Я пытаюсь установить nodeJs в свой Ubuntu 14.04, чтобы использовать GruntJs.
Я читал о Ubuntu другой способ сделать это (проблемы?), поэтому я сделал это по порядку для его установки:
sudo apt-get install npm
sudo npm install -g grunt-cli
Набираю grunt после этого, у меня ошибка:
/usr/bin/env: node: No such file or directory
Итак, я пробовал:
curl -sL https://deb.nodesource.com/setup | sudo bash -
sudo apt-get install -y nodejs
sudo apt-get update
И пытаясь снова, и все еще получаю ошибку, я пробовал:
sudo add-apt-repository https://launchpad.net/~chris-lea/+archive/node.js/
sudo apt-get install -y nodejs
Я получил это сообщение:
nodejs is already the newest version.
0 to upgrade, 0 to newly install, 0 to remove and 3 not to upgrade.
На всякий случай попробовал почистить:
sudo apt-get autoremove
Но нет, ошибка все еще существует: когда я набираю grunt, я все равно получаю /usr/bin/env: node: No such file or directory
Что я должен делать?
Эта проблема не возникает в Ubuntu 20.04. sudo apt-file find /usr/bin/node
списки nodejs: /usr/bin/node
. То есть при установке пакета nodejs
устанавливается ожидаемая node
исполняемая программа. — person Rosamunda schedule 12.10.2020
Создание символической ссылки решает проблему:
(Моя благодарность и +1 голос за ответ bodokaiser).
sudo apt-get install nodejs-legacy
также создает эту ссылку, см. Описание на странице packages.debian.org/sid/nodejs-legacy</ а> — person Rosamunda; 02.05.2015Символическая ссылка решила проблему и сэкономила много времени на разработку. Спасибо! — person Rosamunda; 22.10.2015
Это исправление — серьезная палочка-выручалочка. Особенно, если вы следуете руководству по исправлению разрешений здесь
docs.npmjs.com/getting -started / fixing-npm-permissions — person Rosamunda; 10.03.2016
Спасибо! Это спасло меня после полудня, когда я пытался настроить приложение узла в облаке Google Linux. — person Rosamunda; 13.08.2016
спасибо, это тоже помогло мне решить мою проблему с докером github .com / юссан / докер-nodejs-шаблон / дерево / мастер / — person Rosamunda; 24.01.2017
Я добавил его в
/usr/local/bin
, просто чтобы запомнить, что это настраиваемая символическая ссылка. — person Rosamunda; 22.02.2017когда я запускаю на Mac — sudo apt-get install nodejs-legacy он говорит sudo: apt-get: command not found — person Rosamunda; 19.04.2017
Сработало у меня! Спасибо — person Rosamunda; 27.08.2017
Дополнительная информация о конфликте имен (разрешение): lists.debian. org / debian-devel-announce / 2012/07 / msg00002.html — person Rosamunda; 24.11.2017
это было
ln -s /usr/local/bin/node /usr/local/bin/nodejs
для меня … просто побежалwhich node
, чтобы найти нужное место. — person Rosamunda; 31.01.2018ln: / usr / bin / node: операция запрещена — person Rosamunda; 09.07.2018
@rd_ Очевидно, вы редактируете каталог / usr / bin. Только root может это сделать. — person Rosamunda; 10.08.2018
Вы должны использовать
which node
, чтобы получить правильный путь к вашему узлу. Таким образом, команда будетln -s "$(which node)" /usr/bin/node
— person Rosamunda; 05.04.2019Это сэкономило мне массу времени. Я изо всех сил пытался отладить экспресс-приложение с помощью babel в vscode. Спасибо. — person Rosamunda; 01.11.2019
ln: / usr / bin / node: Операция запрещена даже с sudo. OSX. — person Rosamunda; 04.06.2020
Здесь не работает, потому что
/usr/bin/npm: No such file or directory
хотяPackage 1:npm-3.10.10-1.6.17.1.1.el7.x86_64 already installed
— person Rosamunda; 14.09.2020Я думаю, вам следует обновить последнюю версию узла
Просто чаевые; сделайте отступ в строках кода на 4 пробела;) кроме того,
n
не является командой, связанной с Node.JS. — person Rosamunda; 12.10.2014@David на основе описания пакета на странице NPM: интерактивное управление всеми версиями вашего узла — person Rosamunda; 07.04.2016
Решил проблему за меня — person Rosamunda; 18.10.2016
Я скопировал проект
laravel
с машиныwindows
наubuntu 16.04
, и уlaravel mix
была проблема сnpm run watch
И это решение сработало для меня, и теперь проблема исчезла — person Rosamunda; 07.09.2019Проблема не в версии узла. Вместо этого в Ubuntu по умолчанию устанавливается NodeJS. При запуске приложения Node в Ubuntu вы должны запустить
nodejs somethign.js
вместоnode something.js
Таким образом, в терминале вызывается приложение с именем
nodejs
, а неnode
. Вот почему существует необходимость в символической ссылке, чтобы просто пересылать все команды, полученные какnode
, наnodejs
.если вы можете получить доступ к узлу на терминале ubuntu с помощью команды nodejs, то эту проблему можно просто решить, используя -создание символической ссылки nodejs и node с помощью
ln -s /usr/bin/nodejs /usr/bin/node
и это может решить проблему
В моем случае проблему решила установка nodejs-legacy.
Я обнаружил, что это часто неправильное название ошибки, если вы устанавливаете из диспетчера пакетов, вы можете называть bin nodejs, поэтому вам просто нужно создать символическую ссылку так
Вместо того, чтобы добавлять отрицательный отзыв, дайте мне знать здесь, в комментарии, что не так, и я могу помочь вам с этим. Поскольку нет ничего плохого в создании символической ссылки, особенно если это помогает вам лучше управлять вещами. — person Rosamunda; 16.09.2016
Я лично предпочитаю этот подход. Чисто. — person Rosamunda; 25.10.2016
Если у вас уже установлен nodejs (проверьте с помощью
which nodejs
) и вы не хотите устанавливать другой пакет, вы можете от имени пользователя root:Это правильный способ Debian. — person Rosamunda; 22.06.2017
Хотя
ln -s
— очевидное простейшее решение, небольшое объяснение:Этот совет возникает при установке
sudo apt-get install nodejs
.Так что какой-то другой известный инструмент (я не знаю, что он делает. Хотя он известен репозиториям ubuntu, он не установлен по умолчанию в 16.04), занимает это пространство имен.
Было бы неплохо, если бы Ubuntu дал совет, как исправить это «чисто», если бы не вручную, что в противном случае сделал бы пакет. (столкновение остается столкновением … если +, когда оно произойдет)
Ответ @ tom-hale — это способ Ubuntu для этого. Вы используете альтернативы, чтобы указать правильный узел — person Rosamunda; 14.12.2016
Когда я использовал gulp, я получил эту ошибку.
/ usr / bin / env: «узел»: нет такого файла или каталога.
Это было удалено путем выполнения следующей команды, вы должны помнить, что каталог / usr / bin имеет все разрешения.
это работает для меня ..
У меня была такая же проблема, но решение не сработало. Я проверяю, установлен ли узел или нет, с помощью команды node -v и обнаружил, что он отсутствует. Должно быть, это потому, что я недавно обновился с 10.04 до ubuntu 20.04. — person Rosamunda; 13.10.2020
Просто делать
И он заработает.
В моем случае ссылка не работает , как показано ниже
Но вы можете открыть / usr / local / bin / lessc как root и изменить первую строку с node на nodejs.
Просто переименуйте команду или имя файла
ln -s /usr/bin/nodejs /usr/bin/node
с помощью этой командыВ зависимости от того, как вы установили свой узел, большую часть времени он мог быть не в / usr / bin /, в моем случае я использовал nvm для установки, поэтому мой узел находился в ./nvm/versions.
С помощью этой команды
which node
я узнал путь, но для облегчения работы вы можете запустить эту команду.приведенная выше команда получит местоположение вашего узла и создаст для вас ссылку.
Для этого есть два решения:
а) Установите переменную PATH, чтобы включить «/ usr / local / bin»
export PATH="$PATH:/usr/local/bin"
б) Создайте символическую ссылку на «/ usr / bin», которая уже находится в вашем PATH
ln -s /usr/bin/nodejs /usr/bin/node
Я надеюсь, что это помогает.
Для меня принятый ответ еще не работал. Я начал, как было предложено здесь:
После этого я получил следующую ошибку:
Решением было загрузить самую последнюю версию узла с https://nodejs.org/en/download/ < / а>.
Тогда я сделал:
Теперь обновление наконец-то прошло успешно:
npm -v
изменился с 3.2.1 на 6.4.1Следуйте этим командам, чтобы устранить проблему.
В терминале:
Очистите весь кеш NPM:
Установите последнюю стабильную версию Node.js:
Теперь установлена последняя версия Node.js. Проверьте версию, используя:
если вы используете
nvm
диспетчер версий узлов, используйте эту команду для создания символической ссылки:node
npm
Я предпочитаю
/usr/local/bin/node
вместо — person Rosamunda; 09.09.2020