市售的 Raspberry Pi 5(以下简称 Pi 5)可使用 Raspberry Pi Imager 实用工具中的镜像文件(Misc Utility images)写入 microSD 卡,并在启动 Pi 5 时更新引导程序(bootloader)。
另一方面,PL-R5(内部搭载 Compute Module 5)不使用 microSD 卡。通过执行命令写入新的 .bin 镜像文件来进行更新。
两者的引导程序都保存在主板上的 SPI Flash(通常称为 EEPROM)中。
本文将介绍在 PL-R5 上更新引导程序的方法。
※PL-R4 无法仅通过设备本身进行更新,而 PL-R5 已可以通过命令进行更新。
本次测试环境
PL-R5 已连接显示器并接入互联网。
直接在设备上操作:
- PL-R5
- microHDMI 转 HDMI 线缆(PL-R5 侧连接维护端口)
- 已连接互联网
通过 SSH 连接操作:
- Windows PC(推荐 Pro 版本)
- PuTTY(SSH 客户端工具)
※通过 SSH 从其他计算机执行命令时,如果使用 Windows,则需要 PuTTY(SSH 客户端工具)等软件。

确认版本
首先确认当前的引导程序版本。
为了选择接下来要升级的引导程序版本,建议同时查看更新记录。
可查看引导程序更新记录的页面:
https://github.com/raspberrypi/rpi-eeprom/blob/master/firmware-2712/release-notes.md
※GitHub Releases 中提供的 zip 文件并不是用于常规更新的 .bin 文件,而是 EEPROM 恢复用的启动镜像。
PL-R5(或 CM5)的常规引导程序更新使用操作系统中的 pieeprom-xxxx-xx-xx.bin 文件。
以下命令可在 PL-R5 本机终端或通过 PuTTY 的 SSH 连接中执行。
vcgencmd bootloader_version
可通过类似以下的输出确认版本。
2025/05/08 15:13:17
version 69471177ba7e4cb7597cb2496f2a0b23f19c1113 (release)
timestamp 1746713597
update-time 0
capabilities 0x0000007f
设置 EEPROM 更新工具
接下来,通过命令设置 EEPROM 更新工具。
sudo apt update
sudo apt install -y rpi-eeprom
如果软件包被新安装,或显示 rpi-eeprom 已经是最新版本 (28.13-1)。,则表示设置完成。
引导程序镜像文件(.bin)
镜像文件按日期保存在以下位置。(例如:pieeprom-2025-12-08.bin)
ls /lib/firmware/raspberrypi/bootloader-2712/stable/
在本次环境中,可以确认以下按日期命名的文件。
pieeprom-2025-05-08.bin pieeprom-2025-12-08.bin pieeprom-2026-01-21.bin recovery.bin
pieeprom-2025-11-05.bin pieeprom-2026-01-16.bin pieeprom-2026-02-06.bin
镜像文件(.bin)会随着操作系统更新而添加。
bootloader-2712 目录对应设备所使用的 CPU 芯片型号。(PL-R5、Pi 5/CM5:Broadcom SoC BCM2712)
PL-R5 使用与 BCM2712 SoC 对应的 bootloader-2712 目录中的文件。stable 目录为稳定版,通常可从该目录中选择所需版本。
不同 Raspberry Pi 型号使用的芯片不同,因此引导程序镜像文件也不同,彼此不兼容。请注意选择正确的文件。(例如:Pi 4/CM4:BCM2711)
引导程序、固件、EEPROM 与操作系统的区别
与引导程序相关的术语还有固件(firmware)、作为写入目标的 EEPROM,以及 pieeprom 等文件名,可能会稍显复杂。
它们的含义各不相同。本文所介绍的引导程序保存在主板上的 EEPROM 中,与操作系统更新是不同的。
- 固件:在设备内部运行的控制软件
- 引导程序:负责操作系统启动顺序的一种固件
- 操作系统:系统启动后供用户使用的基础软件
引导程序属于固件的一种,因此根据不同语境,也可能被称为“固件更新”或“EEPROM 更新”。
指定并写入引导程序

