openclaw/docs/zh-CN/platforms/raspberry-pi.md

417 lines
11 KiB
Markdown
Raw Normal View History

2026-02-01 22:47:44 +01:00
---
read_when:
- 在 Raspberry Pi 上设置 OpenClaw
- 在 ARM 设备上运行 OpenClaw
- 构建一个低成本、始终在线的个人 AI
summary: 在 Raspberry Pi 上运行 OpenClaw低预算自托管方案
2026-02-01 22:47:44 +01:00
title: Raspberry Pi
x-i18n:
generated_at: "2026-03-16T06:24:58Z"
model: gpt-5.4
provider: openai
source_hash: 3106dea63b5a548622b82e3090e7fdb7f748b96bf0e23893496f1b60c095334a
2026-02-01 22:47:44 +01:00
source_path: platforms/raspberry-pi.md
workflow: 15
---
# 在 Raspberry Pi 上运行 OpenClaw
## 目标
在 Raspberry Pi 上以 **约 3580 美元**的一次性成本(无月费)运行一个持久化、始终在线的 OpenClaw Gateway 网关。
2026-02-01 22:47:44 +01:00
非常适合:
2026-02-01 22:47:44 +01:00
- 7×24 个人 AI 助手
- 家庭自动化中枢
- 低功耗、始终可用的 Telegram/WhatsApp bot
2026-02-01 22:47:44 +01:00
## 硬件要求
| Pi 型号 | RAM | 可用? | 说明 |
| --------------- | ------- | ------- | -------------------------- |
| **Pi 5** | 4GB/8GB | ✅ 最佳 | 最快,推荐 |
| **Pi 4** | 4GB | ✅ 良好 | 适合大多数用户的最佳平衡点 |
| **Pi 4** | 2GB | ✅ 可以 | 可用,建议加 swap |
| **Pi 4** | 1GB | ⚠️ 紧张 | 配合 swap 和最小化配置可行 |
| **Pi 3B+** | 1GB | ⚠️ 较慢 | 可用,但反应迟缓 |
| **Pi Zero 2 W** | 512MB | ❌ | 不推荐 |
2026-02-01 22:47:44 +01:00
**最低规格:** 1 GB RAM、1 核、500 MB 磁盘
**推荐规格:** 2 GB 以上 RAM、64 位 OS、16 GB 以上 SD 卡(或 USB SSD
2026-02-01 22:47:44 +01:00
## 你需要准备的内容
2026-02-01 22:47:44 +01:00
- Raspberry Pi 4 或 5推荐 2 GB 以上)
- MicroSD 卡16 GB 以上)或 USB SSD性能更好
- 电源(推荐使用官方 Pi 电源)
- 网络连接(以太网或 WiFi
- 约 30 分钟
2026-02-01 22:47:44 +01:00
## 1刷写 OS
2026-02-01 22:47:44 +01:00
使用 **Raspberry Pi OS Lite64 位)** —— 对于无头服务器,不需要桌面环境。
2026-02-01 22:47:44 +01:00
1. 下载 [Raspberry Pi Imager](https://www.raspberrypi.com/software/)
2. 选择 OS**Raspberry Pi OS Lite64 位)**
3. 点击齿轮图标(⚙️)进行预配置:
2026-02-01 22:47:44 +01:00
- 设置主机名:`gateway-host`
- 启用 SSH
- 设置用户名/密码
- 配置 WiFi如果不使用以太网
4. 将系统写入你的 SD 卡 / USB 驱动器
2026-02-01 22:47:44 +01:00
5. 插入并启动 Pi
## 2通过 SSH 连接
2026-02-01 22:47:44 +01:00
```bash
ssh user@gateway-host
# 或使用 IP 地址
ssh user@192.168.x.x
```
## 3系统设置
2026-02-01 22:47:44 +01:00
```bash
# 更新系统
sudo apt update && sudo apt upgrade -y
# 安装基础软件包
2026-02-01 22:47:44 +01:00
sudo apt install -y git curl build-essential
# 设置时区(对 cron/提醒很重要)
sudo timedatectl set-timezone America/Chicago # 改成你的时区
2026-02-01 22:47:44 +01:00
```
## 4安装 Node.js 24ARM64
2026-02-01 22:47:44 +01:00
```bash
# 通过 NodeSource 安装 Node.js
curl -fsSL https://deb.nodesource.com/setup_24.x | sudo -E bash -
2026-02-01 22:47:44 +01:00
sudo apt install -y nodejs
# 验证
node --version # 应显示 v24.x.x
2026-02-01 22:47:44 +01:00
npm --version
```
## 5添加 swap对于 2 GB 或更低内存很重要)
2026-02-01 22:47:44 +01:00
swap 可以防止内存不足崩溃:
2026-02-01 22:47:44 +01:00
```bash
# 创建 2 GB swap 文件
2026-02-01 22:47:44 +01:00
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
# 永久生效
2026-02-01 22:47:44 +01:00
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
# 针对低内存优化(降低 swappiness
2026-02-01 22:47:44 +01:00
echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
```
## 6安装 OpenClaw
2026-02-01 22:47:44 +01:00
### 选项 A标准安装推荐
2026-02-01 22:47:44 +01:00
```bash
curl -fsSL https://openclaw.ai/install.sh | bash
```
### 选项 B可修改安装适合折腾
2026-02-01 22:47:44 +01:00
```bash
git clone https://github.com/openclaw/openclaw.git
cd openclaw
npm install
npm run build
npm link
```
可修改安装会让你直接访问日志和代码 —— 这对于调试 ARM 特定问题很有帮助。
2026-02-01 22:47:44 +01:00
## 7运行新手引导
2026-02-01 22:47:44 +01:00
```bash
openclaw onboard --install-daemon
```
按向导完成设置:
2026-02-01 22:47:44 +01:00
1. **Gateway 网关模式:** Local
2. **认证:** 推荐 API key在无头 Pi 上 OAuth 可能比较挑环境)
3. **渠道:** 最容易上手的是 Telegram
2026-02-01 22:47:44 +01:00
4. **守护进程:**systemd
## 8验证安装
2026-02-01 22:47:44 +01:00
```bash
# 检查状态
openclaw status
# 检查服务
sudo systemctl status openclaw
# 查看日志
journalctl -u openclaw -f
```
## 9访问 OpenClaw Dashboard
2026-02-01 22:47:44 +01:00
`user@gateway-host` 替换为你的 Pi 用户名,以及主机名或 IP 地址。
2026-02-01 22:47:44 +01:00
在你的电脑上,让 Pi 打印一个新的 Dashboard URL
2026-02-01 22:47:44 +01:00
```bash
ssh user@gateway-host 'openclaw dashboard --no-open'
2026-02-01 22:47:44 +01:00
```
该命令会打印 `Dashboard URL:`。根据 `gateway.auth.token`
的配置方式URL 可能是普通的 `http://127.0.0.1:18789/` 链接,也可能是包含 `#token=...` 的链接。
2026-02-01 22:47:44 +01:00
在你电脑上的另一个终端中,创建 SSH 隧道:
2026-02-01 22:47:44 +01:00
```bash
ssh -N -L 18789:127.0.0.1:18789 user@gateway-host
2026-02-01 22:47:44 +01:00
```
然后在本地浏览器中打开打印出的 Dashboard URL。
如果 UI 要求认证,请将 `gateway.auth.token`
(或 `OPENCLAW_GATEWAY_TOKEN`)中的 token 粘贴到 Control UI 设置中。
如需始终在线的远程访问,请参阅 [Tailscale](/gateway/tailscale)。
2026-02-01 22:47:44 +01:00
---
## 性能优化
### 使用 USB SSD显著提升
2026-02-01 22:47:44 +01:00
SD 卡速度慢且易磨损。USB SSD 会显著提升性能:
2026-02-01 22:47:44 +01:00
```bash
# 检查是否从 USB 启动
lsblk
```
设置方法请参阅 [Pi USB boot guide](https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#usb-mass-storage-boot)。
### 加快 CLI 启动速度(模块编译缓存)
在性能较弱的 Pi 主机上,启用 Node 的模块编译缓存可以加快重复 CLI 运行速度:
```bash
grep -q 'NODE_COMPILE_CACHE=/var/tmp/openclaw-compile-cache' ~/.bashrc || cat >> ~/.bashrc <<'EOF' # pragma: allowlist secret
export NODE_COMPILE_CACHE=/var/tmp/openclaw-compile-cache
mkdir -p /var/tmp/openclaw-compile-cache
export OPENCLAW_NO_RESPAWN=1
EOF
source ~/.bashrc
```
说明:
- `NODE_COMPILE_CACHE` 会加快后续运行(`status``health``--help`)。
- `/var/tmp``/tmp` 更能在重启后保留内容。
- `OPENCLAW_NO_RESPAWN=1` 可避免 CLI 自重启带来的额外启动开销。
- 第一次运行会预热缓存;之后的运行收益最大。
### systemd 启动调优(可选)
如果这台 Pi 主要运行 OpenClaw可以添加一个服务 drop-in以减少重启抖动并保持稳定的启动环境
```bash
sudo systemctl edit openclaw
```
```ini
[Service]
Environment=OPENCLAW_NO_RESPAWN=1
Environment=NODE_COMPILE_CACHE=/var/tmp/openclaw-compile-cache
Restart=always
RestartSec=2
TimeoutStartSec=90
```
然后应用:
```bash
sudo systemctl daemon-reload
sudo systemctl restart openclaw
```
如果可能,请将 OpenClaw 状态/缓存放在 SSD 支持的存储上,以避免冷启动期间 SD 卡随机 I/O 成为瓶颈。
关于 `Restart=` 策略如何帮助自动恢复:
[systemd can automate service recovery](https://www.redhat.com/en/blog/systemd-automate-recovery)。
2026-02-01 22:47:44 +01:00
### 减少内存占用
2026-02-01 22:47:44 +01:00
```bash
# 禁用 GPU 内存分配(无头)
2026-02-01 22:47:44 +01:00
echo 'gpu_mem=16' | sudo tee -a /boot/config.txt
# 如果不需要,禁用蓝牙
2026-02-01 22:47:44 +01:00
sudo systemctl disable bluetooth
```
### 监控资源
```bash
# 检查内存
free -h
# 检查 CPU 温度
vcgencmd measure_temp
# 实时监控
htop
```
---
## ARM 特定说明
### 二进制兼容性
OpenClaw 的大多数功能都可在 ARM64 上运行,但某些外部二进制文件可能需要 ARM 构建版本:
2026-02-01 22:47:44 +01:00
| 工具 | ARM64 状态 | 说明 |
2026-02-01 22:47:44 +01:00
| ------------------ | ---------- | ----------------------------------- |
| Node.js | ✅ | 运行良好 |
| WhatsApp (Baileys) | ✅ | 纯 JS无问题 |
| Telegram | ✅ | 纯 JS无问题 |
| gog (Gmail CLI) | ⚠️ | 请检查是否有 ARM 发布版本 |
2026-02-01 22:47:44 +01:00
| Chromium (browser) | ✅ | `sudo apt install chromium-browser` |
如果某个 skill 失败,请检查其二进制文件是否有 ARM 构建版本。许多 Go/Rust 工具都有;有些则没有。
2026-02-01 22:47:44 +01:00
### 32 位与 64 位
2026-02-01 22:47:44 +01:00
**务必使用 64 位 OS。** Node.js 和许多现代工具都要求如此。使用以下命令检查:
2026-02-01 22:47:44 +01:00
```bash
uname -m
# 应显示aarch6464 位),而不是 armv7l32 位)
2026-02-01 22:47:44 +01:00
```
---
## 推荐的模型设置
2026-02-01 22:47:44 +01:00
由于 Pi 只是 Gateway 网关(模型在云中运行),请使用基于 API 的模型:
2026-02-01 22:47:44 +01:00
```json
{
"agents": {
"defaults": {
"model": {
"primary": "anthropic/claude-sonnet-4-20250514",
"fallbacks": ["openai/gpt-4o-mini"]
}
}
}
}
```
**不要尝试在 Pi 上运行本地 LLM** —— 即使是小模型也太慢了。让 Claude/GPT 负责主要计算工作。
2026-02-01 22:47:44 +01:00
---
## 开机自动启动
2026-02-01 22:47:44 +01:00
设置向导会帮你配置这个,但你也可以这样验证:
2026-02-01 22:47:44 +01:00
```bash
# 检查服务是否已启用
sudo systemctl is-enabled openclaw
# 如果没有,则启用
2026-02-01 22:47:44 +01:00
sudo systemctl enable openclaw
# 开机启动
sudo systemctl start openclaw
```
---
## 故障排除
### 内存不足OOM
2026-02-01 22:47:44 +01:00
```bash
# 检查内存
free -h
# 添加更多 swap见第 5 步)
2026-02-01 22:47:44 +01:00
# 或减少 Pi 上运行的服务
```
### 性能缓慢
2026-02-01 22:47:44 +01:00
- 使用 USB SSD 替代 SD 卡
2026-02-01 22:47:44 +01:00
- 禁用未使用的服务:`sudo systemctl disable cups bluetooth avahi-daemon`
- 检查 CPU 限频:`vcgencmd get_throttled`(应返回 `0x0`
2026-02-01 22:47:44 +01:00
### 服务无法启动
```bash
# 检查日志
journalctl -u openclaw --no-pager -n 100
# 常见修复:重新构建
cd ~/openclaw # 如果使用的是可修改安装
2026-02-01 22:47:44 +01:00
npm run build
sudo systemctl restart openclaw
```
### ARM 二进制问题
如果某个 skill 因 “exec format error” 失败:
2026-02-01 22:47:44 +01:00
1. 检查该二进制文件是否有 ARM64 构建版本
2. 尝试从源码构建
2026-02-01 22:47:44 +01:00
3. 或使用支持 ARM 的 Docker 容器
### WiFi 掉线
2026-02-01 22:47:44 +01:00
对于通过 WiFi 运行的无头 Pi
2026-02-01 22:47:44 +01:00
```bash
# 禁用 WiFi 省电
2026-02-01 22:47:44 +01:00
sudo iwconfig wlan0 power off
# 永久生效
2026-02-01 22:47:44 +01:00
echo 'wireless-power off' | sudo tee -a /etc/network/interfaces
```
---
## 成本对比
| 方案 | 一次性成本 | 月成本 | 说明 |
| --------------- | ---------- | -------- | ------------------------ |
| **Pi 42GB** | ~$45 | $0 | + 电费(约 $5/年) |
| **Pi 44GB** | ~$55 | $0 | 推荐 |
| **Pi 54GB** | ~$60 | $0 | 最佳性能 |
| **Pi 58GB** | ~$80 | $0 | 有些超配,但更有未来余量 |
| DigitalOcean | $0 | $6/月 | $72/年 |
| Hetzner | $0 | €3.79/月 | 约 $50/年 |
2026-02-01 22:47:44 +01:00
**回本周期:** 与云 VPS 相比,一台 Pi 大约 612 个月即可回本。
2026-02-01 22:47:44 +01:00
---
## 另请参阅
- [Linux guide](/platforms/linux) — 通用 Linux 设置
- [DigitalOcean guide](/platforms/digitalocean) — 云端替代方案
- [Hetzner guide](/install/hetzner) — Docker 设置
2026-02-01 22:47:44 +01:00
- [Tailscale](/gateway/tailscale) — 远程访问
- [Nodes](/nodes) — 将你的笔记本电脑/手机与 Pi Gateway 网关配对