You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

安装node-sass时出现权限错误,请求协助解决(附完整日志)

解决node-sass@4.8.3安装时EACCES权限拒绝问题

我之前也踩过一模一样的坑!用sudo装node-sass反而会把项目目录的权限搞成root所有,后续普通用户操作直接触发权限拒绝错误。给你理清楚问题和靠谱的解决办法:

问题场景

执行以下命令安装node-sass@4.8.3时:

sudo npm install node-sass --save-dev

触发了EACCES权限错误,核心日志如下:

node-sass@4.8.3 install /home/r2d2/Desktop/Practice/Insta/node_modules/node-sass
> node scripts/install.js

Unable to save binary /home/r2d2/Desktop/Practice/Insta/node_modules/node-sass/vendor/linux-x64-57 : {
Error: EACCES: permission denied, mkdir '/home/r2d2/Desktop/Practice/Insta/node_modules/node-sass/vendor'
at Object.fs.mkdirSync (fs.js:885:18)
at sync (/home/r2...

本质原因是sudo让npm以root身份运行,导致node_modules目录下的文件/子目录权限归root,后续普通用户身份的脚本无法创建新目录。

解决方案

1. 修复目录权限(最推荐,根治问题)

先把项目的node_modules目录和npm缓存目录的权限改回当前用户,从根源解决权限混乱:

# 修复npm缓存目录权限
sudo chown -R $USER:$GROUP ~/.npm
# 修复项目node_modules目录权限
sudo chown -R $USER:$GROUP /home/r2d2/Desktop/Practice/Insta/node_modules

执行完这两个命令后,不要再用sudo,直接重新安装:

npm install node-sass@4.8.3 --save-dev

2. 临时应急:带权限参数安装(不推荐长期用)

如果临时不想调整权限,可以在安装时加参数强制允许root权限运行脚本:

npm install node-sass@4.8.3 --save-dev --unsafe-perm=true --allow-root

不过这只是临时 workaround,后续其他依赖安装可能还会碰到权限问题,优先用第一种方法更稳妥。

3. 清理缓存后重试

如果上面两种方法都没效果,先清理npm缓存再重新安装:

npm cache clean --force
npm install node-sass@4.8.3 --save-dev

内容的提问来源于stack exchange,提问作者Aditya Raj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:23:57