npm install 报错(npm ERR! errno -4048,Error: EPERM: operation not permitted,)解决方法

本文链接:https://blog.csdn.net/qq_35624642/article/details/78393035

这个问题已经遇到过很多次,也试了很多方法。
这里写图片描述

npm ERR! path E:\SouthernPowerGridProject\web_project\AutoOPS\autoops\node_modules\fsevents\node_modules\dashdash\node_modules
npm ERR! code EPERM
npm ERR! errno -4048
npm ERR! syscall scandir
npm ERR! Error: EPERM: operation not permitted, scandir 'E:\SouthernPowerGridProject\web_project\AutoOPS\autoops\node_modules\fsevents\node_modules\dashdash\node_modules'
npm ERR!  { Error: EPERM: operation not permitted, scandir 'E:\SouthernPowerGridProject\web_project\AutoOPS\autoops\node_modules\fsevents\node_modules\dashdash\node_modules'
npm ERR!   stack: 'Error: EPERM: operation not permitted, scandir \'E:\\SouthernPowerGridProject\\web_project\\AutoOPS\\autoops\\node_modules\\fsevents\\node_modules\\dashdash\\node_modules\'',
npm ERR!   errno: -4048,
npm ERR!   code: 'EPERM',
npm ERR!   syscall: 'scandir',
npm ERR!   path: 'E:\\SouthernPowerGridProject\\web_project\\AutoOPS\\autoops\\node_modules\\fsevents\\node_modules\\dashdash\\node_modules' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.


npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\ThinkT420\AppData\Roaming\npm-cache\_logs\2017-10-30T06_50_38_610Z-debug.log

初步解决办法:

重点是:operation not permitted  想到应该是windows系统下的权限错误。

解决方法:   使用win+x,选择命令提示符(管理员),在里面运行命令就好了。

 

 

之前有时报这个,以为还真是权限不够,感觉有点奇怪,用管理员权限执行,有时还真有用,不过后面查了下,时缓存的问题,清理下缓存就行,不用管理员权限。

 

方法1、

需要删除npmrc文件。

强调:不是nodejs安装目录npm模块下的那个npmrc文件

而是在C:\Users\{账户}\下的.npmrc文件..

 

方法2、

或者直接用命令清理就行,控制台输入:

npm cache clean --force



added 114 packages in 42.369s
E:\SouthernPowerGridProject\web_project\AutoOPS\autoops>npm cache clean --force
npm WARN using --force I sure hope you know what you are doing.


E:\SouthernPowerGridProject\web_project\AutoOPS\autoops>npm install
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.2 (node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})


added 114 packages in 42.369s

成功了

 

  • Ran reactive-native init in command prompt as Administrator (on Windows OS), hoping works well with sudo reactive-native init on Mac OS
  • Ran npm cache clean command in Command prompt.
  • Disable your antivirus for time being.

 

npm ERR! path E:\SouthernPowerGridProject\web_project\AutoOPS\autoops\node_modules\fsevents\node_modules\dashdash\node_modules
npm ERR! code EPERM
npm ERR! errno -4048
npm ERR! syscall scandir
npm ERR! Error: EPERM: operation not permitted, scandir 'E:\SouthernPowerGridProject\web_project\AutoOPS\autoops\node_modules\fsevents\node_modules\dashdash\node_modules'
npm ERR!  { Error: EPERM: operation not permitted, scandir 'E:\SouthernPowerGridProject\web_project\AutoOPS\autoops\node_modules\fsevents\node_modules\dashdash\node_modules'
npm ERR!   stack: 'Error: EPERM: operation not permitted, scandir \'E:\\SouthernPowerGridProject\\web_project\\AutoOPS\\autoops\\node_modules\\fsevents\\node_modules\\dashdash\\node_modules\'',
npm ERR!   errno: -4048,
npm ERR!   code: 'EPERM',
npm ERR!   syscall: 'scandir',
npm ERR!   path: 'E:\\SouthernPowerGridProject\\web_project\\AutoOPS\\autoops\\node_modules\\fsevents\\node_modules\\dashdash\\node_modules' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.


npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\ThinkT420\AppData\Roaming\npm-cache\_logs\2017-10-30T06_50_38_610Z-debug.log


E:\SouthernPowerGridProject\web_project\AutoOPS\autoops>npm cache clean --force
npm WARN using --force I sure hope you know what you are doing.


E:\SouthernPowerGridProject\web_project\AutoOPS\autoops>npm install
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.2 (node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})


