npm - EPERM:Windows 不允许操作

npm - EPERM: operation not permitted on Windows

我运行

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\

没用。

有什么建议吗?

运行执行此命令是我的错误。

npm config set prefix /usr/local

路径 /usr/local 不适用于 windows。此命令更改了 'C:\Program Files (x86)\Git\local'

处的前缀变量

要访问和更改此目录,我需要 运行 我的 cmd 作为管理员。

所以我做到了:

  1. 运行 以管理员身份运行命令
  2. 运行 npm config edit(您将获得记事本编辑器)
  3. prefix 变量更改为 C:\Users\<User Name>\AppData\Roaming\npm

然后 npm start 在普通控制台中工作。

发生这种情况是因为 windows 未授予用户在系统驱动器内创建文件夹的权限。要解决这个问题:

右键单击

文件夹 > 属性 > 安全 选项卡

单击编辑 更改权限> Select 用户并授予该用户完全控制

对我来说,这是一个更改 node_module 中现有文件夹的问题,所以我核对了整个文件夹并再次 运行 npm 安装。之后它可以正常工作

我通过更改 windows 项目文件夹的用户访问权限解决了这个问题:

截图如下: http://prntscr.com/djdn0g

我最近升级到新版本时遇到了同样的问题,唯一的解决办法就是降级

要卸载:

npm uninstall npm -g

安装之前的版本:

npm install npm@5.3 -g

稍后更新版本试试

我在更新 npm 后遇到了同样的问题。通过重新安装最新的 npm 解决了这个问题:

npm i -g npm

但这次在管理模式下使用 cmd 运行。

我之所以这样做,是因为我怀疑更新有问题,主要是一些丢失的文件。

我用Windows10。 我以管理员身份启动CMD,问题解决了。

找到CMD,右击,点击以管理员身份打开

我在使用公司局域网时遇到了同样的问题。而且我只是 运行 cmd.exe npm 之后我能够毫无错误地执行我的其他命令。

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

只是分享这个,因为它可能会帮助其他尝试在办公室 LAN 中执行此操作的人。谢谢。

只需 运行 以管理员身份执行命令。删除旧 node_modules 文件夹并再次 运行 npm 安装。

找到这个命令 npm cache clean 以快速简单的方式解决这些错误!

我将我的节点版本更新到 8.9.4 并 运行 从管理员命令提示符再次执行必要的安装命令。它对我有用!

有时,所需要做的只是在 installing/updating 包之前停止开发服务器。

我的笔记本电脑重启,然后

npm install

对我有用!

尝试以管理员身份通过 运行 CMD 安装 npm 包。您可以在 npm install throwing error EPERM.

上就此错误进行广泛讨论

运行 Windows Powershell 中的 npm 命令解决了我的问题。

我在尝试安装 npm 包时遇到了同样的问题 AVA。我的解决方案是删除 node_modules 文件夹并强制清理 npm 缓存:

rm -rf node_modules
npm cache clean --force

然后我可以毫无问题地安装 npm 包。

发生在我​​身上,因为 folder/file 被另一个进程锁定。使用工具 (LockHunter) 终止该进程并再次开始工作(可能的原因)。

就我而言,我遇到此错误是因为我的目录及其文件是在我 运行 npm install 时在我的编辑器(VS 代码)中打开的。我通过关闭我的编辑器并通过命令行 运行 npm install 解决了这个问题。

尝试 npm i -g npm 。 NPM 6.9 版适合我。

我也一样, 我的解决方案是关闭 Android studio、AVD Manager、Visual Studio 并重新安装。 我执行了这个命令来更新我的 expo cli:

npm install -g expo-cli

最简单的方法

希望我还不算太晚 post 但最近我也遇到了这个问题。而且我的笔记本电脑没有管理员权限。

这是我修复错误的最简单方法。

  1. 找到文件名 .npmrc(它将在 C:\Users\<user name>\.npmrc 中)
  2. 打开把prefix=的路径改成prefix=C:\Users\<user name>\AppData\Roaming\npm

希望对您有所帮助..

显然杀毒软件也会导致这个错误。在我的例子中,我有 Windows 安全的勒索软件保护来保护我的用户文件夹,这导致了这个错误。

我有一个过时的 npm 版本。我运行一系列命令来解决这个问题:

npm cache clean --force

然后:

npm install -g npm@latest --force

然后(再一次):

npm cache clean --force

终于能够 运行 这个(安装 Angular 项目)没有我看到的关于 EPERM:

的错误
ng new myProject

对我来说,这是 .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

