AWS EC2 t2.micro实例Node-RED安装卡在bcrypt的gyp环节求助
解决AWS EC2 t2.micro上Node-RED安装时的bcrypt权限循环问题
我之前在AWS EC2 t2.micro实例上安装Node-RED时,也碰到过这个一模一样的权限死循环问题——安装到bcrypt编译环节就一直弹出gyp WARN EACCES报错,卡在那儿完全动不了。本质上这是npm全局安装时的权限配置冲突,就算用root用户也没法正常访问临时编译目录导致的。下面分享两个亲测有效的解决方法:
方案1:修复npm全局安装权限(推荐长期使用)
直接用sudo全局装包很容易触发权限问题,最好把npm的全局安装目录转到自己的用户目录下:
- 创建专属的npm全局目录:
mkdir ~/.npm-global - 配置npm默认使用这个目录:
npm config set prefix '~/.npm-global' - 更新bash环境变量,让系统能识别全局命令:
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.profile - 重新加载配置生效:
source ~/.profile - 现在不用sudo,直接安装Node-RED即可:
npm install -g node-red
方案2:临时跳过权限检查(应急快速解决)
如果不想调整npm的全局配置,也可以在安装时加上--unsafe-perm参数,强制root用户拥有临时编译目录的访问权限:
sudo npm install -g node-red --unsafe-perm
额外提示
你当前用的是Node.js 8.x版本,虽然能兼容Node-RED,但这个版本已经停止维护了。如果你的应用没有版本依赖限制,建议升级到更稳定的14.x或16.x版本,新版本的npm权限管理逻辑更完善,能减少这类问题的发生。
内容的提问来源于stack exchange,提问作者cogitoergosum
相关产品推荐
相关产品推荐

