1. 为什么你需要让树莓派4B从USB启动?
如果你玩树莓派有一段时间了,大概率经历过SD卡“暴毙”的惨剧。我自己的第一块树莓派4B,就因为频繁读写,SD卡在半年内就彻底“失联”了,项目数据全丢,那感觉真是糟透了。SD卡天生就不是为7x24小时高负载运行设计的,它的读写寿命和稳定性,在作为系统盘这件事上,一直是个短板。
所以,当树莓派官方终于在2020年5月为4B型号放出了支持USB启动的Beta版固件时,整个社区都沸腾了。这意味着我们可以把系统装到更稳定、速度更快、容量更大的U盘甚至固态硬盘(SSD)里,彻底告别SD卡这个“阿喀琉斯之踵”。实测下来,用一块普通的USB 3.0 SSD启动,系统响应速度和文件读写性能相比高速SD卡都有肉眼可见的提升,更不用说SSD在长期运行下的可靠性优势了。
但为什么这个功能来得这么晚?这得从树莓派的启动流程说起。在4B之前的型号,启动的第一阶段代码是“烧死”在芯片内部ROM里的,出厂后无法更改。而树莓派4B的硬件架构变化很大,USB控制器移到了PCIe总线上,启动过程也更复杂。如果还用老办法,一旦ROM里的启动代码有bug或者需要支持新硬件(比如USB启动),那就彻底没辙了。因此,树莓派4B引入了一块可擦写的EEPROM芯片来存放启动引导程序。这就好比把电脑主板上的BIOS从不可升级的ROM,换成了可以刷新的Flash芯片,以后修复bug、增加新功能(比如我们期待的USB启动),只需要更新这个EEPROM里的固件就行了。这个改动是根本性的,所以USB启动功能的“姗姗来迟”也就可以理解了。
2. 升级EEPROM固件:为USB启动铺平道路
要让你的树莓派4B认识并接受从USB设备启动,第一步也是最关键的一步,就是升级板载的EEPROM固件到2020年5月15日或之后的版本。这个固件相当于树莓派的主板BIOS,它决定了设备上电后去哪里寻找操作系统。下面我分享两种最常用的升级方法,你可以根据自己当前的情况选择。
2.1 方法一:在树莓派系统内在线更新(推荐)
这个方法最简单直接,前提是你的树莓派4B目前还能用SD卡正常启动并进入Raspberry Pi OS(原Raspbian)系统。
首先,打开终端,我们需要获取root权限并进行系统更新。如果你用的是默认的pi用户,先执行sudo -i切换到root环境,然后更新软件包列表并升级所有已安装的包:
sudo apt update
sudo apt full-upgrade -y
这个full-upgrade命令会比普通的upgrade更彻底,它会处理一些依赖关系的变更,确保系统底层组件也是最新的。更新完成后,我们需要修改EEPROM更新工具的配置,让它去获取最新的测试版(Beta)固件,因为稳定版固件可能还未包含USB启动支持。编辑配置文件:

450

被折叠的 条评论
为什么被折叠?



