首次使用Sass安装node-sass时遭遇EPERM权限错误求助
解决npm安装node-sass时的EPERM权限错误
问题描述
首次使用Sass,在OneDrive同步的桌面目录新建文件夹并在VSCode中打开,执行npm init --yes成功生成package.json,但执行npm install node-sass时触发权限错误,无法创建npm缓存目录,错误信息翻译如下:
PS C:\Users\RUKİYE\OneDrive\Masaüstü\dene> npm install node-sass npm ERR! 代码 EPERM npm ERR! 系统调用 mkdir npm ERR! 路径 C:\Users\RUKİYE\AppData\Local\npm-cache npm ERR! 错误码 -4048 npm ERR! 错误: EPERM: 操作不被允许,创建目录 'C:\Users\RUKİYE\AppData\Local\npm-cache' npm ERR! [Error: EPERM: 操作不被允许,创建目录 'C:\Users\RUKİYE\AppData\Local\npm-cache'] { npm ERR! errno: -4048, npm ERR! code: 'EPERM', npm ERR! syscall: 'mkdir', npm ERR! path: 'C:\\Users\\RUKİYE\\AppData\\Local\\npm-cache' npm ERR! 或者你缺少访问该目录的权限。 npm ERR! npm ERR! 如果你认为这是权限问题,请仔细检查文件及其所在目录的权限,或者尝试以管理员身份重新运行命令。 npm ERR! 由于写入目录失败,日志文件未生成: C:\Users\RUKİYE\AppData\Local\npm-cache\_logs npm ERR! 你可以添加 `--loglevel=verbose` 参数重新运行命令,在终端查看详细日志
解决方案
以管理员身份执行安装
右键VSCode图标选择「以管理员身份运行」,打开项目后在终端重新执行npm install node-sass;或者直接打开管理员权限的PowerShell,切换到项目目录后执行安装命令。修复npm缓存目录权限
- 打开文件资源管理器,导航到
C:\Users\RUKİYE\AppData\Local - 若
npm-cache文件夹不存在,手动新建一个;若已存在,右键该文件夹→属性→安全→编辑 - 为当前用户「RUKİYE」添加「完全控制」权限,应用设置后重新执行安装命令
- 打开文件资源管理器,导航到
移出OneDrive同步目录
项目位于OneDrive同步的桌面目录,同步机制可能干扰文件权限。将项目文件夹移到非同步目录(比如C:\Users\RUKİYE\Documents\sass-demo),重新用VSCode打开后执行安装命令。替换为dart-sass(推荐)
node-sass已停止维护,官方推荐使用dart-sass(包名为sass),执行npm install sass即可,兼容性更好且权限问题更少。
内容的提问来源于stack exchange,提问作者Rukiye
相关产品推荐
相关产品推荐

