GNU/Linux >> Linux の 問題 >  >> Cent OS

Centos –正しい新しいバージョンのNode.jsがCentos 7にインストールされないのはなぜですか?

注:これは部分的に解決されていますが、もう少し注意が必要です。 OPの下部にあるメモ、および@Digisecの部分的な回答を参照してください。

CentOS 7でNode.jsをセットアップしようとしていますが、次のコマンドで最新バージョンをインストールできません。 最新バージョンのNode.jsをCentOS7にインストールするには、以下のコードで何を変更する必要がありますか?

node --versionと入力することから始めます その結果、v0.12.7nodejs.orgであるため、これは明らかに古いバージョンです。 v5.6.0 は最新の安定バージョンです。

そこで、次のように入力して、node.jsの最新バージョンを取得します。

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

ターミナルは、古いバージョンのnode.jsを削除するために次のように入力する必要があることを出力するので、次のように入力します。

yum remove -y nodejs npm

ターミナルはまた、node.jsの最新バージョンをインストールするために次のように入力するように指示するので、次のように入力します。

yum install -y nodejs

しかし、次にnode --versionと入力します 再度、端末はv0.12.7で応答します 繰り返しになりますが、前述のコマンドが、古い古いバージョンを再インストールしただけであることを示しています。

CentOS 7マシンに最新の安定バージョンのnode.jsをインストールするには、何をする必要がありますか?

継続的な取り組み:

@Digisecの提案に従って、上記のコマンドを再実行しましたが、今回はすべての出力を次のテキストに記録しました。もう一度実行しているため、シーケンスが少し異なりますが、結果は次のように同じであることに注意してください。

[[email protected] ~]# node --version
v0.12.7
[[email protected] ~]# cd /tmp
[[email protected] tmp]# curl -sL https://rpm.nodesource.com/setup | bash -

## Installing the NodeSource Node.js 0.10 repo...


## Inspecting system...

+ rpm -q --whatprovides redhat-release || rpm -q --whatprovides centos-release || rpm -q --whatprovides cloudlinux-release || rpm -q --whatprovides sl-release
+ uname -m

## Confirming "el7-x86_64" is supported...

+ curl -sLf -o /dev/null 'https://rpm.nodesource.com/pub_0.10/el/7/x86_64/nodesource-release-el7-1.noarch.rpm'

## Downloading release setup RPM...

+ mktemp
+ curl -sL -o '/tmp/tmp.ePYEdVWXQH' 'https://rpm.nodesource.com/pub_0.10/el/7/x86_64/nodesource-release-el7-1.noarch.rpm'

## Installing release setup RPM...

+ rpm -i --nosignature --force '/tmp/tmp.ePYEdVWXQH'

## Cleaning up...

+ rm -f '/tmp/tmp.ePYEdVWXQH'

## Checking for existing installations...

+ rpm -qa 'node|npm' | grep -v nodesource

## Run `yum install -y nodejs` (as root) to install Node.js 0.10 and npm.
## You may also need development tools to build native addons:
##   `yum install -y gcc-c++ make`

[[email protected] tmp]# yum remove -y nodejs npm
Loaded plugins: fastestmirror, langpacks
No Match for argument: npm
Resolving Dependencies
--> Running transaction check
---> Package nodejs.x86_64 0:0.10.42-1nodesource.el7.centos will be erased
--> Finished Dependency Resolution

Dependencies Resolved

====================================================================================================================================================================================
 Package                             Arch                                Version                                                     Repository                                Size
====================================================================================================================================================================================
Removing:
 nodejs                              x86_64                              0.10.42-1nodesource.el7.centos                              @nodesource                               16 M

Transaction Summary
====================================================================================================================================================================================
Remove  1 Package

Installed size: 16 M
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Erasing    : nodejs-0.10.42-1nodesource.el7.centos.x86_64                                                                                                                         1/1 
  Verifying  : nodejs-0.10.42-1nodesource.el7.centos.x86_64                                                                                                                         1/1 

