ホーム / ブログ / Node.js 24のnpm権限エラーはどう直す?2026年Mac初心者向け修復
ENGINEERING_BLOG · 2026.10.20

Node.js 24のnpm権限エラーはどう直す?2026年Mac初心者向け修復

npm install -g を実行したら、ターミナルに EACCES と表示されて止まる。

最短の対処:sudoは使わず、まずNode.jsとnpmの実行パスを確認してください。全体インストール先に書き込み権限がないと分かったら、npm公式の案内に沿ってNode.jsのバージョン管理ツールを使う方法を優先し、必要な場合だけインストール先をユーザーディレクトリに変更します。

Node.js 24を入れた直後、初めて全体インストールで権限エラーが出た学生は、報告された場所から原因を探せます。
学校管理のMacやリモートMacで管理者権限がない場合は、無理に設定を変えないための停止条件を確認できます。
プロジェクトは動くのに、授業で使う全体コマンドだけ失敗するJavaScript学習者にも向けた内容です。

SECTION 01Node.js 24のnpm権限エラーは、どこで起きていますか?

まず、失敗した操作が「プロジェクトの中だけで使う道具」の導入か、「どのプロジェクトからも呼び出せる道具」の導入かを分けます。後者がnpmの全体インストールで、よく使われる指定は -g です。npmの説明でも、全体インストールとプロジェクトへのインストールは別の用途として扱われています。npmの全体インストールの説明

授業の手順が npm install で、特定のプロジェクトフォルダー内だけで失敗したなら、全体ディレクトリの権限を変更しても解決しない場合があります。エラー文に示されたパスと、実行したコマンドを先に控えてください。

プロジェクト依存関係のインストールが失敗した場合

プロジェクト用の依存関係は、そのプロジェクトのフォルダーで使う道具です。ターミナルで授業フォルダーに移動していたか、授業の説明どおりのコマンドだったかを確かめます。

作業フォルダー自体に書き込みできない場合は、学校の管理設定やフォルダーの所有者が関係している可能性があります。システムの権限変更へ進まず、エラーが示す場所を確認して、管理者に相談してください。

全体コマンドのインストールが失敗した場合

npm install -g のように全体インストールを指定した操作で EACCES が出るなら、npmが使おうとした全体インストール先に書き込めない可能性があります。npm公式は、この種のエラーに対する方法としてNode.jsのバージョン管理ツールの利用、またはユーザーディレクトリへのインストール先変更を案内しています。npm公式のEACCES対処ガイド

SECTION 02まず実行パスを調べて、Node.jsとnpmの組み合わせを確認

ターミナルで次を実行し、表示された結果をそのまま控えます。

node -p "process.execPath"
which -a node
which -a npm
npm config get prefix
npm root -g

ここで見るのは、Node.jsとnpmがどの場所から起動するか、全体インストール先がどこかです。複数の場所が表示されたり、想定していた場所と違ったりしても、すぐにファイルを消さないでください。以前のインストールが残っている場合や、ターミナルが別のインストール環境を参照している場合など、原因を区別する材料になります。

npmの全体パッケージの場所や設定値は、npmのフォルダーと設定の説明で確認できます。npmの全体フォルダーの仕組みとnpm設定の項目を参照し、表示された prefix をエラー文のパスと照らし合わせてください。Node.jsのバージョンごとの配布情報は、Node.js 24の公式ダウンロード記録で確認できます。

調べた結果 考えられる状況 次にすること
エラーの場所が npm config get prefix の結果と合う 全体インストール先への書き込みで止まっている可能性があります バージョン管理ツール、またはユーザーディレクトリ方式を検討します
Node.jsとnpmの場所が想定と異なる、または複数表示される 複数のインストール環境や古い設定が関係している可能性があります 先に授業指定の環境と、ターミナルが参照する環境を確認します
失敗したのがプロジェクト内の npm install 全体インストールの問題ではない可能性があります エラーに表示されたプロジェクト側の場所を確認します

SECTION 03バージョン管理ツールを使うべきですか?

Node.jsのバージョン管理ツールは、授業やプロジェクトごとに使うNode.jsを切り替えやすくする方法です。npm公式は、全体インストール時の権限エラーを避ける選択肢として、この方法を推奨しています。ただし、授業がNode.js 24を指定しているなら、別のバージョンへ切り替える前に指定条件を確認してください。

Node.jsの公式リリース状況ページでは、Node.js 24はLTS、Node.js 26はCurrentとして掲載されています。授業の指定が24なら、単に新しい版があるという理由だけで切り替えず、公式のリリース状況とコースの指示を照らし合わせます。リリース区分は更新されるため、作業時点の表示を確認してください。

