树莓派4B搭建 OpenClaw,一个 24 小时在线的 AI 私人助理
花心实验室
编辑于 2026年03月06日 22:07
openclaw

最近 OpenClaw 很火,刚好我有一个闲置的树莓派4B,于是在春节假期第一天尝试安装了一下,现在已经跑了快两周了。下面分享一下我的整个流程和遇到的坑。

好了,先上成果。

最终效果是这样的:一块树莓派 4B 安安静静地放在桌上,7×24 小时运行。我在 Telegram 或飞书上发消息,「小派」(我给它取的名字)秒回。它知道我是谁、记得上次聊了什么、还能每天早上 8 点给我推送一条树莓派的健康日报。

废话不多说,开干。

准备工作

在开始之前,你需要准备这些东西:

1、硬件:树莓派 4B(4GB 内存就够)+ MicroSD 卡(32GB 以上)+ 电源 + 散热风扇

2、软件:Raspberry Pi Imager(官方烧录工具,Mac/Windows 都有)

3、网络:能上网的 Wi-Fi,如果需要连 Telegram 还需要一个代理(软路由、VPN 等都行)

4、账号:Telegram 账号、飞书开发者账号(可选)、MiniMax API Key(国内大模型,49 元/月的套餐就够日常用)

5、一台电脑:用来烧录系统和 SSH 远程操作

如果你不确定选什么树莓派,就选 4B 4GB 版本,性价比最高。

步骤一:烧录系统

打开 Raspberry Pi Imager,三步走:

1、选系统:Raspberry Pi OS 64-bit(Debian Trixie)

2、选存储:插入 MicroSD 卡,选中它

3、点设置(齿轮图标),提前配好这些:

- 主机名:随便取,比如 RaspberryPi4B

- 用户名和密码:自己定

- Wi-Fi:填你家的 SSID 和密码,国家选 CN

- 时区:Asia/Shanghai

- SSH:开启,选密码登录

然后点「写入」,等几分钟就好了。

做完什么样:MicroSD 卡已经烧好系统,把它插到树莓派上,接上电源,等一两分钟树莓派就能自动连上 Wi-Fi。

步骤二:SSH 连接树莓派

树莓派启动后,你需要从电脑上远程连接它。

在电脑终端输入:ssh 你的用户名@树莓派IP地址

代码块
Shell
自动换行
复制代码
# 比如:
ssh huaxin@192.168.2.222
复制成功

踩坑提醒:怎么知道树莓派的 IP?最简单的办法是登录你的路由器后台,看「已连接设备」列表,找到树莓派的 IP 地址。

连上之后,建议用 VS Code 的 Remote SSH 插件,终端 + 文件管理 + 代码编辑一体,比纯终端舒服很多。特别是从 Mac 终端复制命令到 SSH 窗口有时会出现多余空格和换行的问题,VS Code 就没这个毛病。

步骤三:系统基础配置

连上树莓派之后,先做三件事。

1、换 apt 源(加速下载)

国内访问默认的 Debian 源很慢,换成清华源:

代码块
Shell
自动换行
复制代码
sudo sed -i 's|http://deb.debian.org|https://mirrors.tuna.tsinghua.edu.cn|g' /etc/apt/sources.list.d/debian.sources
复制成功

踩坑提醒:只换 debian.sources 就行,另一个 raspi.sources 不要换。清华源没有同步 raspi 的 trixie 版本,换了会报错「trixie Release does not have a Release file」。我在这里卡了一会儿才发现。

2、安装常用工具

代码块
Shell
自动换行
复制代码
sudo apt update
sudo apt install -y vim git curl wget htop fastfetch jq
复制成功

踩坑提醒:如果你之前用过 neofetch,在新版 Debian Trixie 里已经被移除了,用 fastfetch 替代就好。

3、设置静态 IP

新版树莓派系统用的是 NetworkManager,不是老版的 dhcpcd 了。用 nmcli 命令配置:

代码块
Shell
自动换行
复制代码
sudo nmcli con mod "你的连接名" ipv4.method manual ipv4.addresses 192.168.2.222/24 ipv4.gateway 你的网关IP ipv4.dns "223.5.5.5 114.114.114.114"
sudo nmcli con up "你的连接名"
复制成功

踩坑提醒:网关地址一定要填对。我第一次把网关填成了 192.168.2.1,结果网络直接断了,SSH 也连不上,只能接显示器修。你可以先在路由器后台确认一下网关地址。

做完什么样:树莓派有了固定 IP,以后 SSH 连接不用每次去查 IP 了。

步骤四:配置代理(Telegram 需要)

如果你需要连 Telegram,这一步是必须的。Telegram 的 API 在国内被墙了,需要通过代理访问。

整个代理链路是这样的:

你的程序 → privoxy(本机 HTTP 代理,127.0.0.1:8118)→ 软路由(SOCKS5 代理)→ 外网