Removed:
  nodejs.x86_64 0:0.10.42-1nodesource.el7.centos                                                                                                                                    

Complete!
[[email protected] tmp]# yum install -y nodejs
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: www.gtlib.gatech.edu
 * epel: mirror.sfo12.us.leaseweb.net
 * extras: dallas.tx.mirror.xygenhosting.com
 * updates: linux.mirrors.es.net
Resolving Dependencies
--> Running transaction check
---> Package nodejs.x86_64 0:0.10.42-1nodesource.el7.centos will be installed
--> Finished Dependency Resolution

Dependencies Resolved

====================================================================================================================================================================================
 Package                             Arch                                Version                                                      Repository                               Size
====================================================================================================================================================================================
Installing:
 nodejs                              x86_64                              0.10.42-1nodesource.el7.centos                               nodesource                              4.5 M

Transaction Summary
====================================================================================================================================================================================
Install  1 Package

Total download size: 4.5 M
Installed size: 16 M
Downloading packages:
nodejs-0.10.42-1nodesource.el7.centos.x86_64.rpm                                                                                                             | 4.5 MB  00:00:09     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : nodejs-0.10.42-1nodesource.el7.centos.x86_64                                                                                                                         1/1 
  Verifying  : nodejs-0.10.42-1nodesource.el7.centos.x86_64                                                                                                                         1/1 

Installed:
  nodejs.x86_64 0:0.10.42-1nodesource.el7.centos                                                                                                                                    

Complete!
[[email protected] tmp]# node --version
v0.12.7
[[email protected] tmp]#   

次に、@Digisecの回答に従って 、次に次のことを試しましたが、それでも適切なバージョンをインストールできません 、次の端末出力からわかるように:

[[email protected] tmp]# curl --silent --location https://rpm.nodesource.com/setup_5.x | bash -

## Installing the NodeSource Node.js 5.x repo...


## Inspecting system...

+ rpm -q --whatprovides redhat-release || rpm -q --whatprovides centos-release || rpm -q --whatprovides cloudlinux-release || rpm -q --whatprovides sl-release
+ uname -m

## Confirming "el7-x86_64" is supported...

+ curl -sLf -o /dev/null 'https://rpm.nodesource.com/pub_5.x/el/7/x86_64/nodesource-release-el7-1.noarch.rpm'

## Downloading release setup RPM...

+ mktemp
+ curl -sL -o '/tmp/tmp.NEM1bxM9WB' 'https://rpm.nodesource.com/pub_5.x/el/7/x86_64/nodesource-release-el7-1.noarch.rpm'

## Installing release setup RPM...

+ rpm -i --nosignature --force '/tmp/tmp.NEM1bxM9WB'

## Cleaning up...

+ rm -f '/tmp/tmp.NEM1bxM9WB'

## Checking for existing installations...

+ rpm -qa 'node|npm' | grep -v nodesource

## Run `yum install -y nodejs` (as root) to install Node.js 5.x and npm.
## You may also need development tools to build native addons:
##   `yum install -y gcc-c++ make`

[[email protected] tmp]# yum remove -y nodejs npm
Loaded plugins: fastestmirror, langpacks
No Match for argument: npm
Resolving Dependencies
--> Running transaction check
---> Package nodejs.x86_64 0:0.10.42-1nodesource.el7.centos will be erased
--> Finished Dependency Resolution

Dependencies Resolved

====================================================================================================================================================================================
 Package                             Arch                                Version                                                     Repository                                Size
====================================================================================================================================================================================
Removing:
 nodejs                              x86_64                              0.10.42-1nodesource.el7.centos                              @nodesource                               16 M

Transaction Summary
====================================================================================================================================================================================
Remove  1 Package

Installed size: 16 M
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Erasing    : nodejs-0.10.42-1nodesource.el7.centos.x86_64                                                                                                                             1/1 
  Verifying  : nodejs-0.10.42-1nodesource.el7.centos.x86_64                                                                                                                             1/1 