通过 -d 选项,可以更新到指定的引导程序(.bin)。使用 -f 选项指定文件的位置。sudo rpi-eeprom-update -d -f pieeprom.bin
以下示例指定了本文撰写时使用的 pieeprom-2026-02-06.bin。
sudo rpi-eeprom-update -d -f /lib/firmware/raspberrypi/bootloader-2712/stable/pieeprom-2026-02-06.bin
如果更新成功,最后一行会显示 UPDATE SUCCESSFUL。
Verifying update
VERIFY: SUCCESS
UPDATE SUCCESSFUL
重新启动后,新的引导程序将生效。
sudo reboot
至此,更新完成。
引导程序的作用
引导程序可以设置系统从哪个设备启动以及启动顺序。
默认设置如下,为 BOOT_ORDER=0xf461。
[all]
BOOT_UART=1
BOOT_ORDER=0xf461
NET_INSTALL_AT_POWER_ON=1
0xf461 从右向左读取。
在此情况下,启动顺序为:
→ eMMC(0x1)
→ 通过 M.2 连接的 NVMe SSD(0x6)
→ USB 闪存盘/USB 连接 SSD(0x4)
→ 返回开头并重试(0xf)
引导程序值一览(PL-R5/CM5)
| 值 | 启动设备 | CM5 说明 |
|---|---|---|
0x1 | eMMC | 适用于搭载 eMMC 的 CM5 型号。从内置 eMMC 存储启动。 |
0x2 | Network | 网络启动。适用于 PXE/TFTP 等环境。 |
0x3 | RPIBOOT | 通过 USB 连接主机 PC,用于写入或恢复 eMMC。 |
0x4 | USB-MSD | 从 USB 闪存盘或 USB SSD 等外部存储设备启动。 |
0x5 | BCM-USB-MSD | 当前一般用途通常不使用。 |
0x6 | NVMe | 从连接到 M.2 插槽的 NVMe SSD 启动。 |
0x7 | HTTP | 通过 Ethernet 进行 HTTP 启动。适用于企业及测试环境。 |
0xE | STOP | 在此停止启动过程。 |
0xF | RESTART | 返回启动顺序开头并重试。 |
※在 Pi 5 上,0x1 表示 microSD 卡。
更改启动顺序
可使用以下命令编辑启动顺序。
添加 -E 选项后,可以继承平时使用的编辑器环境设置(例如 nano),从而更方便地进行编辑。
在 Raspberry Pi OS 中,如果不指定 -E 选项,有时会使用 vi 打开。如果不熟悉 vi,操作可能会比较困难。
由于 Raspberry Pi OS 的终端中通常使用 nano,因此建议添加 -E 选项。
sudo -E rpi-eeprom-config --edit
打开编辑器后,根据需要修改该值。
BOOT_ORDER=0xf461
在工业应用中,通常从 eMMC 启动。只有在需要更大容量或更高速度时,才可能优先使用 NVMe SSD。如果将 eMMC 设置为备用启动设备,则可使用 BOOT_ORDER=0xf16。
不同型号的注意事项

即使同为 Raspberry Pi,如果型号所搭载的芯片不同,对应的引导程序镜像文件也会不同。
PL-R5 基于 CM5 开发,因此使用与 Pi 5/CM5 相同的芯片,对应的引导程序镜像文件也相同。
但是,PL-R5 使用命令进行更新,这一点与 Pi 5 不同。
此外,根据是否搭载 eMMC 等条件,引导程序的设置值也可能与 Pi 5 不同。
此外,“固件”、“EEPROM”和“引导程序(bootloader)”严格来说含义不同,但在某些语境中可能会以类似的含义使用。
本文介绍了在 PL-R5 上更新引导程序的方法。
互联网上关于 Pi 5 的信息较多,如果您对 PL-R5 的操作方法有任何疑问,请联系我们。
文章投稿:Raspida
Raspida 运营 Raspberry Pi 信息网站 raspida.com,即使非工程师也能轻松愉快地使用。凭借多年使用 Raspberry Pi 的经验,该网站面向熟悉 Raspberry Pi 的用户以及刚刚开始感兴趣的用户,发布大量实用的信息和主题。Raspida 还为 PiLink 网站撰写有关工业 Raspberry Pi 的技术博客文章。