为什么需要 privoxy?因为 OpenClaw 只支持 HTTP 代理,而大多数软路由提供的是 SOCKS5 代理。privoxy 的作用就是做一个协议转换:把 HTTP 请求转成 SOCKS5 发出去。

安装和配置:

代码块
Shell
自动换行
复制代码
sudo apt install -y privoxy
复制成功

编辑配置文件 /etc/privoxy/config,在末尾添加一行:

代码块
Shell
自动换行
复制代码
forward-socks5 / 你的软路由IP:1080 .
复制成功

注意末尾的那个点,不能漏。

然后启动并设为开机自启:

代码块
Shell
自动换行
复制代码
sudo systemctl restart privoxy
sudo systemctl enable privoxy
复制成功

最后,把代理写进环境变量。编辑 ~/.bashrc,添加:

代码块
Shell
自动换行
复制代码
export http_proxy=http://127.0.0.1:8118
export https_proxy=http://127.0.0.1:8118
复制成功

执行 source ~/.bashrc 生效。

验证一下:

代码块
Shell
自动换行
复制代码
curl -x http://127.0.0.1:8118 https://api.telegram.org
复制成功

如果返回了内容(哪怕是报错 JSON),说明代理通了。如果超时,检查一下软路由的 SOCKS5 是否正常。

踩坑提醒:安装 privoxy 的时候,如果你已经设了代理环境变量,apt 可能会报 Unsupported proxy configured: socks5://。先清掉代理再装:unset http_proxy https_proxy && sudo apt install -y privoxy。

到这里就完成一半了。系统跑起来了,代理也通了,接下来就是主角登场。

步骤五:安装 OpenClaw

一行命令搞定:

代码块
Shell
自动换行
复制代码
curl -fsSL https://openclaw.ai/install.sh | bash
复制成功

或者用 npm:

代码块
Shell
自动换行
复制代码
sudo npm i -g openclaw
openclaw onboard
复制成功

安装完之后,运行 openclaw onboard 会引导你做初始化配置。

接下来配置模型。OpenClaw 需要一个大模型来驱动 AI 回复。国内推荐 MiniMax M2.5,性价比很高。

编辑配置文件 ~/.openclaw/openclaw.json,在 models 部分添加 MiniMax 的配置:

把 API 地址设为 https://api.minimaxi.com/anthropic

踩坑提醒:注意是 minimaxi.com(多了个 i),不是 minimax.com。API Key 填到环境变量里,不要明文写在配置文件中(后面会讲密钥管理)。

做完什么样:运行 openclaw models 能看到 MiniMax M2.5 出现在列表中。

步骤六:配置 Telegram 机器人

1、打开 Telegram,搜索 @BotFather

2、发送 /newbot

3、按提示设置机器人的显示名称和用户名(用户名必须以 bot 结尾,创建后不可改)

4、BotFather 会给你一个 Bot Token,先保存好

然后在树莓派上把 Token 配置到 OpenClaw。首次给机器人发消息时,它会返回一个配对码,在终端执行:

代码块
Shell
自动换行
复制代码
openclaw pairing approve telegram 配对码
复制成功

配对成功后就可以聊天了。

踩坑提醒:如果你想在群组里用机器人,需要额外两步操作:

- 在 @BotFather 里关闭隐私模式:/mybots → 选机器人 → Bot Settings → Group Privacy → Turn off

- 把机器人从群组移除再重新添加(隐私模式变更不会对已加入的群组生效)

另外,建议把群组策略改为白名单模式,不然任何群都能用你的机器人:

编辑 ~/.openclaw/openclaw.json,在 channels.telegram 中设置 groupPolicy 为 allowlist,并添加允许的群组 ID。

步骤七:配置飞书机器人(可选)

如果你日常用飞书,也可以把 AI 助理接入飞书。OpenClaw 2026.2.14 内置了飞书插件,支持 WebSocket 长连接,不需要公网 IP。

1、在飞书开放平台(open.feishu.cn)创建企业自建应用

2、记下 App ID 和 App Secret

3、添加「机器人」能力

4、权限管理里开通「即时通讯」(im: 开头)相关权限

5、事件与回调里选「使用长连接接收事件」,添加「接收消息事件」

6、创建版本并发布(需要审批通过)

在树莓派上配置:

代码块
Shell
自动换行
复制代码
openclaw config set channels.feishu.enabled true
openclaw config set channels.feishu.appId '${FEISHU_APP_ID}'
openclaw config set channels.feishu.appSecret '${FEISHU_APP_SECRET}'
复制成功

踩坑提醒:飞书是国内服务,不能走代理。如果你之前配了全局代理,需要在环境变量里加上 no_proxy="*.feishu.cn,open.feishu.cn",否则会报 400 Invalid header received from client 的错误。