Removed:
  nodejs.x86_64 0:0.10.42-1nodesource.el7.centos                                                                                                                                    

Complete!
[[email protected] tmp]# yum install -y nodejs
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: www.gtlib.gatech.edu
 * epel: mirror.sfo12.us.leaseweb.net
 * extras: dallas.tx.mirror.xygenhosting.com
 * updates: linux.mirrors.es.net
Resolving Dependencies
--> Running transaction check
---> Package nodejs.x86_64 0:0.10.42-1nodesource.el7.centos will be installed
--> Finished Dependency Resolution

Dependencies Resolved

====================================================================================================================================================================================
 Package                             Arch                                Version                                                      Repository                               Size
====================================================================================================================================================================================
Installing:
 nodejs                              x86_64                              0.10.42-1nodesource.el7.centos                               nodesource                              4.5 M

Transaction Summary
====================================================================================================================================================================================
Install  1 Package

Total download size: 4.5 M
Installed size: 16 M
Downloading packages:
nodejs-0.10.42-1nodesource.el7 FAILED                                          
https://rpm.nodesource.com/pub_5.x/el/7/x86_64/nodejs-0.10.42-1nodesource.el7.centos.x86_64.rpm: [Errno 14] HTTPS Error 404 - Not Found           ]  0.0 B/s |    0 B  --:--:-- ETA 
Trying other mirror.
To address this issue please refer to the below knowledge base article 

https://access.redhat.com/articles/1320623

If above article doesn't help to resolve this issue please create a bug on https://bugs.centos.org/



Error downloading packages:
  nodejs-0.10.42-1nodesource.el7.centos.x86_64: [Errno 256] No more mirrors to try.

[[email protected] tmp]# yum install -y nodejs
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: www.gtlib.gatech.edu
 * epel: mirror.sfo12.us.leaseweb.net
 * extras: dallas.tx.mirror.xygenhosting.com
 * updates: linux.mirrors.es.net
Resolving Dependencies
--> Running transaction check
---> Package nodejs.x86_64 0:0.10.42-1nodesource.el7.centos will be installed
--> Finished Dependency Resolution

Dependencies Resolved

====================================================================================================================================================================================
 Package                             Arch                                Version                                                      Repository                               Size
====================================================================================================================================================================================
Installing:
 nodejs                              x86_64                              0.10.42-1nodesource.el7.centos                               nodesource                              4.5 M

Transaction Summary
====================================================================================================================================================================================
Install  1 Package

Total download size: 4.5 M
Installed size: 16 M
Downloading packages:
No Presto metadata available for nodesource  
nodejs-0.10.42-1nodesource.el7 FAILED    
https://rpm.nodesource.com/pub_5.x/el/7/x86_64/nodejs-0.10.42-1nodesource.el7.centos.x86_64.rpm: [Errno 14] HTTPS Error 404 - Not Found           ]  0.0 B/s |    0 B  --:--:-- ETA 
Trying other mirror.
To address this issue please refer to the below knowledge base article 

https://access.redhat.com/articles/1320623

If above article doesn't help to resolve this issue please create a bug on https://bugs.centos.org/



Error downloading packages:
  nodejs-0.10.42-1nodesource.el7.centos.x86_64: [Errno 256] No more mirrors to try.

[[email protected] tmp]# node --version
v0.12.7
[[email protected] tmp]# 

次に、上記のエラーログで参照されているナレッジベースの記事にアクセスしましたが、Red Hadの顧客ではないため、記事全体にアクセスできないことがわかりました。

関連:Linux – Unix / Linux OSの標準および/または共通ディレクトリ?

部分的な解決策:

@Digisecは、新しいバージョンをインストールする方法を示すことでこれを部​​分的に解決しましたが、古いバージョンを削除することはできません。これにより、今後競合が発生するリスクが残ります。 新しいインストールをクリーンで完了するために、古いバージョンを削除するにはどのような手順を実行する必要がありますか?

