2015-01-05 2 views
8

Я пытаюсь установить Node.js на Red Hat Enterprise Linux Server выпуск 6.1, используя следующую команду:Установка nodejs на Red Hat

sudo yum install nodejs npm 

я получил следующее сообщение об ошибке:

Error: Package: nodejs-0.10.24-1.el6.x86_64 (epel) 
      Requires: libssl.so.10(libssl.so.10)(64bit) 
Error: Package: nodejs-devel-0.10.24-1.el6.x86_64 (epel) 
      Requires: libcrypto.so.10(libcrypto.so.10)(64bit) 
Error: Package: nodejs-0.10.24-1.el6.x86_64 (epel) 
      Requires: libcrypto.so.10(libcrypto.so.10)(64bit) 
Error: Package: nodejs-devel-0.10.24-1.el6.x86_64 (epel) 
      Requires: libssl.so.10(libssl.so.10)(64bit) 
You could try using --skip-broken to work around the problem 
You could try running: rpm -Va --nofiles --nodigest 

I попробовал следующую команду, а также:

sudo yum install -y nodejs 

я получаю следующее сообщение об ошибке:

Error: Package: nodejs-0.10.24-1.el6.x86_64 (epel) 
      Requires: libssl.so.10(libssl.so.10)(64bit) 
Error: Package: nodejs-0.10.24-1.el6.x86_64 (epel) 
      Requires: libcrypto.so.10(libcrypto.so.10)(64bit) 

Как его установить? Я хочу установить последнюю версию.

ответ

7

Вам необходимо обновить версию CentOS 6 до версии 6.5+ или, по крайней мере, копию OpenSSL, поскольку пакет node.js, предоставленный для CentOS 6, был compiled on a system that had a newer version of OpenSSL, который доступен в версии 6.5+.

Альтернативой является сбор и установка узла вручную из источника или использование предварительно скомпилированных двоичных файлов из nodejs.org.

19

NodeJS предоставляет скрипт установки, который должен работать, прежде чем установить его с помощью Yum

curl -sL https://rpm.nodesource.com/setup | bash - 

Тогда ням команда должна работать

yum install -y nodejs 

https://github.com/joyent/node/wiki/installing-node.js-via-package-manager#enterprise-linux-and-fedora

+3

Привет, Я использовал этот способ, но «Нет пакетов nodejs доступен». все еще происходит? Что я мог сделать? thanks –

+0

Сценарий выше скоро будет устаревать в пользу скриптов версии: curl -sL https://rpm.nodesource.com/setup_4.x | bash - – Frank

+0

@liamxu У меня была та же проблема. Решение было, я забыл '-E'in sudo. Если вы не используете root и, например, используете https_proxy, вы должны использовать 'sudo -E bash -' после этого канала. Как написано в сценариях intro, но упущенное мной в течение некоторого времени –

11

У меня нет респ прокомментировать ответ jfredys, но хотел добавить добавление. Его ответ верен для определенных условий, которые, как я предполагаю, но мне это не удалось, поскольку я столкнулся с ошибкой:

Ваше распределение, обозначенное как «redhat-release-server-6Server-6.6.0.2.el6.x86_64», , в настоящее время не поддерживается, пожалуйста, свяжитесь с NodeSource в https://github.com/nodesource/distributions/issues, если вы думаете, что это неправильно или хотели бы ваше распределение будет рассматриваться для поддержки

Я побежал в странности пытается установить метеорные пакеты на другом сервере в последнее время, и оказалось, быть проблемой прокси-сервера/брандмауэра с завитой попыткой ударить по сайтам SSL. Мне пришлось изменить все команды curl, чтобы использовать -k для обхода ложных предупреждений SSL. Сначала я скопировал скрипт установки локально:

curl -kL https://rpm.nodesource.com/setup > ~/nodeInstall.sh 

В то время как я был в нем я удалил (бесшумный) вариант эля, чтобы дать некоторое представление о каких-либо проблемы (к счастью, не были). В скрипте я изменил все команды curl на использование -k (также на всякий случай удалил параметр silent). Я поставил его исполняемым, и это побежал чисто (под Судо), я, наконец, смог установить НПМ

sudo yum install -y nodejs 

И все были счастливы:

$npm -version 
1.4.28 
+0

интеллектуальный ответ и хорошо объясненный - спасибо – danday74

+0

Спасибо danday74! –

2

, если эта команда не работает, то посетить. ..

https://rpm.nodesource.com/setup

в вашем браузере

Это дает инструкции о том, как использовать Wget вместо этого.

wget -qO- https://rpm.nodesource.com/setup | bash - 

Возможно, это поможет кому-то!

1

IMO ответ by @Eric Soyke должен быть отмечен как правильный. Одна вещь, которую нужно изменить в случае, если вам нужен узел v4, - это заменить «setup» на «setup_4.x».

Последовательность команд (по крайней мере, для корневого пользователя) заключается в следующем:

curl -kL https://rpm.nodesource.com/setup > ~/nodeInstall.sh 
# or for v4/v6: 
# curl -kL https://rpm.nodesource.com/setup_4.x > ~/nodeInstall.sh 
# curl -kL https://rpm.nodesource.com/setup_6.x > ~/nodeInstall.sh 
sed -i -e 's_curl _curl -k _g' nodeInstall.sh 
chmod u+x nodeInstall.sh 
./nodeInstall.sh 
yum -y install nodejs 
rm nodeInstall.sh 
4

Подобно тому, как в https://nodejs.org/en/download/package-manager/ вы должны запустить:

или

curl --silent --location https://rpm.nodesource.com/setup_6.x | bash - 

в зависимости от версии NodeJS, в которой вы нуждаетесь. Затем просто запустите

yum -y install nodejs 
Смежные вопросы