Node-red-start无法启动,陷入更新获取循环问题求助
解决Node-RED启动时陷入更新循环的问题
我之前帮朋友排查过一模一样的问题,你这种情况大概率是安装缓存残留、权限冲突或者Node.js版本不兼容导致的,试试下面这几个步骤:
1. 先清理Node-RED的旧缓存和配置
首先得把可能出问题的旧文件清掉,先停掉Node-RED服务(如果它在后台跑着):
node-red-stop
然后删除用户目录下的Node-RED配置文件夹——注意:这个操作会清空你之前的流程和自定义节点,要是有重要配置,先把~/.node-red文件夹备份到别的地方!
rm -rf ~/.node-red
2. 修复npm的权限问题
很多时候这类循环都是npm权限不对,导致没法正常装依赖,先把权限重置一下:
sudo chown -R $USER:$GROUP ~/.npm sudo chown -R $USER:$GROUP ~/.node-gyp
3. 重新跑一遍官方安装脚本
清理完之后,重新执行Node-RED的官方更新脚本,这次确保网络稳定,别中途断了:
bash <(curl -sL https://raw.githubusercontent.com/node-red/raspbian-deb-package/master/resources/update-nodejs-and-nodered)
4. 检查Node.js版本是否适配
Node-RED对Node.js版本有要求,现在推荐用16.x或18.x版本,你可以先看看当前版本:
node -v npm -v
如果版本不对,比如是太老的14.x或者太新的20.x,可以在执行脚本时指定版本,比如装18.x:
bash <(curl -sL https://raw.githubusercontent.com/node-red/raspbian-deb-package/master/resources/update-nodejs-and-nodered) --node18
5. 看详细日志找具体问题
要是前面的步骤都没用,那就手动启动Node-RED并看详细日志,这样能找到具体哪里出错了:
node-red --verbose
日志里会显示比如某个依赖下不动、权限不够这类具体错误,照着解决就行。
内容的提问来源于stack exchange,提问作者Ahmad Salman Khan
相关产品推荐
相关产品推荐