このリンクで、古いバージョンv0.12.7のtarURLを見つけました。また、@ Digisec’は、この他のリンクを読むことを提案しました。これは、コマンドmake uninstallを使用することを提案しています。 。 古いv0.12.7を削除し、新しいバージョンのnodejsを再インストールするために、ターミナルに入力するコマンドは5つか10しかないのではないかと思います。必要なコマンドは何ですか?

次のターミナルコマンドを使用して、CentOS7マシンでnodejsv0.12.7に関連する3つのtarファイルを見つけたようです。

[[email protected] ~]# cd /
[r[email protected] /]# find . -type f -iname "*.tar"
find: ‘./run/user/1000/gvfs’: Permission denied
./opt/node-v0.12.7/deps/npm/node_modules/tar/test/dir-normalization.tar
./opt/node-v0.12.7/deps/npm/test/fixtures/gitignore-and-npmignore-2.tar
./opt/node-v0.12.7/deps/npm/test/fixtures/gitignore-and-npmignore.tar
./usr/local/lib/node_modules/npm/test/fixtures/gitignore-and-npmignore-2.tar
./usr/local/lib/node_modules/npm/test/fixtures/gitignore-and-npmignore.tar
./usr/local/lib/node_modules/npm/node_modules/tar/test/dir-normalization.tar
[[email protected] /]# 

node_modulesとマークされた追加の3つのtarファイルがあることに注意してください v0.12.7との関係 明確ではありません。

v0.12.7を安全にアンインストールするために実行する特定のコマンド すべてのv0.12.7を削除します マシンからの関連するtarファイル?

承認された回答:

これを取得したリンクを確認しました。具体的には、バージョン0.10をインストールします 、または少なくともしようとしていますが、インストールされているリポジトリに新しいバージョンがあります。ノードv5の設定に従う必要があります。

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

PS :今後の参考のために、特に root としてコマンドを実行する場合は、サイトを注意深く読むようにしてください。 。

編集: 了解しました。リポジトリを正しく追加したようです。リポジトリを調べると、パッケージはありますが、システムは間違ったバージョンを探しています。この時点で、私は提案します。

yum clean all && yum update

これにより、キャッシュされたリポジトリがクリーンアップされ、リモートから取得されます。

関連:Windows Updateが不要な更新プログラムをインストールしようとするのはなぜですか?

回答: chatで行った作業の後 、これが正解です。 nodejs v5 正常にインストールされました。以前にnodejs v0.12をコンパイルしました 手動で実行します。これは、この位置に配置されるため、バイナリディストリビューションではお勧めできません。

which node

返されました

/usr/local/bin/node

/usr/bin/node

v5.xの正解を返しました 。

この時点で、修正するための複数のオプションがありますが、2をお勧めします。

  • オプション1 :これは簡単な方法です。 .bashrcを編集できます aliasを追加します node -> /usr/bin/nodeを指します 。これは、alias node="/usr/bin/node"を追加するのと同じくらい簡単です。 。これにより毎回正しいバージョンが呼び出されますが、将来的にライブラリとの競合が発生しないことを保証することはできません。
  • オプション2 :これは難しい方法ですが、修正されます。まず、yumでパージします システムにインストールされているnodejs。次に、コンパイルしたバージョンのtarballを取得し、解凍します。./configure アンインストールします。このステップでは、オンラインで簡単に見つけることができます。最後に、nodejsを再インストールします yumを介して 、そしてそれはあなたの問題を解決するはずです。

Cent OS
  1. CentOSにNode.jsとNPMをインストールする方法

  2. CentOS 6 /RHEL6にMongoDB4.2/4.0をインストールする方法

  3. CentOS7にCSFファイアウォールをインストールする方法

  1. CentOS7に最新バージョンのPython3をインストールする方法

  2. CentOS7にLAMPスタックをインストールする方法

  3. CentOS7にNode.jsとNPMをインストールする方法

  1. CentOS7にMongoDBをインストールする方法

  2. CentOS7にGitをインストールする方法

  3. CentOS7にGradleをインストールする方法