macOs在vscode编辑器的cmd中,比如npm i 总是提示权限不够需要sudo

mac Os Apple M2 Pro在vscode 编辑器的cmd中比如npm i 总是提示权限不够,总要sudo npm i :
报错如下:

css 复制代码
npm warn peer webpack@"^2.0.0 || ^3.0.0 || ^4.0.0" from the root project
npm error code EACCES
npm error syscall open
npm error path /Users/userName/.npm/_cacache/tmp/8b24cea9
npm error errno EACCES
npm error
npm error Your cache folder contains root-owned files, due to a bug in
npm error previous versions of npm which has since been addressed.
npm error
npm error To permanently fix this problem, please run:
npm error   sudo chown -R 501:20 "/Users/userName/.npm"

这个问题是因为在使用 npm 时,某些文件夹(如 .npm 缓存目录)被误设置为 root 权限,导致你在没有 sudo 权限的情况下无法正常安装依赖。

解决方法如下:
1. 修复 .npm 文件夹的权限: 按照提示,你可以通过 chown 命令将 .npm 文件夹的所有者修改为当前用户。打开终端,执行以下命令:

css 复制代码
sudo chown -R $(whoami) ~/.npm

这个命令会把 .npm 文件夹及其内容的所有者修改为你当前的用户名。

2. 清理缓存(可选): 如果你怀疑缓存已经被破坏,也可以清理 npm 缓存。执行以下命令来清理缓存:

css 复制代码
npm cache clean --force

3. 重新安装依赖: 现在,你可以尝试再次运行 npm install,不需要使用 sudo,看是否能够成功安装依赖。

避免以后需要 sudo: 如果你之前因为使用了 sudo npm 而不小心导致文件权限问题,最好以后尽量避免使用 sudo npm 安装依赖,除非特别需要管理员权限。npm 推荐的做法是使用用户权限来管理依赖和包缓存。

相关推荐
雪域迷影2 小时前
MacOS中运行Next.js项目注册新用户时MongoDB报错MongoServerError
mongodb·macos·react·next.js
weixin_660096784 小时前
如何关闭vscode中的copilot生成结束后的消息提醒
ide·vscode·copilot
西京刀客5 小时前
macOS 打出来的 tar 包,Linux 常见告警(tar 包里带了 macOS 的扩展属性(xattr))
linux·运维·macos
码农垦荒笔记5 小时前
OpenClaw 实战 #02-1:新手一把过(原Clawdbot )保姆级安装教程-Mac版
人工智能·macos·openclaw
咕噜咕噜啦啦6 小时前
ROS入门
linux·vscode·python
denggun123456 小时前
Material 和 Cupertino
macos·objective-c·cocoa
切糕师学AI7 小时前
VSCode 下如何检查 Vue 项目中未使用的依赖?
vue.js·vscode
青椒*^_^*凤爪爪7 小时前
Vscode下调试STM32N6系列单片机的方法
vscode·单片机·stm32n6·stm32n647
周杰伦_Jay8 小时前
【Mac 上命令行安装 Claude Code】(Claude 的终端版 AI 编程助手)完整指南
人工智能·macos·claude code
广拓科技8 小时前
微信历史版本含下载地址( Windows PC | 安卓 | MAC )及设置微信不更新
macos·微信