CentOS Stream 10 安装 OpenClaw 修正完整版文档
汇总前期部署过程中遇到的所有报错,明确原因及解决方案,避免后续再次踩坑:• 错误1:使用源码安装 → 普通用户无完整依赖,npm run build 必然失败,出现大量插件依赖缺失报错(如@buape/carbon缺失)• 错误2:未清理旧环境 → 新命令调用旧文件,出现“module not found”(如@buape/carbon缺失)、命令失效• 错误3:手动创建软链接 → 路径错误导致“
适配环境:CentOS Stream 10(64位)虚拟机
核心说明:本文档针对前期安装过程中遇到的所有错误进行修复,摒弃失效、错误方法,提供可直接落地、无报错的部署步骤,适合普通用户快速部署。结合当前虚拟机实际运行日志、报错信息(如127.0.0.1:18789 invalid link、命令失效等),补充关键修正,彻底解决部署踩坑问题。
一、前置说明(匹配当前虚拟机配置)
本文基于以下环境编写,与你的虚拟机配置完全匹配,可直接对照操作,避免二次踩坑:
-
• 虚拟机系统:CentOS Stream 10(64位)
-
• 机器配置:建议 2核4G 及以上(确保运行流畅,避免服务启动后内存不足)
-
• 网络配置:已设置为桥接模式(或NAT模式,后续将补充NAT模式访问方法),确保虚拟机能够正常访问外网(否则无法下载依赖、脚本及相关资源)
-
• 关键修正(解决前期报错核心,结合实际报错优化):
-
○ 普通用户严禁使用源码编译安装(前期失败的核心原因,依赖缺失导致build报错,且会出现@buape/carbon缺失等问题)
-
○ 安装前必须彻底清理旧环境,否则会出现命令冲突、软链接失效、模块缺失(如@buape/carbon缺失),且可能导致服务启动后端口监听异常(仅监听127.0.0.1,外部无法访问)
-
○ 官方二进制包链接已失效,请勿直接下载(前期出现404报错)
-
○ 官方一键脚本(https://openclaw.ai/install.sh)可正常使用,但需搭配国内镜像,避免下载超时;中文社区版脚本(https://clawd.org.cn/install.sh)字数超限,暂不推荐,优先使用npm全局指定版本安装(避免脚本报错)
-
○ 补充:服务启动后若出现“invalid link”(如访问127.0.0.1:18789报错),核心原因是服务仅监听127.0.0.1,需配置gateway.host为0.0.0.0,允许外部访问
-
二、前期准备(必做:先清空旧环境!)
前期安装失败后,系统残留大量旧环境、错误链接和无效配置,必须先彻底清理,否则新安装会持续报错(如命令失效、服务启动异常、端口监听错误等)。
2.1 彻底删除所有旧环境、残留、错误链接
复制以下命令,一次性执行,清空所有无效残留(无需修改任何内容,适配CentOS Stream 10的dnf包管理器):
# 杀掉相关进程(避免进程占用导致删除失败) pkill -f node 2>/dev/null pkill -f openclaw 2>/dev/null # 删除系统全局命令(清理无效的openclaw命令) rm -rf /usr/local/bin/openclaw /usr/bin/openclaw 2>/dev/null # 删除别名与脏配置(清理手动设置的alias,避免命令冲突) unalias openclaw 2>/dev/null sed -i '/openclaw/d' /etc/bashrc ~/.bashrc 2>/dev/null source /etc/bashrc 2>/dev/null # 删除旧源码、缓存、配置目录(清理前期下载的源码和无效缓存) rm -rf /root/openclaw* /root/.openclaw /tmp/openclaw* 2>/dev/null # 卸载全局旧包(清理npm全局安装的旧版本openclaw) npm uninstall -g openclaw 2>/dev/null npm cache clean --force 2>/dev/null
2.2 切换至 root 用户
所有部署操作需在root权限下执行,避免权限不足报错:
su - root
2.3 更新系统软件包
更新系统软件包,确保依赖兼容性,避免因系统版本过低导致安装失败:
dnf update -y
2.4 安装基础工具依赖
安装OpenClaw和Node.js所需的基础依赖,解决前期依赖缺失导致的编译、安装报错:
dnf groupinstall -y "Development Tools" dnf install -y curl wget git python3 libX11-devel libsecret-devel gtk3-devel
三、安装 Node.js 环境(核心依赖)
OpenClaw依赖Node.js运行,需安装指定版本(v22.x),避免版本不兼容导致报错。采用NodeSource官方仓库安装,确保版本稳定、无依赖冲突(参考https://rpm.nodesource.com/setup_22.x脚本逻辑)。
3.1 添加 NodeSource 官方仓库
curl -fsSL https://rpm.nodesource.com/setup_22.x | bash -
说明:该脚本会自动清理旧的NodeSource仓库,配置新的v22.x仓库,适配CentOS Stream 10的RPM包管理机制,支持x86_64、aarch64架构(当前虚拟机为64位,可直接执行)。
3.2 安装 Node.js 和 npm
dnf install -y nodejs
3.3 验证安装
执行以下命令,确认Node.js和npm安装成功,要求node版本≥v22.x.x:
node --version npm --version
正常输出示例:node v22.2.0、npm 10.7.0,无任何报错即说明安装成功。
四、安装 OpenClaw
摒弃前期失效、错误的安装方法,采用npm全局安装(搭配国内镜像),无编译、无依赖缺失,可直接成功;同时提供官方一键脚本备选方案(适配国内网络)。
4.1 全局安装(推荐,无报错、不编译、不缺模块)
# 方案1:官方一键脚本 curl -fsSL https://openclaw.ai/install.sh | bash # 方案2:备用安装(使用淘宝源加速,优先推荐,避免脚本异常) npm install -g openclaw@latest --registry https://registry.npmmirror.com
说明:中文社区版脚本(https://clawd.org.cn/install.sh)因字数超限,无法正常解析,暂不推荐使用;若方案1脚本执行报错,直接执行方案2即可。
4.2 验证安装
执行以下命令,验证OpenClaw安装成功,无报错:
openclaw --version
正常输出如下(无任何报错,说明安装成功):
🦞 OpenClaw 2026.xx.xx
五、废弃不用的错误方法(请勿再尝试)
以下方法全部会导致前期遇到的报错,直接跳过,避免二次踩坑:
-
• 源码编译安装 → 会报 @buape/carbon 缺失、build 失败、插件依赖错误(前期核心报错)
-
• 官方一键脚本(不搭配国内镜像) → 下载超时、版本有BUG,执行后报错
-
• 手动软链接/alias/npm link → 会出现悬空链接、命令异常、反应慢(前期命令失效原因)
-
• 直接下载二进制文件 → 404 不存在(前期下载失败原因)
-
• 中文社区版脚本(https://clawd.org.cn/install.sh) → 字数超限,无法正常解析执行
六、OpenClaw 初始化配置
安装成功后,执行以下命令进行初始化配置,按提示操作即可;若初始化向导报错,直接创建配置文件(一步到位,无需向导),解决前期配置报错问题。
6.1 常规初始化(可选)
openclaw onboard --install-daemon
配置步骤(按提示依次操作):
-
选择所需的AI模型(按自身需求选择,无需强制选择某一种)
-
填入AI模型的API Key(无API Key可暂时跳过,后续在配置中补充)
-
跳过不需要的聊天平台(如WhatsApp、Discord等,无需安装相关插件)
-
等待初始化完成,提示“初始化成功”即可。
6.2 一键创建配置文件(推荐,避免向导报错)
经过测试,新版openclaw初始化配置时,跳过可交互平台会报错,采用以下方法一步到位,直接创建配置文件(不用向导),同时解决“服务仅监听127.0.0.1”的问题:
mkdir -p ~/.config/openclaw
cat > ~/.config/openclaw/config.json << 'EOF'
{ "model": {
"provider": "openai",
"apiKey": "这里换成你的API_KEY",
"model": "这里换成你的模型类型",
"baseURL": "https://你的大模型网站"
},
"gateway": {
"port": 18789,
"host": "0.0.0.0",
"mode": "local",
"auth": {
"enabled": false
}
}
EOF
说明:配置中“host: 0.0.0.0”可解决前期“127.0.0.1:18789 invalid link”报错,允许外部设备访问;“auth.enabled: false”关闭网关认证,避免终端执行命令时要求输入Token。
七、CentOS 必做:SELinux 与防火墙配置
CentOS默认开启SELinux和防火墙,会拦截OpenClaw服务,导致无法正常运行、端口无法访问,必须配置关闭/开放端口。
# 临时关闭 SELinux(立即生效,重启后需重新执行) setenforce 0 # 永久关闭 SELinux(重启后仍生效,彻底解决拦截问题) sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config # 开放OpenClaw所需端口(避免服务无法访问) firewall-cmd --permanent --add-port=18789/tcp firewall-cmd --permanent --add-port=3000/tcp firewall-cmd --reload
八、验证运行状态与访问方法
配置完成后,执行以下命令,验证OpenClaw服务正常运行,无报错;同时提供两种访问方法(适配桥接/NAT模式),解决前期无法访问页面的问题。
8.1 验证服务运行
openclaw --version openclaw doctor openclaw gateway --allow-unconfigured
说明:执行openclaw gateway --allow-unconfigured,显示“active (running)”,且通过ss -tulnp | grep 18789能看到“0.0.0.0:18789”监听,即说明服务正常运行。
8.2 访问方法(两种可选,适配不同网络模式)
方法1:SSH隧道访问(推荐,适配所有网络模式,避免端口转发问题)
打开 Windows 的 CMD 或 PowerShell,执行以下命令(替换虚拟机IP为你的实际IP,如192.168.152.144):
ssh -L 18789:127.0.0.1:18789 root@192.168.152.144
解释:这条命令是把虚拟机的18789端口“映射”到你电脑的18789端口,加密隧道穿透,不受防火墙、网络模式影响;执行后,在电脑浏览器访问http://127.0.0.1:18789,即可打开OpenClaw页面,解决“invalid link”报错。
方法2:NAT模式端口转发访问(适配NAT模式,需配置VMware)
-
打开VMware → 编辑 → 虚拟网络编辑器 → 选中VMnet8(NAT模式)→ 点击“NAT设置”
-
点击“端口转发” → 添加规则:主机端口18789、虚拟机IP(如192.168.152.144)、虚拟机端口18789
-
保存配置后,在电脑浏览器访问
http://127.0.0.1:18789,即可打开页面。
九、常用操作命令
整理日常常用操作命令,方便后续管理OpenClaw服务,直接复制执行即可:
# 启动服务 systemctl --user start openclaw-gateway # 停止服务 systemctl --user stop openclaw-gateway # 重启服务 systemctl --user restart openclaw-gateway # 开机自启(避免重启虚拟机后服务失效) systemctl --user enable openclaw-gateway # 配置向导(后续修改模型、API Key等) openclaw configure # 查看已安装技能 openclaw skills list # 查看服务日志(排查报错) journalctl -u openclaw -f # 停止所有相关进程 pkill -f openclaw
十、前期遇到的所有错误及原因总结
汇总前期部署过程中遇到的所有报错,明确原因及解决方案,避免后续再次踩坑:
-
• 错误1:使用源码安装 → 普通用户无完整依赖,npm run build 必然失败,出现大量插件依赖缺失报错(如@buape/carbon缺失)
-
• 错误2:未清理旧环境 → 新命令调用旧文件,出现“module not found”(如@buape/carbon缺失)、命令失效
-
• 错误3:手动创建软链接 → 路径错误导致“悬空符号链接”,命令无法正常执行
-
• 错误4:官方二进制包 404 → 文档中提供的二进制包链接已失效,无法下载
-
• 错误5:@buape/carbon 缺失 → 该模块是源码版UI依赖,普通用户无法编译成功,仅存在于开发版,切换npm安装即可解决
-
• 错误6:命令反应慢 → 源码版每次执行命令都会触发重新编译,属于正常现象,切换npm安装即可解决
-
• 错误7:插件加载失败 → 源码版自带大量聊天平台插件(如Discord、WhatsApp),未安装对应依赖导致加载失败
-
• 错误8:127.0.0.1:18789 invalid link → 服务仅监听127.0.0.1,未配置gateway.host为0.0.0.0,需修改配置文件
-
• 错误9:终端执行命令要求输入Token → 网关认证未关闭,需在配置文件中设置auth.enabled: false
十一、部署原则(最重要)
牢记以下部署原则,避免后续出现报错,确保OpenClaw稳定运行:
-
普通用户永远只用 npm 全局安装,不用源码编译安装(源码版仅适合开发者)
-
重装或重新安装前,必须清空旧环境(按本文第二章步骤执行)
-
不要手动创建软链接、alias、npm link,避免命令冲突和悬空链接
-
CentOS系统必须关闭SELinux并开放对应端口,否则服务会被拦截
-
安装依赖和OpenClaw时,必须配置npm国内镜像(https://registry.npmmirror.com),避免下载超时、失败
-
服务启动后,若无法访问页面,优先检查端口监听状态(确保是0.0.0.0:18789)和SSH隧道配置
十二、绑定飞书
支持绑定飞书,输入
openclaw channels login --channel feishu
扫描二维码进行配置
之后输入
openclaw gateway --allow-unconfigured
就可完成与openclaw进行对话
更多推荐




所有评论(0)