2. 树莓派环境搭建:烧录系统、配置 SSH/WiFi、启用 I2C/SPI 接口、安装基础依赖包

说实话,很多朋友拿到树莓派的第一反应是「插电就能用」。嗯,我当年也是这么想的。结果第一次点亮屏幕,发现连个系统都没有,瞬间就懵了。别急,这一章咱们就把树莓派从「裸板」变成「能跑大模型的小钢炮」。

我个人习惯把环境搭建分成四步走:烧录系统 → 网络配置 → 硬件接口开启 → 依赖安装。每一步都有坑,我踩过的坑,你就不用再踩了。

核心目标:让树莓派能联网、能 SSH 远程登录、能读写 I2C/SPI 外设、能安装 Python 和编译工具链。这是后续跑 GGUF 模型的基础。

2.1 烧录系统:选对版本很重要

树莓派官方系统叫 Raspberry Pi OS,基于 Debian。我建议你直接下载 Raspberry Pi OS Lite(无桌面版)。为什么?你想想看,跑大模型本身就很吃内存,桌面环境会白白占用几百 MB。省下来给模型推理用,不香吗?

烧录工具我用的是 Raspberry Pi Imager。官方出品,傻瓜式操作。不过这里有个小技巧:在烧录前,Imager 可以预配置 SSH 和 WiFi。这个功能我一开始没注意,结果每次都要插键盘显示器,麻烦得很。

# 烧录步骤(命令行版,如果你喜欢用图形界面也可以)
# 1. 下载 Raspberry Pi OS Lite (64-bit)
# 2. 插入 SD 卡,用 lsblk 确认设备名(比如 /dev/sdb)
# 3. 烧录
sudo dd if=2024-10-22-raspios-bookworm-arm64-lite.img of=/dev/sdb bs=4M status=progress
sync

我的经验:SD 卡速度直接影响系统响应。建议用 A2 级别、至少 32GB 的卡。我曾经用了一张老旧的 Class 4 卡,结果编译 OpenCV 花了整整一个下午……

2.2 配置 SSH 和 WiFi:让树莓派「隐形」工作

树莓派最爽的地方就是可以无头运行(Headless Mode)。说白了,就是不需要接显示器键盘,全靠 SSH 远程控制。怎么做到?

烧录完系统后,SD 卡里有个 boot 分区。你只需要做两件事:

  1. 开启 SSH:在 boot 分区里新建一个空文件,命名为 ssh(无后缀名)。系统启动时会检测到这个文件,自动开启 SSH 服务。
  2. 配置 WiFi:在 boot 分区里新建 wpa_supplicant.conf 文件,写入以下内容:
country=CN
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
    ssid="你的WiFi名称"
    psk="你的WiFi密码"
    key_mgmt=WPA-PSK
}

插卡上电,等一分钟。然后从路由器后台找到树莓派的 IP 地址,或者用 arp -a 扫描。接着 SSH 登录:

ssh pi@192.168.1.100   # 默认密码:raspberry

注意:第一次登录后,务必执行 sudo raspi-config 修改默认密码。我见过有人把树莓派暴露在公网上,结果被挖矿程序入侵,CPU 跑满 100%。

2.3 启用 I2C/SPI 接口:给外设留条路

你可能觉得跑大模型用不到 I2C 和 SPI。但我在实际项目中,经常需要接一个 OLED 显示屏来显示模型运行状态,或者接一个温度传感器监控散热。这些外设基本都是 I2C 或 SPI 接口。

启用方法很简单,两种方式任选:

  • 图形界面sudo raspi-config → Interface Options → 开启 I2C/SPI
  • 命令行:直接编辑 /boot/config.txt,添加以下两行:
dtparam=i2c_arm=on
dtparam=spi=on

改完后重启:sudo reboot。验证是否生效:

ls /dev/i2c-*   # 应该看到 /dev/i2c-1
ls /dev/spidev* # 应该看到 /dev/spidev0.0 等

避坑指南:我曾经在树莓派 4B 上同时接了三个 I2C 设备,结果地址冲突导致一个都读不到。解决办法是给每个设备分配不同的地址,或者用 I2C 多路复用器。嗯,这个坑我记了很久。

2.4 安装基础依赖包:给大模型铺路

跑 GGUF 模型需要什么?说白了就是 Python 环境和一些 C++ 编译工具。我整理了一个最小依赖清单:

包名 用途 安装命令
python3-pip Python 包管理器 sudo apt install python3-pip -y
build-essential C/C++ 编译工具链 sudo apt install build-essential -y
cmake 跨平台构建工具 sudo apt install cmake -y
git 代码版本管理 sudo apt install git -y
libopenblas-dev BLAS 加速库(矩阵运算) sudo apt install libopenblas-dev -y

一次性安装所有:

sudo apt update
sudo apt upgrade -y
sudo apt install -y python3-pip build-essential cmake git libopenblas-dev

安装完后,验证一下 Python 和 pip 版本:

python3 --version   # 应该 >= 3.9
pip3 --version

为什么需要 libopenblas? 大模型推理本质上是大量的矩阵乘法。OpenBLAS 能利用树莓派的 ARM NEON 指令集做加速。我实测过,同样的模型,有 OpenBLAS 比没有快 30% 左右。

2.5 本章知识体系一览

下面这张图概括了本章的核心逻辑。你可以把它当作一个检查清单:

树莓派环境搭建核心流程 烧录系统 SSH/WiFi 配置 I2C/SPI 接口 依赖安装 Raspberry Pi OS Lite 预配置 SSH + WiFi raspi-config 或 config.txt Python + OpenBLAS 最终目标 一台能联网、能远程控制、能编译 C++、能跑 Python 的树莓派

这张图把四个步骤串起来了。你做完一步,就打个勾。等四个勾都打上,你的树莓派就准备好迎接大模型了。

最后说一句:环境搭建是最枯燥但最重要的一步。我见过太多人急着跑模型,结果编译到一半发现缺依赖,又回头重来。稳扎稳打,后面会顺利很多。


公众号:蓝海资料掘金营,微信deep3321