はじめに
「XServerで最新のNode.jsを使いたい!」
開発者なら一度は思いますよね。XServerは安くて速くて安定している最高のレンタルサーバーですが、Node.jsのバージョンアップだけは毎回鬼門です。
特に glibc 2.17 というOSレベルの古いライブラリが足枷となり、公式の最新版(v18以降など)を入れると Version 'GLIBC_2.28' not found といった絶望的なエラーが出ます。
しかし、2025年現在、最新のNode.js 25もXServerで動かす方法はあります!
今回は、正規の方法ではインストールできないNode.js 25を、非公式ビルドとnvmを駆使してスマートにインストールする「裏技」をまとめました。
これでAWSやVPSを借りなくても、XServerだけで最新の開発環境が手に入ります。
🛑 なぜ動かないのか?(3行で解説)
-
OSが古い: XServer(CentOS 7ベース等)の
glibcバージョンは2.17です。 -
Nodeが新しい: 最近のNode.js公式バイナリは、より新しい
glibc(2.28など) を要求します。 - 結果: そのままインストールしても互換性がなく動作しません。
💡 解決策:Unofficial Buildsを使う
世界には同じ悩みを抱えるエンジニアがたくさんいます。
有志による Unofficial Builds for Node.js プロジェクトが、この古いglibcでも動くバイナリを配布してくれています。
今回は nvm (Node Version Manager) を少し「改造」して、この非公式バイナリを公式サイトと同じように扱えるようにします。
🛠️ インストール手順
1. SSHでサーバーに接続
まずサーバーにSSH接続します。
※SSH設定がまだの方は、XServer管理画面の「SSH設定」からONにして鍵を生成してください。
ssh <server-id>@<server-id>.xsrv.jp -p 10022 -i ~/.ssh/<private-key>
2. nvm のインストール
バージョン管理ツールの nvm をインストールします。(既に入っている方はスキップOK)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
source ~/.bashrc
3. nvm.sh の「改造」(最重要!)
ここが最大のポイントです。
標準の nvm は公式のアーキテクチャしか知りませんが、これを**「環境変数で指定したアーキテクチャも読み込む」**ように1行だけ書き換えます。
~/.nvm/nvm.sh を vim や nano で開きます。
vim ~/.nvm/nvm.sh
nvm_get_arch という関数を探してください(/nvm_get_arch で検索すると早いです)。
その関数の先頭付近に、以下のコードを追加します。
nvm_get_arch() {
local NVM_OS
local NVM_ARCH
# ▼▼▼ この1行を追加! ▼▼▼
if [ -n "$NVM_NODEJS_ORG_ARCH" ]; then nvm_echo "${NVM_NODEJS_ORG_ARCH}"; return; fi
# ▲▲▲ 追加ここまで ▲▲▲
NVM_OS="$(nvm_get_os)"
# ... (以下略)
}
最後に変更を反映させます。
source ~/.bashrc
4. 魔法のコマンドでインストール
準備完了です!
以下のコマンドを実行して Node.js 25 をインストールします。
NVM_NODEJS_ORG_MIRROR=https://unofficial-builds.nodejs.org/download/release \
NVM_NODEJS_ORG_ARCH=x64-glibc-217 \
nvm install 25
コマンド解説:
-
NVM_NODEJS_ORG_MIRROR: ダウンロード元を非公式ビルドサイトに変更 -
NVM_NODEJS_ORG_ARCH: アーキテクチャをx64-glibc-217(glibc 2.17対応版)に指定
5. 動作確認
インストールが完了したら、バージョンを確認してみましょう。
$ node -v
v25.0.0
無事にバージョンが表示されましたか?
これであなたのXServerは、最新鋭のNode.js実行環境に生まれ変わりました!🎉
🚀 まとめ
「XServerだから古いNode.jsしか使えない」というのは過去の話です。
この方法なら、Node.js 20, 22, 24, 25...と、将来のバージョンでも unofficial-builds が対応している限り使い続けられます。
ぜひ「いいね」と「ストック」をして、後で見返せるようにしておいてください!👍
🔗 参考リンク
この記事は以下の素晴らしい先人たちの情報を参考に作成しました。

