(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

【Linux/RHEL】Node.jsのバージョンを16から18に上げる

スポンサーリンク

はじめに

既にNode.jsのVer16が入っているRHEL環境にて、Node.jsをVer18にあげました。せっかくなので、その際の手順と出力結果をメモしておきます。

# npm -v
8.19.4
# node -v
v16.20.2
環境情報
  • Red Hat Enterprise Linux 9.3

背景

特に何も考えずにyumコマンドでnpmをインストールすると

# yum install npm
...
...
Installed:
  nodejs-1:16.20.2-4.el9_3.x86_64               nodejs-docs-1:16.20.2-4.el9_3.noarch           nodejs-full-i18n-1:16.20.2-4.el9_3.x86_64         
  nodejs-libs-1:16.20.2-4.el9_3.x86_64          npm-1:8.19.4-1.16.20.2.4.el9_3.x86_64         

Complete!

冒頭で記載したバージョンでNode.jsがインストールされましたが、利用したいアプリケーションのバージョンが18前提でした。

アップデート方法

改めてyumコマンドでモジュールのバージョンを確認すると以下のようになっています。

# yum list nodejs
Last metadata expiration check: ...
Installed Packages
nodejs.x86_64                                            1:16.20.2-4.el9_3                                            @rhel-9-appstream-rhui-rpms
# yum list npm
Last metadata expiration check: ...
Installed Packages
npm.x86_64                                         1:8.19.4-1.16.20.2.4.el9_3                                         @rhel-9-appstream-rhui-rpms

今回はNode.jsのソースをRPMで提供している以下のサイトからcurlコマンドでリポジトリ情報のインストールを行います。18の部分を利用したいバージョンに置き換えると別のバージョンでも活用できます。

# curl -sL https://rpm.nodesource.com/setup_18.x | bash -
... Repository is configured and updated. Run 'dnf install nodejs -y' to complete the installation.

確かに以下のようなrepoファイルが新規作成されていました。

# ls -ltr /etc/yum.repos.d/ 
total 36
...
-rw-r--r--  1 root root ... nodesource-nodejs.repo
-rw-r--r--  1 root root  ... nodesource-nsolid.repo

あとは既存のパッケージをアンインストールした上で

# yum remove -y nodejs npm
...
Removed:
  nodejs-1:16.20.2-4.el9_3.x86_64               nodejs-docs-1:16.20.2-4.el9_3.noarch           nodejs-full-i18n-1:16.20.2-4.el9_3.x86_64         
  nodejs-libs-1:16.20.2-4.el9_3.x86_64          npm-1:8.19.4-1.16.20.2.4.el9_3.x86_64         

Complete!

新しいリポジトリに基づいてインストールを行うと

# yum install nodejs
...

アップデートに成功しました。

# npm -v
10.5.0
# node -v
v18.20.2

終わりに

ちなみに今回インストールしたパッケージは以下の情報となります。

# yum list npm
Last metadata expiration check: ...
npm.x86_64                                         1:8.19.4-1.16.20.2.4.el9_3                                          rhel-9-appstream-rhui-rpms
# yum list nodejs
Last metadata expiration check: ...
Available Packages
nodejs.x86_64                                               2:18.20.2-1nodesource                                               nodesource-nodejs

本記事が同様のことでお困りの方の参考になれば幸いです。