npm-EPERM:Windowsでは許可されていない操作


105

私は走った

npm config set prefix /usr/local

そのコマンドを実行した後、Windows OSでnpmコマンドを実行しようとすると、以下が表示され続けます。

Error: EPERM: operation not permitted, mkdir 'C:\Program Files (x86)\Git\local'
at Error (native)

からすべてのファイルを削除しました

C:\Users\<your username>\.config\configstore\

うまく行かなかった。

なにか提案を ?


25
実行npm cache clean --forceすると問題が解決しました。
Nuhman 2017

npm cache clean --forceを2回実行するとうまくいきました。
VIshal Jain

回答:


101

このコマンドの実行は私の間違いでした。

npm config setプレフィックス/ usr / local

パス/usr/localはウィンドウ用ではありません。このコマンドは、プレフィックス変数を変更しました'C:\Program Files (x86)\Git\local'

このディレクトリにアクセスして変更するには、管理者としてcmdを実行する必要があります。

だから私はしました:

  1. 管理者としてcmdを実行します
  2. 実行npm config edit(メモ帳エディタが表示されます)
  3. prefix変数をに変更C:\Users\<User Name>\AppData\Roaming\npm

その後npm start、通常のコンソールで動作します。


4
これで私の問題も解決しました(Windows 10)。ありがとうございます。
AntonB 2017