如果您在 IDE 的 terminal/commands 提示中遇到此错误,请尝试删除 node_modules、关闭 IDE 和 运行 npm install 再次命令。 IDE 开始但仍未完成其对 node_modules 树的分析的时间是一个棘手的时刻,此时软件包安装可能会失败,因为 IDE 仍在扫描 node_modules 内容。

重新启动 VsCode 帮我解决了!

Windows10,

运行 IDE(在我的例子中是 IntelliJ)在管理员模式下执行 npm install 确实解决了问题。

如果没有 IDE 则 运行 在管理员模式下运行 CMD 并尝试执行 npm install

如果使用公司局域网,请断开连接尝试使用其他互联网网络。

对于那些试图更新配置的人

如果在更新您的 npm 配置时遇到问题,请尝试 运行 使用 -g 标志 。在尝试了所有其他方法后,这为我解决了 Win 10 上的问题。

npm config edit -g

我可以更新配置,并且所有更改都会反映出来。这可能是由于组织范围内的 运行 npm。

我是 运行 create-react-app 服务器。简单地停止服务器,一切正常。

npm install cross-env

试试这个对我有用。

在尝试了所有方法之后,仍然没有任何效果。 将我的工作项目文件夹移动到不同的目的地对我有用。

此错误是由不同的问题引起的,请尝试以下其中一项对您有用!

  • 尝试运行npm作为管理员

  • 运行 cmd as administrator npm config edit (你会得到记事本编辑器) 将 Prefix 变量更改为 C:\Users\<User Name>\AppData\Roaming\npm

  • 在我禁用我的防病毒软件 (Avast) 后出现错误

  • 有时像下面这样简单的清除缓存就可以解决这个问题。

     npm cache clear
    

当您遇到此问题时,很可能是您的 PC 上存在权限问题。转到 PC 属性并授予您在 PC 上使用的任何帐户 完全控制 将解决它。

同样,命令 /usr/local 在 windows

上不起作用

如果清理缓存(npm cache clean --force)对您没有帮助,只需删除 手动文件夹 C:\Users\%USER_NAME%\AppData\Roaming\npm-cacheand 并重新安装 NodeJS

解决这个问题的更简单方法是输入以下命令

npm config set cache C:\tmp\nodejs\npm-cache --global

至少我是这样解决我的问题的:

  1. 搜索cmd
  2. 然后 运行 作为管理员
  3. 然后npm i -g expo-clinpm config set prefix /usr/local

我刚刚解决了我的问题。

首先尝试全局安装它,使用命令 {npm install -g create-react-app}

然后,您可以使用以下命令创建您的应用程序, {npx create-react-app}

对我有用

安装 create-react-app

我没有安装 create-react 应用程序。所以我 运行 npm install -g create-react-app 问题就解决了

令人难以置信的是,这种情况发生在您构建项目时,例如

ng build myprojet

...然后您在 dist/myprojet 中站起来,也许是在使用控制台的情况下。因此,您可以轻松地关闭该控制台 window 或 cd .. 以防止这种情况发生。

我会使用 npm-windows-upgrade

更新我的 npm

只需 stop 反应服务器然后安装包。

出现此问题是因为当 React 为 运行(使用 yarn startnpm start)时,它正在使用一些资源。

我遇到的问题(在Windows计算机中)

当我尝试安装几个 npm 包时,出现以下错误:

npm - EPERM:不允许操作 - 而 npm 正在尝试重命名文件

如果您遇到过类似问题,请参考我的调试代码片段:

仔细查看其他用户的答案后,我为社区创建了一个详细的答案

我的问题解决方案

按照上述步骤操作

  1. 右键单击项目文件夹
  2. 转到properties -> Security Tab
  3. Select Users -> Edit
  4. Permission for Users 部分,Full control -> Give a check mark in Allow -> OK
  5. 等待 Windows 安全应用新的安全规则
  6. 点击OK

步骤可视化

如果您按照这些步骤尝试再次安装 npm 包,它将正常工作。

注意:最佳做法是关闭并再次打开命令行以体验变化

在我的例子中,它与 webpack 用于构建文件的目录有关。不知何故,目录无法删除,即使我尝试通过 windows 资源管理器手动删除。因此,您可以通过 CMD 强制删除,或者,就像听起来 st运行ge 一样,我关闭了我用来加载 webpack 编译文件的网络浏览器,并设法删除了目录。之后,我再次 运行 webpack 并工作。也许那是导致目录删除块的原因。

我也遇到了这个问题。尝试将 Node 更新到最新版本,然后重试该操作。可能对你有帮助。

对我来说,问题来自 bash 终端。我把终端换成了powershell就ok了

真的很容易解决