MIRACLE LINUX 最新バージョンのnode.jsをインストールする手順

MIRACLE LINUX 最新バージョンのnode.jsをインストールする手順

MIRACLE LINUXに、最新バージョンのnode.jsをインストールするまでの手順を記述してます。

環境

  • OS  MIRACLE LINUX release 8.4 (Peony)

標準リポジトリのバージョン確認

標準リポジトリにある「node.js」のバージョンを確認してみます。

$ dnf info nodejs

利用可能なパッケージ
名前         : nodejs
エポック     : 1
バージョン   : 10.24.0
リリース     : 1.module+el8+1212+8a4373da
Arch         : x86_64
サイズ       : 8.8 M
ソース       : nodejs-10.24.0-1.module+el8+1212+8a4373da.src.rpm
リポジトリー : 8-latest-AppStream
概要         : JavaScript runtime
URL          : http://nodejs.org/
ライセンス   : MIT and ASL 2.0 and ISC and BSD
説明         : Node.js is a platform built on Chrome's JavaScript runtime
             : for easily building fast, scalable network applications.
             : Node.js uses an event-driven, non-blocking I/O model that
             : makes it lightweight and efficient, perfect for data-intensive
             : real-time applications that run across distributed devices.

「10.24.0」で、最新のバージョンではないため「n package」を使用して、最新のnode.jsのインストールを行います。

n package インストール

まずは、必要なパッケージを先にインストールしておきます。

$ sudo dnf install gcc-c++ make

メタデータの期限切れの最終確認: 0:26:43 時間前の 2021年10月04日 15時25分04秒 に実施しました。
依存関係が解決しました。
============================================================================================================================================
 パッケージ                       アーキテクチャー        バージョン                              リポジトリー                        サイズ
============================================================================================================================================
インストール:
 gcc-c++                          x86_64                  8.4.1-1.el8                             8-latest-AppStream                   12 M
 make                             x86_64                  1:4.2.1-10.el8                          8-latest-BaseOS                     497 k
依存関係のインストール:
 cpp                              x86_64                  8.4.1-1.el8                             8-latest-AppStream                   10 M
 gcc                              x86_64                  8.4.1-1.el8                             8-latest-AppStream                   23 M
 glibc-devel                      x86_64                  2.28-151.el8                            8-latest-BaseOS                     1.0 M
 glibc-headers                    x86_64                  2.28-151.el8                            8-latest-BaseOS                     477 k
 isl                              x86_64                  0.16.1-6.el8                            8-latest-AppStream                  856 k
 kernel-headers                   x86_64                  4.18.0-305.19.1.el8_4                   8-latest-BaseOS                     7.1 M
 libstdc++-devel                  x86_64                  8.4.1-1.el8                             8-latest-AppStream                  2.0 M
 libxcrypt-devel                  x86_64                  4.1.1-4.el8                             8-latest-BaseOS                      24 k

トランザクションの概要
============================================================================================================================================
インストール  10 パッケージ

ダウンロードサイズの合計: 58 M
インストール後のサイズ: 143 M
これでよろしいですか? [y/N]: y

次に「n package」をインストールするために、「node.js」必要なので、標準リポジトリから「node.js」をインストールしておきます。

$ sudo dnf install -y nodejs

「npm」を使って、「n package」をインストールします。

$ sudo npm install n -g

/usr/local/bin/n -> /usr/local/lib/node_modules/n/bin/n
+ n@7.5.0
added 1 package from 2 contributors in 0.57s

「n」がインストールできたので、最新版のnode.jsを「n」コマンドで確認してみます。

$ n stable

/usr/local/bin/n -> /usr/local/lib/node_modules/n/bin/n
+ n@7.5.0
added 1 package from 2 contributors in 0.57s
[testuser@localhost ~]$ n stable
  installing : node-v14.18.0
       mkdir : /usr/local/n/versions/node/14.18.0
mkdir: ディレクトリ `/usr/local/n' を作成できません: 許可がありません

  Error: sudo required (or change ownership, or define N_PREFIX)

エラーになったので、記述されている通り「N_PREFIX(nodeモジュールのインストールするPATH)」を使用します。

export N_PREFIX=$HOME/.n
export PATH=$N_PREFIX/bin:$PATH

このままだと、bashを再起動やログインしなおしで追加したパスが消えるので「bash_profile」に記述しておきます。

$ sudo nano ~/.bash_profile

<追加>
export N_PREFIX=$HOME/.n
export PATH=$N_PREFIX/bin:$PATH

再度、「n」コマンドを実行します。

$ n stable

  installing : node-v14.18.0
       mkdir : /home/testuser/.n/n/versions/node/14.18.0
       fetch : https://nodejs.org/dist/v14.18.0/node-v14.18.0-linux-x64.tar.xz
   installed : v14.18.0 (with npm 6.14.15)

Note: the node command changed location and the old location may be remembered in your current shell.
         old : /usr/bin/node
         new : /home/testuser/.n/bin/node
To reset the command location hash either start a new shell, or execute PATH="$PATH"

最新バージョンが「14.18.0」であることが確認できました。

さきほど、インストールした「nodejs」は、もう必要ないのでアンインストールしておきます。

$ sudo dnf remove -y nodejs npm

シェルも再起動しておきます。

$ exec $SHELL -l

node.jsバージョン確認

最新バージョンがインストールされたから、確認するため、node.jsのバージョンを確認してみます。

$ node -v

v14.18.0

「14.18.0」になっていることが確認できます。

npmのバージョンも確認しておきます。

$ npm -v

<出力結果>
6.14.15

「6.14.13」となってますが、最新ではないnpmは最新でない可能性があるので、npmでnpmをアップデートしておきます。

$ npm i -g npm

<出力結果>
/home/testuser/.n/bin/npm -> /home/testuser/.n/lib/node_modules/npm/bin/npm-cli.js
/home/testuser/.n/bin/npx -> /home/testuser/.n/lib/node_modules/npm/bin/npx-cli.js
+ npm@7.24.1
added 70 packages from 27 contributors, removed 250 packages and updated 187 packages in 9.984s

「7.18.1」にアップデートされていることが確認できます。

$ npm -v

<出力結果>
7.24.1

これで、node.jsとnpmが最新のものがインストールされました。