バージョン管理ツールをすでに使っている、または授業で指定された方法があるなら、同じ案内に従って管理対象をそろえます。反対に、学校管理のMacで導入が制限されている、授業環境の変更が禁止されている、Node.jsの出どころを判断できない場合は、ここで作業を止めて担当者に確認してください。

条件で選ぶ場合は次のとおりです。

  • 授業でバージョン管理ツールを指定している、または複数のNode.js版を使い分ける必要がある場合は、その指定に沿って環境を整えます。
  • Node.jsの現在の管理方法が不明な場合は、変更せずにコースの手順と実行パスを照合します。
  • 学校の管理設定で導入やシェル設定が制限されている場合は、自分で回避せず管理者へ相談します。
  • 管理方法は変えず、全体インストール先だけが書き込み不可だと確認できた場合は、ユーザーディレクトリ方式を検討します。

SECTION 04管理者権限がないMacでは、ユーザーディレクトリを使えますか?

npmの全体インストール先をユーザーが書き込める場所へ移す方法があります。npm公式の設定案内に沿って prefix の変更を検討し、必要な場合はその場所をシェルの PATH に追加します。PATH は、ターミナルがコマンドを探す場所を並べた「尋路リスト」のようなものです。設定の考え方はnpmのEACCESガイドとnpm設定の説明で確認してください。

ただし、設定ファイルの場所や読み込み方は、使っているシェルや学校の端末設定によって異なります。Macのターミナルがzshかどうか、VS Code内のターミナルが同じ環境を使っているかを確かめ、公式説明と端末の管理ルールに合う場合にだけ変更します。VS Codeのシェル設定は公式ターミナルプロファイル資料で確認できます。

学校管理端末で設定ファイルの編集が禁止されている、あるいは変更後に戻す方法が分からない場合は、ユーザーディレクトリへの切り替えも行わず、管理者に相談してください。権限エラーを回避するために管理制限をすり抜ける手順は案内しません。

sudo でインストールしてもよいですか?

おすすめしません。sudo を付けると、通常のユーザー操作とは異なる権限でファイルが作られ、あとから通常のnpm操作で所有者や書き込み権限の問題が起こることがあります。エラーの原因がパスの混在なら、強い権限で実行しても環境の混乱は解消しません。まず出力を控え、どの環境が実行されているかを判断してください。

SECTION 05修復後は、コマンドと授業プロジェクトを別々に確認

変更を行ったら、同じターミナルで実行パスを再確認します。npm config get prefix が意図した場所を示すか、which node と which npm が授業で使う環境を指しているかを見てください。ここがまだ不明なら、追加の権限変更を重ねずに止めます。

次に、授業で必要な全体コマンドがすでに導入されている場合は、command -v コマンド名 でターミナルが見つけられるかを確認します。インストールが成功した表示だけで判断せず、実際にコマンドを呼び出せることを確かめてください。

プロジェクトへの影響は、全体コマンドとは分けて確認します。授業フォルダーで package.json とロックファイルが意図せず変わっていないかを確認し、授業資料にある起動やテストの方法を実行します。権限修正だけを理由に依存関係を削除したり、プロジェクトを最初から作り直したりする必要はありません。

症状が残る場合は、次のように分けます。

  • 同じパスで EACCES が続く:全体インストール先の権限、設定値、管理制限を再確認します。sudo で押し切らず、パスの出どころが不明なら管理者に確認します。
  • インストールは終わったのにコマンドが見つからない:ユーザーディレクトリが PATH に含まれているか、ターミナルを開き直して反映されるかを調べます。
  • プロジェクトの依存関係だけ失敗する:全体インストール先ではなく、プロジェクトの場所、授業指定のコマンド、エラーに示されたファイルを調べます。
  • VS Codeからだけ見つからない:VS Code内のターミナルが通常のターミナルと同じシェルや設定を読み込んでいるか確認します。VS Codeのターミナルプロファイル資料に沿って、利用中のプロファイルを照合してください。

Node.js 24のnpm権限エラーは、権限を強くするより、どのnpmがどの場所へ書き込もうとしているかを確かめる方が安全です。手元のMacで権限変更ができない、学校の端末では開発環境を整えられないなど、問題がnpmではなく学習環境そのものにある場合は、現在の方法では管理制限、環境の食い違い、授業用設定を変えられないことが負担になります。必要な授業課題をMac上で進める期間だけ環境を確保したいなら、MACNOXの料金と利用条件を確認し、利用が決まった場合はMACNOXのMac利用案内から検討できます。管理者権限のある自分のMacでNode.jsを継続して使う予定なら、レンタルより現在の環境を整える方が適しています。

SECTION 06関連記事