前言
树莓派是运行 OpenClaw 的经济实惠之选——功耗低、体积小、7x24 全天候运行毫无压力。本文将详细介绍如何在树莓派 4 或树莓派 5 上部署 OpenClaw,让你拥有一台专属的 AI 助手服务器。
硬件要求
| 型号 | 运行体验 | 说明 |
|---|---|---|
| 树莓派 5 (8GB) | 流畅 | 推荐型号,性能充足 |
| 树莓派 5 (4GB) | 良好 | 满足基本需求 |
| 树莓派 4 (8GB) | 良好 | 性价比之选 |
| 树莓派 4 (4GB) | 可用 | 建议关闭不必要的服务 |
| 树莓派 4 (2GB) | 勉强 | 不推荐,内存紧张 |
其他配件
- MicroSD 卡:至少 16GB,推荐 32GB Class 10 或更高
- 电源适配器:树莓派 5 需要 5V/5A USB-C,树莓派 4 需要 5V/3A USB-C
- 散热片或风扇(推荐,长时间运行时保持低温)
- 网线或 Wi-Fi 连接
第一步:准备操作系统
烧录系统镜像
推荐使用 Raspberry Pi OS Lite(64位),因为 OpenClaw 不需要图形界面。
-
插入 MicroSD 卡
-
选择操作系统:Raspberry Pi OS Lite (64-bit)
-
在高级设置中配置:
- 主机名(如
openclaw) - SSH 登录(启用并设置密码或密钥)
- Wi-Fi 信息(如果不使用网线)
- 时区和语言
- 主机名(如
-
点击"写入"完成烧录
首次启动和连接
将 MicroSD 卡插入树莓派,接通电源。等待约 1 分钟后通过 SSH 连接:
ssh [email protected]
# 或使用 IP 地址
ssh [email protected]
系统更新
sudo apt update && sudo apt upgrade -y
第二步:安装 Node.js 22 (ARM)
树莓派使用 ARM 架构处理器,需要安装 ARM 版本的 Node.js。
方式一:使用 NodeSource 仓库(推荐)
# 添加 NodeSource 仓库
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
# 安装 Node.js
sudo apt install -y nodejs
# 验证安装
node --version
npm --version
方式二:使用 nvm
# 安装 nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
source ~/.bashrc
# 安装 Node.js 22
nvm install 22
nvm alias default 22
# 验证
node --version
验证架构
确认 Node.js 在 ARM64 架构下正常运行:
node -e "console.log(process.arch)"
# 应输出: arm64
第三步:安装 OpenClaw
sudo npm install -g openclaw@latest
验证安装:
openclaw --version
第四步:初始化配置
openclaw onboard
在配置向导中完成模型和频道的设置。由于树莓派性能有限,有几点建议:
- 模型选择:推荐使用云端 API(Claude、OpenAI、Gemini),而非本地模型
- 频道数量:初始不要同时对接太多频道,根据实际负载逐步添加
- 日志级别:建议设为
warn以减少磁盘写入
配置文件位置:
~/.config/openclaw/openclaw.json5
第五步:启动和测试
openclaw up
运行诊断确认一切正常:
openclaw doctor
第六步:配置 systemd 自动启动
在树莓派上使用 systemd 管理 OpenClaw 服务是最佳实践。
创建 systemd 服务文件
sudo tee /etc/systemd/system/openclaw.service > /dev/null << 'EOF'
[Unit]
Description=OpenClaw AI Assistant Platform
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
User=pi
Group=pi
WorkingDirectory=/home/pi
ExecStart=/usr/bin/openclaw up
Restart=always
RestartSec=10
StandardOutput=journal
StandardError=journal
Environment=NODE_ENV=production
# 资源限制(可选)
MemoryMax=1G
CPUQuota=80%
[Install]
WantedBy=multi-user.target
EOF
如果使用 nvm 安装的 Node.js,需要将 ExecStart 中的路径修改为完整路径:
# 查找 openclaw 实际路径
which openclaw
# 例如: /home/pi/.nvm/versions/node/v22.x.x/bin/openclaw
启用并启动服务
# 重载 systemd 配置
sudo systemctl daemon-reload
# 启用开机自启
sudo systemctl enable openclaw
# 启动服务
sudo systemctl start openclaw
# 查看状态
sudo systemctl status openclaw
查看日志
# 实时查看日志
sudo journalctl -u openclaw -f
# 查看最近 100 行
sudo journalctl -u openclaw -n 100
性能优化
减少内存占用
编辑 /etc/systemd/system/openclaw.service,在 ExecStart 中添加 Node.js 内存参数:
ExecStart=/usr/bin/node --max-old-space-size=512 /usr/bin/openclaw up
使用 swap 扩展内存
如果内存不足,可以增加 swap 空间:
# 关闭默认 swap
sudo dphys-swapfile swapoff
# 修改 swap 大小为 1GB
sudo sed -i 's/CONF_SWAPSIZE=.*/CONF_SWAPSIZE=1024/' /etc/dphys-swapfile
# 重新初始化并启用
sudo dphys-swapfile setup
sudo dphys-swapfile swapon
# 验证
free -h
减少 SD 卡写入
频繁写入会缩短 SD 卡寿命,建议:
# 将临时文件目录挂载到内存
echo 'tmpfs /tmp tmpfs defaults,noatime,nosuid,nodev,size=100m 0 0' | sudo tee -a /etc/fstab
# 减少日志写入频率
sudo sed -i 's/#Storage=auto/Storage=volatile/' /etc/systemd/journald.conf
sudo sed -i 's/#RuntimeMaxUse=/RuntimeMaxUse=50M/' /etc/systemd/journald.conf
sudo systemctl restart systemd-journald
关闭不必要的服务
# 关闭蓝牙(如果不需要)
sudo systemctl disable bluetooth
sudo systemctl stop bluetooth
# 关闭 avahi(如果不需要 .local 域名解析)
sudo systemctl disable avahi-daemon
sudo systemctl stop avahi-daemon
温度监控
长时间运行时,建议监控 CPU 温度:
# 查看当前温度
vcgencmd measure_temp
# 设置定时监控脚本
cat > ~/check_temp.sh << 'SCRIPT'
#!/bin/bash
TEMP=$(vcgencmd measure_temp | grep -oP '\d+\.\d+')
if (( $(echo "$TEMP > 75" | bc -l) )); then
echo "[WARNING] CPU温度过高: ${TEMP}°C"
fi
SCRIPT
chmod +x ~/check_temp.sh
# 添加到 crontab,每 5 分钟检查一次
(crontab -l 2>/dev/null; echo "*/5 * * * * ~/check_temp.sh >> ~/temp.log") | crontab -
如果温度持续偏高(超过 70°C),请安装散热片和风扇。
无头模式运行技巧
树莓派通常以无头模式(无显示器)运行,以下技巧很有用:
使用 tmux 管理会话
# 安装 tmux
sudo apt install -y tmux
# 创建 OpenClaw 专用会话
tmux new-session -d -s openclaw 'openclaw up'
# 连接到会话查看输出
tmux attach -t openclaw
# 分离会话(Ctrl+B 然后按 D)
配置静态 IP
在 /etc/dhcpcd.conf 中添加:
interface eth0
static ip_address=192.168.1.100/24
static routers=192.168.1.1
static domain_name_servers=8.8.8.8 8.8.4.4
然后重启网络:
sudo systemctl restart dhcpcd
故障排除
| 问题 | 解决方法 |
|---|---|
| npm install 报内存不足 | 增加 swap 到 1GB 以上 |
| 启动后立即崩溃 | 检查 journalctl -u openclaw 日志 |
| 网络连接超时 | 检查 DNS 设置和防火墙 |
| SD 卡只读 | 文件系统损坏,尝试 fsck 修复 |
| CPU 温度过高 | 安装散热片,降低 CPUQuota |
总结
树莓派是运行 OpenClaw 的绝佳选择——低功耗、低成本、可以 7x24 小时稳定运行。配合 systemd 自动启动和适当的性能优化,你的树莓派 AI 助手服务器可以长期可靠地工作。推荐使用树莓派 5 (8GB) 以获得最佳体验。