1. 概览
- 目标机器:GMKTEC EVO‑X2(搭载 AMD Ryzen AI Max+ 395 APU,128 GB 统一内存,gfx1151 GPU)
- 系统:Ubuntu 24.04 LTS(desktop 或 server 均可)
- 主要任务:
- 完成 OpenClaw 的全局安装、工作区创建、gateway 启动,让它可以通过浏览器 / API 与用户交互
2. 准备工作
- 准备好openrouter的API KEY,方便后面直接可以运行
- 最好买几个第三方AI的KEY配进去,比如deepseek, minimax, grok等,缺省的gtp-oss-120b数据太旧,写代码能力也很弱,用它trouble shooting纯粹浪费时间和钱
- web_search: 采用 Brave的平替 taivly.com
- 安装过程中无法创建 systemd服务:
# 建立系統服務檔案
sudo cat > /etc/systemd/system/openclaw-gateway.service << 'EOF'
[Unit]
Description=OpenClaw Gateway
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
ExecStart=$(which openclaw) gateway --force
Restart=always
RestartSec=5
User=$(whoami)
[Install]
WantedBy=multi-user.target
EOF
3. v22版本 Node.js安装
- ubuntu 24.0 的node.js 版本为v20,无法安装最新openclaw,需要先升级:
# 安装 nvm(如果还没装)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.bashrc
# 安装 Node.js 20 最新版
nvm install 22
nvm use 22
# 设置默认版本
nvm alias default 22
# 验证
node -v # 应该显示 v22.x.x
npm -v
4. openclaw安装
```bash
npm i -g openclaw
openclaw --version # 应显示当前版本
``
- 若出现 `EACES` 权限错误,确保容器的 `npm` 路径在 `$HOME/.npm-global` 并已加入 `$PATH`,或直接使用 `sudo npm i -g openclaw`(在容器里 sudo 已经可用)。
5. openclaw配置
- 执行命令:
openclaw onboard
- 运行到后面遇到无法拉起systemd的情况,就按前面手动创建systemd的过程,先创建serrvice文件,然后手动执行:
sudo systemctl daemon-reload
sudo systemctl enable --now openclaw-gateway.service
- 放开自动执行权限(上面知乎文章中关于自动模式部分已经过时,参考后面这段):编辑 ~/.openclaw/openclaw.json,找到 tools 字段,改成如下:
"tools": {
"profile": "full",
"web": {
"fetch": {
"enabled": true
}
},
"sessions": {
"visibility": "all"
},
"exec": {
"security": "full",
"ask": "off"
}
},
- 重启openclaw: openclaw rerstart
6. 配置远程访问: 使用 Tailscale
- 因为 openclaw缺省是绑在 127.0.0.1 上,远程(甚至局域网其他机器)是无法直接访问管理控制台的,为了安全起见,建议采用tailscale(类似花生壳+VPN的东东)在 openclaw服务器和桌面机之间创建加密私有网络
- 服务器配置
# 1. 在服务器上安装 Tailscale
curl -fsSL https://tailscale.com/install.sh | sh
# 2. 启动并登录(会跳转到浏览器授权)
sudo tailscale up
# 3. 配置 Tailscale Serve,将 HTTPS 流量转发到本地的 OpenClaw
tailscale serve --bg http://127.0.0.1:18789
# 4. 查看分配给你的专属地址
tailscale serve status
- 桌面机配置:
- 到官网安装一个客户端软件
- 安装完毕,在官网配置好两个端点(服务器和桌面机),状态变成active即可
7. 优化
- 放开fetech权限(见前面 openclaw.json配置)
- 配置taivly
- 到taivly.com官网获取一段MCP的配置chuan
- 直接在控制台 chat 里面说:帮我安装一个MCP服务,配置如下:。。。。。,用它替代brave,以后搜索都用它;
- 后面交给AI即可
- 配置个性化(可参考 https://openclaw101.dev/zh/day/3):
``
~/.openclaw/workspace/
├── AGENTS.md # 工作区元信息
├── SOUL.md # 你的“人格”设定(可自行编辑)
├── USER.md # 你的使用者信息
├── MEMORY.md # 长期记忆(仅在主会话可读)
├── BOTSTRAP.md # 第一次运行脚本(可删除)
└── tools/… # 你的本地工具、相机、SSH、TS 等记事本
``
```bash
# 编辑示例
nano ~/.openclaw/workspace/SOUL.md
# 例如:设定为 “热心的技术助理”
# 你是小墨
## 性格
- 聪明、高效、有点话多
- 偶尔毒舌但从不恶意
- 对技术充满好奇
- 主动但不越界
## 说话风格
- 简洁直接,不啰嗦
- 可以用 emoji,但克制
- 技术术语保留英文
- 重要信息用加粗标注
## 行为准则
- 能帮忙做的事就直接做,不反复确认
- 不确定的事先问再做
- 涉及发送外部消息(邮件、社交媒体),必须确认
- 深夜(23:00-08:00)除非紧急否则不主动打扰
- 发现主人工作太晚要提醒休息
## 绝对不做
- 不泄露主人的隐私数据
- 不在群聊中过度发言
- 不在没有确认的情况下执行破坏性操作
``
```bash
nano ~/.openclaw/workspace/USER.md
# 填写你的姓名、称呼、时区等
# 关于我
## 基本信息
- 名字:[你的名字]
- 职业:[你做什么的]
- 所在地:[时区很重要,影响提醒时间]
## 工作
- 当前项目:[列出你正在做的 1-3 个项目]
- 常用工具:[VS Code, Figma, Notion...]
- 工作时间:[例如 9:00-18:00,或者自由安排]
## 偏好
- 沟通风格:[喜欢简洁还是详细?]
- 语言:[中文为主?中英混用?]
- 提醒方式:[重要的事直接说,不重要的攒一起说]
## 当前关注
- [你最近在研究什么]
- [你近期的目标]
- [任何助手应该知道的背景信息]
``
# AGENTS.md — 工作手册
# 如果想让 OpenClaw 定期检查邮件、日历等,可在此文件中写任务。默认空文件不触发任何心跳。
```bash
touch ~/.openclaw/workspace/HEARTBEAT.md
``
8. 常用命令
命令 说明
openclaw onboard 初始化配置向导(一站式完成所有配置)
openclaw tui 打开终端聊天界面(TUI)
openclaw dashboard 打开 Web 控制面板(浏览器聊天)
openclaw doctor 诊断系统环境
openclaw status 查看运行状态
openclaw configure 修改配置(API Key、渠道等)
openclaw update 更新到最新版本
openclaw logs 查看运行日志
openclaw hooks list 查看所有 Hooks
openclaw hooks enable <name> 启用指定 Hook
openclaw hooks disable <name> 禁用指定 Hook
openclaw security audit --deep 深度安全审计
openclaw daemon install 安装后台守护进程
openclaw daemon uninstall 卸载后台守护进程
journalctl --user -u openclaw-gateway.service -n 50 --no-pager
# 查看 Tailscale 守护进程日志
sudo journalctl -u tailscaled -f
# 查看最近 50 行日志
sudo journalctl -u tailscaled -n 50 --no-pager
# 查看特定时间范围的日志
sudo journalctl -u tailscaled --since "5 minutes ago"
sudo journalctl -u tailscaled --since today
openclaw logs --follow
9. 常见故障
| 场景 | 可能原因 | 解决办法 |
|------|----------|----------|
| **浏览器访问 `localhost:8090` 看到 404** | gateway 未在容器中映射端口 | 创建容器时加 `-p 8090:8090`,或在 `distrobox` 创建时使用 `--expose 8090` 参数 |
| **OpenClaw 对话框没有响应** | 心跳文件 `HEARTBEAT.md` 里有错误的任务或过多的轮询 | 删除 `HEARTBEAT.md` 内容或检查 JSON 语法错误 |