はじめに
既に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
本記事が同様のことでお困りの方の参考になれば幸いです。