还有一个重要的坑:飞书基础版免费 API 额度只有 10,000 次,而 OpenClaw 默认的心跳间隔(30 秒和 60 秒)会飞快消耗额度,大约 2.3 天就用完了。解决办法是修改源码里的两个常量,把 TICK_INTERVAL_MS 和 HEALTH_REFRESH_INTERVAL_MS 都改成 6e5(10 分钟),额度就能用 34 天。缺点是每次 openclaw update 后需要重新改。

步骤八:设置开机自启和日报推送

OpenClaw 安装后会自动注册用户级 systemd 服务,不需要手动创建。但需要做两件事:

1、给服务加上代理环境变量

创建 override 文件:

代码块
Shell
自动换行
复制代码
mkdir -p ~/.config/systemd/user/openclaw-gateway.service.d
复制成功

在里面新建 proxy.conf,内容只需一行:

代码块
PlainText
自动换行
复制代码
[Service]
EnvironmentFile=/home/你的用户名/.config/secrets/.env
复制成功

2、开启 linger,确保你退出 SSH 后服务也能继续运行:

代码块
PlainText
自动换行
复制代码
sudo loginctl enable-linger 你的用户名
复制成功

然后重新加载:

代码块
PlainText
自动换行
复制代码
systemctl --user daemon-reload
systemctl --user restart openclaw-gateway
复制成功

踩坑提醒:千万不要手动创建系统级服务(/etc/systemd/system/ 下),这会和 OpenClaw 自带的用户级服务冲突,导致两个进程争抢端口,服务循环重启。我踩了这个坑,重启计数器飙到 1759 次才意识到问题。

日报推送也很简单,写一个 shell 脚本采集系统信息(温度、内存、磁盘、服务状态),通过 Telegram Bot API 和飞书 Webhook 推送出去,然后加到 crontab 里每天定时执行。

代码块
Shell
自动换行
复制代码
crontab -e
# 添加:每天早上 8 点推送
0 8 * * * /home/你的用户名/scripts/tg-daily-report.sh
复制成功

做完什么样:树莓派重启后 OpenClaw 自动运行,每天早上 8 点你会收到一条系统状态日报。

步骤九:密钥管理

所有敏感信息(API Key、Bot Token 等)不要明文写在配置文件里。统一放到一个 .env 文件中,通过环境变量引用。

代码块
Shell
自动换行
复制代码
mkdir -p ~/.config/secrets
chmod 700 ~/.config/secrets
touch ~/.config/secrets/.env
chmod 600 ~/.config/secrets/.env
复制成功

.env 文件里放所有密钥和代理配置。各个组件通过不同方式引用:

- openclaw.json 用 ${变量名} 语法

- Shell 脚本用 source 引用

- systemd 服务用 EnvironmentFile 加载

这样做的好处是改密钥只需要改一个文件,而且不用担心密钥被提交到 Git。

做完什么样:所有配置文件里看不到任何明文密钥,只有 ${变量名} 占位符。

我踩过的坑

整个搭建过程中遇到了不少问题,把最典型的几个列出来:

1、SOCKS5 代理不兼容:OpenClaw 和 apt 都不支持 socks5:// 协议,必须用 privoxy 转成 HTTP 代理。

2、飞书不能走代理:飞书是国内服务,走了代理反而报错,需要配 no_proxy。

3、系统级和用户级服务冲突:两个服务同时运行会抢端口,循环重启。

4、飞书 API 额度消耗过快:默认心跳太频繁,2 天就用完了 10,000 次免费额度。

5、Telegram Bot 群组隐私模式:默认开启,改完还得把机器人移出群再加回来。

6、网关地址填错:一个数字填错,SSH 就断了,只能接显示器修。

这些坑都不难解决,但如果你不知道原因,可能会卡很久。希望这篇教程能帮你绕过去。

写在后面

几条经验分享:

1、树莓派 4B 跑 OpenClaw 完全够用。它只是一个网关,真正的计算在云端的大模型上。功耗低、静音、7×24 运行,非常适合这种「一直在线」的场景。

2、代理配置是最容易出问题的环节。建议先把代理链路理清楚,搞清楚哪些走代理、哪些不走,再动手配置。

3、密钥管理从一开始就要做好。不要图方便直接把 Key 写在配置文件里,后面换 Key、备份、升级都会很麻烦。

4、Workspace 文件值得花时间调教。它决定了你的 AI 助理的「性格」和「记忆」。精简 workspace 还能省 token,提高回复速度。

5、善用 crontab + 脚本。除了日报推送,你还可以加健康检查、自动备份等。树莓派是一个 Linux 服务器,发挥空间很大。

整个搭建过程大概需要 2-3 个小时,其中一半时间在解决代理和飞书的问题。如果你的网络环境简单(比如不需要 Telegram),时间会短很多。

如果你也想试试,欢迎交流踩坑经验~[doge_金箍]