私の場合、私は単にコメントを外しましたprefix(以前は;prefix...npm config edit、そして利益。それがスマートなものかどうかはわかりませんが、うまくいきました。
ruffin

私の場合、私はここに、ラップトップ上の私には何の管理者権限を持っていた私は、IT-やった方法ですstackoverflow.com/a/57249779/10603466
Rishabhジャイナ

管理者が私の問題を修正したので、再実行してください。
壊れない

31

これは、Windowsがユーザーにシステムドライブ内にフォルダーを作成する許可を与えていないために発生します。これを解決するには:

右クリック

[フォルダ]> [ プロパティ] > [ セキュリティ]タブ

[ 編集]をクリックしてアクセス許可を変更し、ユーザーを選択して、そのユーザーにフルコントロールを付与します。


2
現在の問題を修正する方法で、この答えのヘルプOPのための答えを持ついくつかの説明を追加
ρяσѕρєяK

1
ユーザーにシステムフォルダーを変更するためのアクセス権を付与することは、特にプレフィックスをユーザーのホームディレクトリ内のフォルダーに変更することで簡単に修正できる場合は、お勧めできません。
atomic77

1
これは、システム管理者ではない会社のラップトップでは機能しません。
シュリンゲル


26

場合によっては、パッケージをインストール/更新する前に開発サーバーを停止するだけでよい場合もあります。


1
WebStormでこの問題が発生しました。ありがとうございました!これで問題は解決しました。
takasoft

1
奇妙だが真実...反応フックを試すためのreact-dom@16.7.0-alpha.0のインストールは、これを試すまで機能しませんでした
Dimitar Nikovski

これに追加するには、この問題があなたの開発サーバーが実行されていると疑っていても、それを停止する方法がわからない場合は、ログアウト/再起動するだけで常にこの問題が解決されます
Ng

24

新しいバージョンにアップグレードしたときに最近同じ問題が発生しましたが、唯一の解決策はダウングレードを行うことでした

アンインストールするには:

npm uninstall npm -g

以前のバージョンをインストールします。

npm install npm@5.3 -g

しばらくしてからバージョンを更新してください。


2
こっちも一緒。npmのアップグレードが問題だったようです
SokIsKedu

正確に、私はこのトピックに従って、いつ修正されるかを知っています。
レオナルドオリベイラ

これで解決しました!
ジム

ところで、5.4.1から5.4.2に更新したところ、問題は解消されたようです。問題は修正されたと思います。レオナルドが言及したトピックはロックされていたため、少しわかりにくい。
Mantisサポート

それも私のために働いた。助けてくれて@LeonardoOliveiraに感謝
Vipin

13

私の場合、実行中にエディタ(VSコード)でディレクトリとそのファイルが開かれたため、このエラーに直面していましたnpm install。エディターを閉じてnpm installコマンドラインで実行することで問題を解決しました。


10

npmを更新した後、同じ問題が発生しました。次のコマンドで最新のnpmを再インストールすることで解決しました:

npm i -g npm

今回はcmdを管理モードで実行しています。

アップデートに問題があったのではないかと疑っていたので、これをすべて行いました。


10

Windows 10を使用しています。CMDを管理者として起動し、問題を解決しました。

CMDを見つけて右クリックし、[管理者として開く]をクリックします。


これは私の問題を解決しました。
muneeb_ahmed

@EtienneGautierそれは...単にまったく真実ではありません。システムファイルを変更するための提案されたソリューションは何ですか?「管理者権限」以外の方法がある場合は、OSのセキュリティに深刻な問題があります。
Clonkex

@Clonkexさん、私はコンテキストがNPMのものであると想定していました(質問によると)。それでも私のコメントは関係ないので、削除します。ご意見ありがとうございます。
エティエンヌゴーティエ

@EtienneGautierああ、十分だ。
Clonkex

7

私にとっては、node_moduleの既存のフォルダーを変更する問題でした。そのため、フォルダー全体を中核にして、npm installを再度実行しました。その後はエラーなしで動作します


7

の古いバージョンがありましたnpm。この問題を解決するために一連のコマンドを実行しました。

npm cache clean --force

次に:

npm install -g npm@latest --force

その後(もう一度):

npm cache clean --force

そして、ついに私が見ていたエラーなしにこれを実行することができました(Angularプロジェクトのインストール)EPERM

ng new myProject

6

npmパッケージをインストールしようとしたときにも同じ問題が発生しましたAVA。私の解決策は、node_modulesフォルダーを削除し、npmキャッシュを強制的にクリーンアップすることでした:

rm -rf node_modules
npm cache clean --force

その後、問題なくnpmパッケージをインストールできました。


はい、どういうわけか現在の作業ディレクトリにnode_modulesフォルダーがありました。Angular CLIコマンド 'ng new ..'を実行しようとすると、その例外がスローされていました。node_modulesフォルダーの削除が役立ちました。
アショカンシバプラガサム

3

最も簡単な方法

私がこの投稿に遅すぎないことを願っていますが、最近私もこの問題に見舞われました。また、私のラップトップには管理者権限がありませんでした。

これが私がバグを修正した最も簡単な方法です。

  1. ファイル名を見つけます.npmrc(それはにありますC:\Users\<user name>\.npmrc
  2. それを開き、のパスをprefix=に変更しますprefix=C:\Users\<user name>\AppData\Roaming\npm

お役に立てれば幸いです。


WebStormを使用してこの問題が発生しました。これは、Googleの最初のページで私の問題を解決した唯一のものです。リシャブ、ありがとう!
Leandro

3

IDEのターミナル/コマンドプロンプトでこのエラーが発生した場合は、node_modulesを削除してIDEを閉じ、npm installコマンドを再実行してください。IDEが開始したが、node_modulesツリーの分析がまだ完了していないときは、IDEがnode_modulesの内容をまだスキャンしているためにパッケージのインストールが失敗する場合があるため、注意が必要です。



1

会社のLANを使用していたため、同じ問題が発生しました。そしてcmd.exe npm、私は実行しただけで、その後、他のコマンドをエラーなしで実行することができました。

C:\Users\586656>cmd.exe npm
Microsoft Windows [Version 10.0.14393]
(c) 2016 Microsoft Corporation. All rights reserved.

これを共有するだけです。これは、オフィスLANでこれを行おうとする他の人々を助ける可能性があるためです。ありがとうございました。


1

管理者としてcmdを実行するだけです。古いnode_modulesフォルダーを削除し、npm installを再度実行します。


1
npm installは、CMDを管理者として開始しなくても機能するはずです。通常のcmd(非管理者)では機能しないことも問題です。
Lahar Shah


1

ノードのバージョンを8.9.4に更新し、管理者のコマンドプロンプトから必要なインストールコマンドを再度実行しました。それは私のために働いた!



1

フォルダ/ファイルが別のプロセスによってロックされていたので、私に起こりました。ツール(LockHunter)を使用してそのプロセスを終了し、再び動作し始めた(考えられる理由)。


1

npm i -g npmを試してください。NPMバージョン6.9は私にとって仕事です。


1

ウインドウズ10、

IDE(私の場合はIntelliJ)を管理者モードで実行し、npm installを実行すると問題が解決します。

IDEがない場合は、CMDを管理者モードで実行し、npm installを実行してみてください


1

create-react-appサーバーを実行していました。サーバーを停止するだけで、すべてがうまくいきました。


1
これは私の問題を解決しました!他の人を試す前に、これを最初に試すべきだと思います。他の答えはより多くの努力を必要とするので。
Irfandy Jip


0

Windows PowerShellでnpmコマンドを実行すると、問題が解決しました。


ローカルまたはその他の構成ファイルを編集する必要はありません
Sai Prasad

0

私と同じように、私の解決策はAndroidスタジオ、AVDマネージャー、Visual Studioを閉じて再インストールすることでした。次のコマンドを実行してexpo cliを更新しました。

npm install -g expo-cli

0

どうやらアンチウイルスソフトウェアもこのエラーを引き起こす可能性があります。私の場合、Windows SecurityのRansomware Protectionでユーザーフォルダを保護していたため、このエラーが発生しました。


0

私にとっては、.npmrcファイルの問題でした。これはC:\ Users \ myname.npmrcにあります。どういうわけか、.npmrcファイルの内容が変更されました。同僚のラップトップと比較して内容を変更しました。それで解決しました。

参考までに、.npmrcファイルの内容も追加しています

 ;;;;
 ;npm userconfig file
 ;this is a simple ini-formatted file
 ;lines that start with semi-colons are comments.
 ;read `npm help config` for help on the various options
 ;;;;

 //registry.npmjs.org/:_authToken=95632bcf-3056-4538-b57d-38426736e3a0
 scope=true
 @true:registry=https://registry.npmjs.org/

 ;;;;
 ;all options with default values
 ;;;;
 ;access=null

 ;allow-same-version=false

 ;always-auth=false

 ;also=null

 ;audit=true

 ;audit-level=low

 ;auth-type=legacy

 ;before=null

 ;bin-links=true

 ;browser=null

 ;ca=null

 ;cafile=undefined

 ;cache=C:\Users\myname\AppData\Roaming\npm-cache

 ;cache-lock-stale=60000

 ;cache-lock-retries=10

 ;cache-lock-wait=10000

 ;cache-max=null

 ;cache-min=10

 ;cert=null

 ;cidr=null

 ;color=true

 ;depth=null

 ;description=true

 ;dev=false

 ;dry-run=false

 ;editor=notepad.exe

 ;engine-strict=false

 ;force=false

 ;fetch-retries=2

 ;fetch-retry-factor=10

 ;fetch-retry-mintimeout=10000

 ;fetch-retry-maxtimeout=60000

 ;git=git

 ;git-tag-version=true

 ;commit-hooks=true

 ;global=false

 ;globalconfig=C:\Users\myname\AppData\Roaming\npm\etc\npmrc

 ;global-style=false

 ;group=0

 ;ham-it-up=false

 ;heading=npm

 ;if-present=false

 ;ignore-prepublish=false

 ;ignore-scripts=false

 ;init-module=C:\Users\myname\.npm-init.js

 ;init-author-name=

 ;init-author-email=

 ;init-author-url=

 ;init-version=1.0.0

 ;init-license=ISC

 ;json=false

 ;key=null

 ;legacy-bundling=false

 ;link=false

 ;local-address=undefined

 ;loglevel=notice

 ;logs-max=10

 ;long=false

 ;maxsockets=50

 ;message=%s

 ;metrics-registry=null

 ;node-options=null

 ;node-version=10.15.2

 ;offline=false

 ;onload-script=null

 ;only=null

 ;optional=true

 ;otp=null

 ;package-lock=true

 ;package-lock-only=false

 ;parseable=false

 ;prefer-offline=false

 ;prefer-online=false

 ;prefix=C:\Program Files\nodejs

 ;preid=

 ;production=false

 ;progress=true

 ;proxy=null

 ;https-proxy=null

 ;noproxy=null

 ;user-agent=npm/{npm-version} node/{node-version} {platform} {arch}

 ;read-only=false

 ;rebuild-bundle=true

 ;registry=https://registry.npmjs.org/

 ;rollback=true

 ;save=true

 ;save-bundle=false

 ;save-dev=false

 ;save-exact=false

 ;save-optional=false

 ;save-prefix=^

 ;save-prod=false

 ;scope=

 ;script-shell=null

 ;scripts-prepend-node-path=warn-only

 ;searchopts=

 ;searchexclude=null

 ;searchlimit=20

 ;searchstaleness=900

 ;send-metrics=false

 ;shell=C:\windows\system32\cmd.exe

 ;shrinkwrap=true

 ;sign-git-commit=false

 ;sign-git-tag=false

 ;sso-poll-frequency=500

 ;sso-type=oauth

 ;strict-ssl=true

 ;tag=latest

 ;tag-version-prefix=v

 ;timing=false

 ;tmp=C:\Users\myname\AppData\Local\Temp

 ;unicode=false

 ;unsafe-perm=true

 ;update-notifier=true

 ;usage=false

 ;user=0

 ;userconfig=C:\Users\myname\.npmrc

 ;umask=0

 ;version=false

 ;versions=false

 ;viewer=browser

 ;_exit=true

 ;globalignorefile=C:\Users\myname\AppData\Roaming\npm\etc\npmignore

0

設定を更新しようとする人のために

npm設定の更新に問題がある場合は、代わりに-gフラグを使用して実行してみてください。これにより、他のすべてを試した後、Win 10の問題が解決しました。

npm config edit -g

私は設定を更新することができ、変更はどこにでも反映されます。これは、組織のスコープでnpmを実行したことが原因である可能性があります。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.