added 114 packages in 42.369s

<think>好的,用户遇到了npmEPERM错误,特别是在创建_cacache目录时。这个问题通常和权限有关,我需要结合提供的引用资料来整理解决方案。 首先,根据引用[1]和[3],清理缓存是一个常见的解决方法。用户可能缓存中有问题,所以使用npm cache clean --force命令可能有效。同时,引用[3]提到删除用户目录下的.npmrc文件,这个文件可能有错误配置,导致权限问题。此外,引用[4]和[5]都提到了修改nodejs安装目录的权限,赋予完全控制权,这样npm就能顺利创建所需目录了。 还要考虑用户是否以管理员身份运行命令行,尤其是在Windows系统下,有时候需要右键以管理员权限运行终端。另外,安装路径如果包含空格或特殊字符,比如Program Files,可能会有问题,引用[4]提到安装路径在D:\Program Files,可能需要更改到无空格的路径,或者正确设置权限。 另外,检查是否有防病毒软件或安全软件阻止了npm的操作,暂时禁用它们可能有助于排查问题。如果用户之前安装过旧版本的node.js,残留文件也可能导致冲突,彻底卸载并重新安装最新版本可能有效。 总结下来,步骤应该是:清理缓存,删除配置文件,调整目录权限,以管理员运行,检查安装路径,处理安全软件,最后重装node.js。需要将这些步骤按顺序排列,确保用户逐步操作时能解决EPERM错误。</think>### 解决npm EPERM错误(无法创建_cacache目录)的步骤 当遇到`EPERM: operation not permitted, mkdir ... _cacache`错误时,通常是由于权限不足或文件锁定导致。以下是逐步解决方法--- #### 1. **清理npm缓存** 缓存文件可能被系统锁定或损坏,优先清理缓存: ```bash npm cache clean --force ``` 此命令强制清除缓存目录,修复因缓存冲突引发的问题[^3]。 --- #### 2. **删除.npmrc配置文件** 用户目录下的`.npmrc`文件可能包含错误配置: - 打开文件资源管理器,进入`C:\Users\你的用户名\` - 启用“显示隐藏的项目”(查看 → 隐藏的项目) - 找到并删除`.npmrc`文件[^5]。 --- #### 3. **修改Node.js安装目录权限** 为Node.js目录赋予完全控制权限: 1. 右键点击Node.js安装目录(如`D:\Program Files\nodejs`) 2. 选择“属性” → “安全” → “编辑” 3. 为当前用户或“Users”组勾选“完全控制” 4. 应用设置并等待权限递归完成[^4]。 --- #### 4. **以管理员身份运行命令行** 在Windows系统中,右键点击终端(如CMD/PowerShell)选择**以管理员身份运行**,再执行npm命令。 --- #### 5. **检查全局安装路径** 若全局包路径包含空格(如`Program Files`),建议: - 重新安装Node.js到无空格路径(如`D:\nodejs`) - 或通过以下命令修改全局路径: ```bash npm config set prefix "D:\nodejs\node_global" npm config set cache "D:\nodejs\node_cache" ``` --- #### 6. **关闭安全软件** 部分防病毒软件可能误判npm操作为威胁,暂时禁用后重试。 --- #### 7. **重装Node.js(终极方案)** 若上述方法无效,彻底卸载Node.js并重新安装最新版本: 1. 通过控制面板卸载Node.js 2. 手动删除残留的`node_modules`和`.npm`目录 3. 从官网下载安装包并选择简单路径(如`D:\nodejs`) --- ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值