终端命令输入报错npm error Error: EPERM: operation not permitted, mkdir 'D:\bs\nodejs\node_cache\_npx'
时间: 2025-03-16 21:01:30 浏览: 192
### 解决方案
当遇到 `npm ERR! { Error: EPERM: operation not permitted, mkdir 'D:\bs\nodejs\node_cache_npx'}` 错误时,通常是因为 Node.js 的安装目录缺少写入权限。以下是几种可能的解决方案:
#### 方法一:修改 Node.js 安装目录的权限设置
可以通过调整 Node.js 安装目录的权限来解决问题。具体操作如下:
1. 找到 Node.js 的安装路径(例如 `D:\bs\nodejs`)。
2. 右键点击该文件夹并选择“属性”。
3. 切换到“安全”选项卡,编辑当前用户的权限,确保拥有完全控制权[^3]。
#### 方法二:以管理员身份运行命令提示符
如果权限不足可能是由于未以管理员身份运行 CMD 或 PowerShell 导致,则可以尝试以下方式:
1. 使用 Windows 搜索功能打开“CMD”或“PowerShell”。
2. 右键单击程序图标,选择“以管理员身份运行”。
3. 再次执行原 npm 命令,观察是否仍然报错[^5]。
#### 方法三:更改全局模块存储路径
为了避免频繁修改系统权限,可以选择更改 npm 默认的全局模块存储路径至用户目录下的某个子文件夹。通过以下步骤实现:
1. 创建一个新的文件夹作为新的缓存目录,例如 `C:\Users\<YourUsername>\npm-global`。
2. 运行以下命令将全局包路径更改为新创建的文件夹:
```bash
npm config set prefix "C:\Users\<YourUsername>\npm-global"
```
3. 将此路径添加到系统的环境变量 PATH 中[^4]。
#### 方法四:重置 NPM 缓存
有时缓存损坏也可能引发此类问题,因此清除现有缓存是一个可行的选择:
```bash
npm cache clean --force
```
完成上述任一步骤后再试一次原来的 npm 命令即可验证效果。
---
### 示例代码
为了进一步确认配置无误,可测试简单的依赖项安装过程:
```javascript
// 测试脚本 test-npm-install.js
console.log('Attempting to install lodash...');
require('child_process').execSync('npm install lodash', { stdio: 'inherit' });
console.log('Lodash installed successfully.');
```
运行以上 JavaScript 文件前需先保存它,并通过 Node.js 来调用。
---
阅读全文
相关推荐

















